성능 분석

명령어 10억 개를 실행하는 프로그램을 평균 CPI가 2, 클럭 주파수가 2 GHz인 CPU에서 실행했다. 실행 시간은 얼마인가?

  1. A4초
  2. B0.25초
  3. C1초
정답과 해설 보기

정답: C. 1초

필요한 사이클 수는 명령어 수×CPI=10억×2=20억 사이클입니다. 2 GHz CPU는 1초에 20억 사이클을 진행하므로 실행 시간은 20억÷20억=1초입니다. 같은 프로그램이라도 캐시 미스 등으로 CPI가 3이 되면 1.5초, 주파수를 3 GHz로 높이면 약 0.67초가 됩니다. 이 식을 사용하면 개선 효과를 수치로 어림할 수 있습니다.

  • A. 주파수로 나누지 않고 곱했습니다.
  • B. CPI로 나누었습니다.
  • C. 올바릅니다. 10⁹×2÷(2×10⁹)=1입니다.
이 분야 연습하기 분야로 돌아가기

성능 분석의 다른 문제

  1. CPU 설계 변경으로 클럭 주파수는 1.5배가 되었지만 CPI도 1.2배로 늘었다(명령어 수는 동일). 실행 속도는 원래의 몇 배가 되는가?
  2. 컴파일러의 새로운 최적화로 실행하는 명령어 수는 20% 줄었지만 평균 CPI가 10% 늘었다(주파수는 동일). 이 최적화의 효과로 올바른 것은?
  3. 어떤 프로그램의 명령어 비율이 정수 연산 50%(CPI 1), 로드와 스토어 30%(CPI 2), 분기 20%(CPI 5)였다. 평균 CPI는 얼마인가?
  4. CPU 성능을 「초당 실행할 수 있는 명령어 수(MIPS, 백만 명령어/초)」로 비교할 때의 주의점으로 올바른 것은?
  5. 성능 개선을 나타내는 「속도 향상률(스피드업)」을 구하는 방법으로 올바른 것은?