컴파일러
소프트웨어 파이프라이닝에 대한 설명으로 올바른 것은 무엇인가?
- ACPU 파이프라인의 단 수를 소프트웨어로 늘리는 기술
- B루프를 함수로 나누어 여러 스레드로 병렬 실행하는 기술
- C서로 다른 반복의 처리를 겹쳐서 대기 시간을 메우는 기술
정답과 해설 보기
정답: C. 서로 다른 반복의 처리를 겹쳐서 대기 시간을 메우는 기술
소프트웨어 파이프라이닝에서는 루프 한 번의 처리를 "읽기·계산·쓰기" 같은 단계로 나누고, 예를 들어 i번째의 쓰기, i+1번째의 계산, i+2번째의 읽기를 같은 반복 안에서 수행하도록 명령을 배열합니다. 읽기의 대기 시간 동안 다른 반복의 계산을 진행할 수 있으므로 연산기를 놀리지 않아도 됩니다. 루프의 앞뒤에는 준비와 뒷정리 코드가 필요합니다. CPU의 단 수를 바꾸거나 스레드로 병렬화하는 기술이 아닙니다.
- A. CPU 파이프라인의 단 수는 하드웨어에서 정해져 있습니다.
- B. 스레드에 의한 병렬화와는 다른 기술입니다.
- C. 올바릅니다. 서로 다른 반복의 처리를 겹쳐 대기 시간을 메웁니다.