파이프라인 재조정과 병렬화로 마이크로아키텍처 성능 최적화 결
마이크로아키텍처 최적화 경험은 컴퓨터 구조 수업에서 단순 5단계 파이프라인 프로세서를 구현하고 성능 병목을 분석한 것이 가장 가깝습니다. CPI(클럭당 명령어)를 측정해 어느 단계에서 스톨이 자주 발생하는지를 확인했습니다.
최적화 방법 중 효과적이었던 것은 포워딩(forwarding) 경로 추가입니다. 데이터 해저드로 인한 스톨을 줄이기 위해 EX 단계 결과를 다음 명령어의 EX 입력으로 직접 전달했더니, 스톨 횟수가 크게 줄고 CPI가 개선됐습니다. 아키텍처 변화가 성능에 직접 영향을 준다는 것을 수치로 확인한 경험입니다.
마이크로아키텍처 최적화에서 배운 핵심은 측정 없이 최적화하면 잘못된 곳을 고친다는 점입니다. 가장 병목인 단계를 프로파일링으로 먼저 찾고 나서 수정해야 실질적인 성능 향상으로 이어집니다. 추측 기반의 최적화는 시간과 복잡도만 늘립니다.