CPU 캐시메모리 – 왜 필요한가?

인텔이나 AMD 등 모든 CPU 제조사의 CPU 스펙을 보면 캐시메모리 (Cache Memory) 용량이 항상 표시되어있다. CPU 캐시메모리가 무엇이고 왜 필요한지를 알아보고 관련된 용어를 알아보도록 하자.

CPU 캐시메모리 역할 및 원리

CPU 캐시메모리 = 컴퓨터의 저장공간

캐시메모리는 한마디로 말해 CPU에 들어있는 저장공간이다. 다른 어떤 역할을 하는 것이 아닌 그저 데이터를 저장하는 저장공간이 전부인 것이다. 그런데 CPU에 캐시메모리라는 저장공간이 왜 필요한가? 이것을 알기 위해 컴퓨터의 저장공간 개념에 대해 알아보자.

컴퓨터의 저장공간

  • 하드디스크
  • 메모리(RAM)
컴퓨터의 저장공간 - 하드디스크, 메모리

컴퓨터에서 우리가 보통 알고 있는 저장공간은 하드디스크와 메모리(RAM) 2가지이다. 우리는 보통 프로그램이나 파일 등을 하드디스크에 저장하여 보관한다. 당연한 얘기이지만 컴퓨터 전원을 끄더라도 하드디스크에 저장된 파일은 유지된다. 이게 불가능하였다면, 지금 컴퓨터의 모습은 생겨날 수 없었을 것이다. 하드디스크는 우리가 직접적으로 사용하고 가장 잘 알고 있는 저장공간이다.

보통 컴퓨터에서 메모리라고 부르는 것이 바로 RAM이다. 컴퓨터를 선택할때 가장 중요시하는 스펙중의 하나가 바로 이 메모리(RAM)이다. 이것도 역시나 단순히 저장공간에 불과하다. 메모리(Memory) 라는 단어 그대로 기억하는 역할을 하는 것이다. RAM이 하드디스크와 다른 것은 하드디스크보다 속도가 훨씬 빠르다는 것이다. 그래서 CPU는 RAM을 이용하여 작업을 한다.

CPU와 메모리(RAM)의 관계

컴퓨터에서 프로그램을 실행한다는 것은 CPU가 프로그램에서 정해진 명령어를 순서대로 실행을 하는 것과 같다. 프로그램은 결국 프로그래머가 만든 논리적이고 엄청나게 복잡하고 많은 수의 명령어를 모아놓은 것이다. CPU는 이 명령을 하나씩 실행해야 하는데 하드디스크에서 프로그램의 명령어를 읽어오기에는 하드디스크가 너무나도 느리다. CPU 속도는 하늘을 날라가는 비행기 정도라면, 하드디스크는 땅에서 자전거를 타고 이동하는 정도와 마찬가지이다. 하지만 메모리(RAM)은 CPU만큼 아니더라도 하드디스크보다 훨씬 빠른 속도를 가지고 있다. 하드디스크가 자전거라면 메모리는 자동차를 타고 달리는 정도라고 보면 되겠다. 그래서 컴퓨터에서는 프로그램을 메모리에 저장하고 CPU는 메모리에서 명령어를 읽어온다.

이처럼 CPU는 컴퓨터로 어떤 작업을 하기 위해 작업에 필요한 프로그램이나 파일을 모두 작업대에 올려놓는데 이 작업대 공간이 바로 메모리(RAM)이라고 보면 된다.

CPU, 메모리, 하드디스크 관계

CPU와 메모리(RAM)의 속도 차이

위에서도 얘기했듯이 CPU와 메모리(RAM)에도 속도 차이가 크게 난다. 그래서 CPU가 아무리 빠르더라도 메모리의 느린속도로 인한 병목이 발생할 수 있다. CPU는 메모리에서 데이터를 가져와서 처리하는 역할을 하기 때문에 메모리의 속도가 느리면 CPU가 아무리 빨라도 메모리에서 병목이 걸려서 제 속도를 낼 수가 없는 것이다. 하지만 하드디스크보다는 훨씬 빠르기 때문에 CPU는 메모리를 메인 기억공간으로 사용하는 것이다.

하드디스크 – 메모리 – CPU 속도 체감

컴퓨터에서 하드디스크에 저장된 워드 문서를 연다고 생각해보자. 문서 파일을 클릭하여 열면 처음에 프로그램을 실행하고 해당 문서를 여는데 우리가 조금 기다려야 될 정도의 딜레이가 걸리는 것을 볼 수 있다. 이때가 바로 워드 프로그램과 워드 파일을 하드디스크에서 메모리로 가져오는 시간이 걸리는 것이다. 이렇게 메모리에 가져와서 워드 프로그램 실행이 완료되면 그 다음부터는 빠르게 프로그램을 사용할 수 있다. 이때는 메모리에 있는 프로그램과 워드파일을 가지고 CPU가 작업을 실행하기 때문에 우리가 느낄 수 있는 딜레이가 거의 없다.

가끔 프로그램을 너무 많이 실행시켜놔서 메모리가 부족한 경우 컴퓨터가 버벅대는 것을 볼 수 있는데, 이것이 바로 메모리 공간이 부족하기 때문에 일어나는 현상이다. 이렇게 하드디스크 – 메모리 – CPU 의 속도 차이는 우리가 컴퓨터를 사용하면서 경험하게 되는 것이다.

CPU 캐시메모리 목적 = 속도

CPU와 메모리(RAM)의 속도차이를 해결하기 위한 것이 바로 캐시메모리이다. CPU가 비행기, 메모리가 자동차정도의 속도라면 캐시메모리는 날으는 자동차라고 보면 되겠다. 캐시메모리는 메모리보다는 훨씬 빠른 속도를 가진다.

그래서 CPU와 메모리 사이에 위치해서 둘간의 속도차이로 인한 병목을 해결해주는 역할을 한다. 그 원리는 아주 간단하다. 자주 사용하는 데이터를 캐시메모리에 저장하여 두고 CPU는 RAM에서 데이터를 읽어오는 것이 아니라 캐시메모리에서 데이터를 읽어오는 것이다. 그러면 메모리에서 읽어오는 것보다도 훨씬 빠르게 데이터를 가져올 수가 있어서 컴퓨터의 전체적인 성능이 향상될 수 있는 것이다.

CPU, 캐시메모리, 메모리의 관계

CPU 캐시 메모리의 성능

CPU 캐시메모리는 메모리(RAM)보다도 훨씬 작은 크기의 한정된 공간이기 때문에 모든 데이터를 저장할 수는 없다. 최대한 공간을 효율적으로 사용하여 자주 사용하는 데이터만 저장하는 것이 가장 좋다.

캐시 적중(Cache Hit)

CPU에서 필요한 데이터를 가져오는데 캐시메모리에 있어서 가져오는 것을 캐시 적중(Cache Hit) 라고 한다. 이 적중율이 높을수록 메모리까지 접근할 필요가 없으므로 처리 속도는 더 빨라지는 것이다. 만약 캐시 적중률이 0%에 가깝다면 오히려 캐시메모리가 없는 것이 더 효율적이게 되기 때문에 캐시 적중률을 높이는 것이 가장 중요하다고 볼 수 있다.

데이터 지역성(Data Locality)

캐시메모리에 무엇을 저장해야 캐시 적중률을 높일 수 있을지에 대한 해답이 바로 데이터 지역성의 원리이다. 컴퓨터에서 데이터는 시간, 공간, 순차적 지역성을 가지고 있다. 방금 사용한 데이터, 근처에 있는 데이터, 메모리에 저장된 명령어의 순서가 다음에 사용할 확률이 높다는 것이 바로 데이터의 지역성의 원리이다. 기본적으로 이 원리를 이용하여 CPU 캐시메모리에 명령어와 데이터를 저장한다. 이렇게 함으로써 캐시 적중률을 최대한 높일 수 있도록 하는 것이다.

캐시메모리 = SRAM

캐시메모리의 속도가 그렇게 빠르다면 메모리(RAM) 자체를 캐시메모리와 같은 걸로 만들면 되지 않느냐라는 생각을 하게 될 것이다. 물론 그렇게만 된다면 최상의 조건이 될 것이다. 하지만 캐시메모리는 일단 비싸고 크기도 메모리보다 크다.

일반메모리는 DRAM을 사용하지만 캐시메모리는 SRAM을 사용한다. DRAM와 SRAM은 원리가 조금 다르다. SRAM이 더 많은 트랜지스터가 필요하므로 크기도 커지고 가격도 비싼 것이다. 그래서 메인 메모리(RAM)은 가격이 싸고 대용량이 가능한 DRAM으로 만들고, 빠른 속도를 요구하는 캐시메모리는 SRAM을 이용하는 대신 용량이 작은 것이다.

CPU 캐시메모리 스펙 보기

CPU 캐시메모리는 CPU 안에 들어있다. 그래서 보통 CPU 제조사들이 공개한 CPU 스펙을 살펴보면 캐시메모리의 크기를 알 수 있다. 인텔과 AMD의 CPU 스펙을 살펴보고 캐시메모리의 크기를 직접 확인해보자.

인텔 CPU 캐시메모리 스펙

인텔 CPU 캐시메모리 스펙

AMD CPU 캐시메모리 스펙

AMD CPU 캐시메모리 스펙

우리가 보통 알고있는 메인 메모리(RAM) 크기가 8GB, 16GB, 32GB 인 것에 비하면 매우 작다는 것을 알 수 있다.

정리해보면 CPU 캐시메모리는 CPU와 메모리 사이의 속도차이를 해결해주기위한 저장공간이며, 메모리보다 많게는 몇십배에서 몇백배 빠른 대신 가격이 배우 비싸고 크기도 큰 SRAM 을 사용한 저장공간이다. 데이터의 지역성을 활용하여 자주 사용하는 데이터를 캐시메모리에 저장하여 컴퓨터의 성능을 향상시키는 기술이다.

Related Posts

애플 M3 탑재 맥북에어 공개

애플(Apple)은 애플 공식홈페이지에서 최신 M3 칩이 탑재된 신형 맥북에어(Macbook Air)를 공개하였다. 애플에서 공개된 신형 맥북에어의 스펙과 가격 및 어떤 점이 달라졌는지를 알아보도록 하자. 목차1 M3 칩1.1 M1…

애플 M2 컴퓨터 성능 비교 – 맥북, 맥미니, 맥스튜디오, 맥프로

애플에서 출시한 컴퓨터들이 아이맥을 제외하면 모두 M2 칩을 탑재하였다. M2 칩이 탑재된 맥북, 맥미니, 맥스튜디오, 맥프로에서 선택할 수 있는 M2 칩의 모든 기종을 알아보고 벤치마크를 통해 CPU와…

맥북 종류 및 가격

맥북 종류 및 가격 정리

맥북을 구매하려고 하면 다양한 선택지가 있다. 가장 먼저 맥북에어(MacBook Air)와 맥북프로 (MacBook Pro)로 나뉘고 각각 사이즈와 프로세서, 메모리와 같은 옵션을 선택한다. 이렇게 다양한 맥북 종류 및 가격을…

Apple M1 vs M2 성능 비교

Apple M1 vs M2 프로세서 CPU 성능 비교

Apple 에서 자체 개발한 M1과 M2 프로세서 칩의 CPU 성능을 비교한 벤치마크 결과를 통해 객관적으로 어느 정도의 성능이 향상되었는지를 알아보도록 하자. 2020년 11월 Apple M1이 공개되고 나서…

Apple M2 프로세서 시리즈 성능 비교

Apple의 거의 모든 제품군에 애플에서 개발한 M2 프로세서가 탑재되고 있다. Apple M2 시리즈는 M2, M2 Pro, M2 Max, M2 Ultra 4가지 종류가 있다. 그렇다면 각 CPU별로 어느정도의…

인텔 CPU 13세대 모바일

인텔 CPU 13세대 모바일용 – 시리즈 정리

인텔의 CPU인 Intel Core 프로세서 13세대 모바일용 CPU 제품들을 한눈에 알기 쉽게 시리즈별로 정리하였다. 각 시리즈별 제품과 제품별 벤치마크 점수를 알아보고, 어느정도의 성능 차이가 나는지를 알아보자. 목차1…