성능 분석

어떤 프로그램이 계산 율속인지 메모리 율속인지 확인하는 방법으로 CPU 주파수를 바꿔 가며 실행 시간을 측정했다. 메모리 율속이라면 일반적으로 어떤 결과가 나오는가?

  1. A주파수에 반비례하여 실행 시간이 짧아진다
  2. B주파수를 올려도 실행 시간이 별로 짧아지지 않는다
  3. C주파수를 올리면 실행 시간이 길어진다
정답과 해설 보기

정답: B. 주파수를 올려도 실행 시간이 별로 짧아지지 않는다

계산 율속 프로그램은 CPU 내부 계산에 시간을 쓰므로 주파수를 1.5배로 하면 실행 시간은 거의 1/1.5이 됩니다. 메모리 율속 프로그램은 주기억장치에서 데이터가 도착하기를 기다리는 시간이 대부분이고, 그 대기 시간은 CPU 주파수를 올려도 변하지 않으므로 실행 시간은 별로 달라지지 않습니다. 성능 카운터와 함께 이 성질을 사용하면 어느 쪽 개선에 힘써야 하는지 알 수 있습니다.

  • A. 그것은 계산 율속인 경우의 결과입니다.
  • B. 올바릅니다. 메모리의 속도는 CPU 주파수로 변하지 않기 때문입니다.
  • C. 주파수를 올려서 느려지는 일은 보통 없습니다.
이 분야 연습하기 분야로 돌아가기

성능 분석의 다른 문제

  1. 루프라인(Roofline) 모델에서 어떤 처리가 메모리 대역폭으로 제한되는 영역에 있음을 알았을 때, 성능을 높이는 방향으로 올바른 것은?
  2. STREAM 벤치마크로 주로 측정하는 것은?
  3. 병렬 프로그램의 확장성(scalability)을 조사하는 방법으로 가장 적절한 것은?
  4. 8코어로 병렬 실행했더니 1코어일 때보다 6배 빨라졌다. 병렬 효율은 얼마인가?
  5. 성능을 측정하기 위한 장치를 넣은 탓에 측정하려는 프로그램의 동작 자체가 바뀌어 버리는 현상을 무엇이라 부르는가?