클럭, CPI, IPC, IPS, 쿼드 코어 등 CPU의 성능을 수치화하는 여러 개념들이 있는데요. 우리가 앞서 살펴본 내용으로도 어느 정도 이해할 수 있습니다. 복잡해 보이는 단어들이지만, 잘 살펴보면 Instruction, Cycle, Clock 등 우리가 배운 단어들이 포함되어 있는데요. 한번 볼까요?

Clock Speed (Clock Rate)

앞서 배운 것과 같이, 1초에 실행할 수 있는 사이클의 개수입니다.

컴퓨터의 성능 지표 중 하나이겠죠?

CPI (Cycles per instruction)

한 Instruction이 평균적으로 몇 사이클만에 완료되는지를 나타내는 지표입니다. 예를 들어, 불러오는 LOAD 명령, 저장하는 STORE 명령, 더하는 ADD 명령이 있는데, LOAD 명령은 5 사이클, STORE는 3 사이클, ADD 는 4 사이클이라고 합시다. CPI는 이 명령들이 평균적으로 몇 사이클이 소요되는지를 나타내는 지표라서, 평균을 내서 4 CPI 라고 할 수 있습니다.

IPC (Instructions per cycle)

이 CPI를 뒤집으면 IPC가 됩니다. 4 CPI이면, 1/4 IPC인 거죠. CPI나 IPC나 사실은 같은 개념인데, 성능을 표현할 때는 IPC를 더 많이 사용합니다. CPI는 낮아야 좋은 거고, IPC는 높아야 좋은 거라서 그런 것 같네요.

IPS (Instructions per second)

Clock speed는 클럭이 얼마나 빨리 움직이는지를 알려주고, IPC는 그 하나의 클럭에 얼마나 많은 코드를 얼마나 소화할 수 있는지 알려줍니다. 이 둘을 합쳐서 한번에 보고 싶을 수도 있는데요. 이 때 IPS를 사용합니다. IPS는 1초에 실행할 수 있는 Instruction의 개수를 나타내는데, clock speed와 IPC를 곱하면 됩니다.

멀티 코어 (Multi-Core)

컴퓨터 설명을 보다 보면, 듀얼 코어, 쿼드 코어, 헥사 코어, 옥타 코어 이런 얘기를 듣습니다. 듀얼, 쿼드 이런게 다 숫자를 의미하는 이름인데요, 2, 4, 6, 8을 의미하죠.

듀얼 코어라고 하는 건, CPU 하나 안에, 사실상 두 개의 CPU가 따로 따로 동작하도록 만들었다는 겁니다. 무작정 클럭 스피드를 올리는 데에 한계가 있으니, 새로운 방식을 선택한 거죠.

이론상으로는 듀얼 코어는 2배의 속도로 빨라져야 하겠지만, 실제로는 50% 정도 더 향상됩니다. 프로그램이 실행될 때, 동시에 실행할 수 있는 것과 동시에 실행할 수 없는 작업들이 있을테니, 두 개의 코어 중 하나만 일하고, 하나는 쉬고 있는 시간들이 생기게 되는 거죠.

요즘에는 대부분 멀티 코어를 사용하기 때문에 무조건 클럭 스피드만 높다고 빠른 건 아닙니다. 예를 들어, 듀얼 코어 4.2GHz와 쿼드 코어 3.5GHz를 비교하면, 쿼드 코어가 훨씬 빠르죠.

정리

정리하자면,