CPU와 아키텍처
CPU의 파이프라인 처리의 주된 목적으로 올바른 것은?
- A명령어 처리를 여러 단계로 나누고 서로 다른 명령어의 단계를 겹쳐 실행함으로써 처리량(스루풋)을 높인다
- B하나의 명령어 실행 시간(레이턴시)을 반드시 단축한다
- C명령어 수를 줄여 프로그램을 작게 만든다
정답과 해설 보기
정답: A. 명령어 처리를 여러 단계로 나누고 서로 다른 명령어의 단계를 겹쳐 실행함으로써 처리량(스루풋)을 높인다
파이프라인은 명령어의 인출, 해독, 실행, 메모리 접근, 쓰기 등의 단계를 조립 라인처럼 겹쳐서 매 클록 1개의 명령어를 완료시켜 처리량을 높입니다. 5단이라면 이상적으로는 약 5배입니다. 명령어 하나의 처리 시간(레이턴시)은 오히려 조금 늘어납니다. 데이터 의존, 분기, 자원 경합으로 흐름이 흐트러지는 것(해저드)이 있으며, 포워딩과 분기 예측으로 대처합니다.