[전자계산기] 병렬 컴퓨터
병렬 처리기
파이프라인 처리기(Pipeline Processor)
하나의 처리기를 서로 다른 기능을 가진 여러 개의 처리기로 나눈 후 각각의 처리기가 동시에 서로 다른 데이터를 취급하는 기법
- 시간적 병렬성을 활용하기 위하여 프로그램 수행에 필요한 작업을 시간적으로 중첩시켜 수행시키는 처리기
파이프라인 클록 타임(T) = k + (N - 1)
k: 파이프라인 단계수, N: 수행할 명령어의 개수
배열 처리기(Array Processor)
한 컴퓨터 내에 여러 개의 처리기를 배열 형태로 가지고 있는 경우
- 배열 처리기들을 동기화시켜 동일한 종류의 계산이 병렬적으로 실행되도록 한다
- 벡터 계산이나 행렬 계산에 적합
- 제어 처리기가 명령어를 인출한다
다중 처리기(Multi Processor)
자율적인 실행이 가능한 두 개 이상의 처리기로 구성되며 처리기들은 여러 자원을 공유할 수 있다.
전체 하드웨어 시스템은 단일 운영체제에 의해 운영되도록 하며 한 작업을 여러 개로 나누어서 서로 다른 처리기에 할당하여 동시에 수행되도록 함으로써 실행 시간을 줄이고 전체 효율을 향상시킨다
결합 방식
-
강 결합(Tightly Coupled) 방식
각 처리기가 공유 기억 장치를 통하여 정보를 교환하는 방식으로 한 가지 일을 처리하는 고속 처리 방식 -
약 결합(Loosely Coupled) 방식
각 처리기가 독립적인 기억 장소를 가지고 통신으로 연결되어 상호 정보를 교환하는 방식으로 많은 양의 일을 처리하는 분산 처리 시스템 방식
상호 연결 구조
-
공유 버스형 연결 구조
각 CPU, 메모리, 입출력 프로세서 등이 버스로 연결되어 있는 방법으로 추가는 쉽지만 처리 속도가 버스 속도에 제한된다 -
크로스바 스위치형 연결 구조
각 프로세스와 메모리 모듈 버스 사이를 크로스바 스위치로 연결하여 모든 메모리 모듈에서 동시에 전송할 수 있도록 연결한 방식 -
오메가 스위치형(다단 상호 연결망형)
다단계 망을 구성하는 오메가 스위치는 2개의 입력이 상호 교환되어 2개의 출력이 나오는 형태로 여러 개를 다단계로 연결하여 구성된다
벡터 처리기(Vector Processor)
- 파이프라인 기법을 이용한 다중 처리기법 사용
- 시스톨릭 배열 구조로 나타낸 벡터 처리기는 신호 및 화상 처리와 같은 특별한 응용에 사용
- 시스톨릭 배열(Systolic Array) : 파이프라인 어레이 구조의 새로운 범주로서 지역적으로 연결된 프로세서들이 규칙적으로 데이터를 계산하고 시스템을 통해 데이터를 전달하는 프로세서 네트워크
- 비용, 성능 면에서 우수하나 응용의 한계성, 프로그램 등의 단점 존재
병렬 컴퓨터 구조 분류
플린(Fynn)의 분류
프로그램 수행 중 처리기가 동시에 수행하는 명령과 데이터의 수에 따라 구분하는 방법
- SISD(Single Instruction stream Single Data stream)
하나의 명령에 하나의 데이터를 처리하는 단일 프로세서 시스템- 명령이 하나씩 순서대로 실행되지만, 실행 과정은 여러 개의 단계로 나누어 파이프라인으로 연결하여 처리하는 방식
- 파이프라인 처리기
- SIMD(Single Instruction stream Multiple Data stream)
하나의 명령에 여러 개의 데이터를 처리하는 배열 처리 형태- 여러 개의 프로세서가 하나의 제어 장치에 의해 제어되는 구조
- 배열 처리기
- MISD(Multiple Instruction stream Single Data stream)
하나의 데이터에 대해 여러 명령어를 수행하는 구조- 일반 용도의 컴퓨터 구조로는 거의 사용되지 않는다
- 시스톨릭 배열 구조
- MIMD(Multiple Instruction stream Multiple Data stream)
여러 개의 명령이 여러 개의 데이터를 처리하는 방식- 진정한 의미의 배열 처리 방법
- 다중 프로세서
펭(Feng)의 분류
최대 병렬 수행도 : 단위 시간에 처리할 수 있는 최대 비트 수, 비트 슬라이스 길이와 단어 길이를 곱해서 면적으로 나타낸다
병렬 수행 정도에 따라 분류하는 방법
-
단어 순차 비트 순차(WSBS, Word Serial Bit Serial)
한 번에 한 비트씩 처리하는 방식 -
단어 순차 비트 병렬(WSBP, Word Serial Bit Parallel)
한 번에 한 단어씩 처리하는 방식 -
단어 병렬 비트 순차(WPBS, Word Parallel Bit Serial)
여러 개의 단어를 묶어 그 중 한 개의 비트씩 슬라이스 단위로 순차 처리하는 방식 -
단어 벙렬 비트 병렬(WPBP, Word Parallel Bit Parallel)
여러 개의 단어를 묶어서 단어 단위로 처리하는 방식
댓글남기기