CPU 병렬 처리

From CS Wiki
CPU Parallel Processing
CPU에서 명령을 처리 할 때 여러 명령을 동시에 처리하는 방식

종류[edit | edit source]

기법 설명
파이프라인

파이프라인.png

  • 명령어 사이클 각 단계를 중첩하여 실행
슈퍼 파이프라인

슈퍼 파이프라인.png

  • 파이프라인 단계를 더 세분화하여 병렬성 강화
슈퍼 스칼라

슈퍼 스칼라.png

  • 한 사이클당 여러 명령어 처리
슈퍼 파이프라인
슈퍼 스칼라

슈퍼 파이프라인 슈퍼 스칼라.png

  • 파이프라인 단계를 세분화하며 한 사이클당 여러 명령어 처리
VLIW
  • Very Long Instruction Word
  • 동시에 수행될 수 있는 명령어들을 컴파일러 수준에서 하나의 명령어로 압축
  • 인텔-HP의 IA64 EPIC에서 활용

파이프라인 해저드[edit | edit source]

종류 세부 설명 해소 방안[1]
구조적 해저드

(Structural Hazards)

하드웨어가 병행 수행을 지원하지 않는 경우 자원 충돌(Resource Conflicts) 발생 데이터 전방 전달

(Data Forwarding)

데이터 해저드

(Data Hazards)

명령 값이 이전 명령에 종속되어 대기함 부족한 차원 추가
제어 해저드

(Control Hazards)

분기(jump, branch 등) 명령어에 의해 처리 꼬임 분기 예측

(Branch Prediction)