CPU 성능측정

기운찬곰·2020년 10월 6일
1

Computer Science

목록 보기
12/27

시작하기에 앞서서...

이번시간에는 CPU 성능 측정 요소와 측정 방법에 대해 알아보도록 하겠습니다. 심심치 않게 보이는 개념이기 때문에 알아둘 필요가 있을듯 합니다.


🚀 CPU 성능 측정

측정 요소

  • 작업 처리시간 혹은 응답시간(Response time) : CPU에 대해 정의된 기계 명령어의 평균 실행 시간
  • 처리량(Throughput) : 단위 시간(초)에 실행된 작업의 수 또는 명령어의 수

그렇다면 이제 작업시간과 처리량(처리율)을 구해볼까요?


✅ CPI

CPI(Clock cycles per instruction)는 명령어 당 평균 소요 사이클(사이클/개)을 뜻합니다. 구하는 방법은 아래와 같습니다.

공식 의미 : IC(Instruction Counts)는 전체 명령어 수를 의미합니다. ICi는 각 하나하나의 명령어를 뜻하며, 각 명령어마다 수행시간이 다르므로 CPIi와 ICi를 곱해준다음 다 더해서 IC로 나눠줌으로써 CPI를 구할 수 있습니다.

추가적으로 CPI의 역수값으로 사이클 당 명령어 처리 횟수(instructions per cycle, IPC)가 있으며 이는 한 사이클 당 완료 가능한 명령어 개수를 뜻합니다.


✅ Processor Time

Processor Time(작업시간)을 구하기전에 먼저 Clock Cycles를 구해야 합니다. 좀전에 위에서 구한 CPI(명령어 당 평균 소요 사이클)에다가 전체 명령어 수를 곱합니다. 그러면 결과는 프로그램이 실행하는 전체 클럭 사이클이 나오게 됩니다.


그리고 나서 Clock time(클럭 주기)를 곱해줍니다. 그러면 총 Processor Time(작업시간)이 나오겠죠? 보통 Clock frequency(클럭 주파수)로 많이 쓰는데 여기서 주파수와 주기는 역수관계인것만 알고 있다면 주기는 쉽게 구할 수 있습니다.

예를 들어 Clock frequency(클럭 주파수)가 2.4GHZ라는 말은 1초에 2.4*10^9번 클럭이 반복된다는 소리이므로 Clock time을 구하면 1번 클럭이 반복하는데 1/(2.4*10^9번)이 됩니다.


✅ IPS

초당 명령 수(Instructions per second, IPS, 처리율)는 컴퓨터의 프로세서 속도 측정 단위입니다.

TIPS, MIPS, GIPS와 같은 값으로 표현하는 것이 일반적인데 그중 MIPS가 유명합니다. MIPS(밉스, million instructions per second)는 초당 100만 개의 명령을 수행할 수 있는 능력을 말합니다. 컴퓨터의 수행 속도를 나타내는 단위로 사용됩니다.

만약 50 MIPS 성능을 갖는 프로세서가 있다면 초당 5천만개의 명령어를 처리할 수 있음을 의미합니다.

하지만 기종에 따라 같은 작업을 하는데 필요한 명령의 수가 다르기 때문에 컴퓨터의 성능을 완벽하게 반영한다고 보기는 어려우며, 서로 다른 아키텍처의 프로세서 간 성능을 비교할 경우는 보통 벤치마크 테스트를 통해 측정합니다.

그리고 요즘에는 CPU가 발전하고, 단순히 수행 명령 수보다는 실제 데이터 처리량이 중요해지면서 IPS보다는 FLOPS(초당 부동소수점 연산 수, FLoating point Operations per Second) 가 더 중요한 지표로 떠오르게 되었다는 군요.

추가적으로 이와 관련해서 문제를 풀고 싶다면 여기를 참고하세요. 혹은 여기


마침

다음시간에는 컴퓨터 동작에 대해 본격적으로 알아보겠습니다.

References

profile
배움을 좋아합니다. 새로운 것을 좋아합니다.

0개의 댓글