Starbucks Caramel Frappuccino
본문 바로가기
  • 그래 그렇게 조금씩
Computer Science/컴퓨터 구조

13. 캐시 메모리

by Toughie 2023. 8. 21.

📱캐시 메모리📱

CPU가 메모리에 접근하는 시간은 CPU 연산 속도보다 훨씬 느리다!

 

저장 장치 계층 구조(memory hierarchy)_여기서 memory는 RAM이 아니라 일반적인 저장장치

1. CPU와 가까운 저장 장치는 빠르고(ex. 레지스터), 멀리 있는 저장 장치는 느리다.(ex.메모리, USB)

2. 속도가 빠른 저장 장치는 저장 용량이 작고 비싸다.


캐시 메모리

CPU와 메모리 사이에 있으며, 레지스터보다 용량이 크고, 메모리보다 빠른 SRAM 기반의 저장장치.

CPU의 연산 속도와 메모리 접근 속도의 차이를 줄이기 위해 탄생.

CPU가 매번 메모리에 접근하는 것은 시간이 오래 걸리기 때문에,

메모리에서 CPU가 사용할 데이터의 일부를 미리 캐시 메모리로 가지고 와서 쓰는 것.(ex. 이미지 캐싱)

비유가 예술이다.

 

캐시메모리는 CPU내부 혹은 외부에 위치할 수 있다.

속도: L1 > L2 > L3

용량: L3 < L2 < L1

L1을 더 빠르게 하기 위해 데이터를 담는 L1D(Data), 명령어를 담는 L1I(Instruction)로 분리하는 분리형 캐시도 존재함.

참조 지역성의 원리 (Locality of Reference)

캐시 메모리는 메모리보다 용량이 작기 때문에, 메모리의 모든 내용을 저장할 수 없다.

-> CPU가 자주 사용할 만한 내용을 예측해서 저장해야함.

 

CPU가 캐시 메모리에 저장된 값을 활용했을 경우(예측 성공) ->  캐시 히트 (성능 상승)

반대로 예측이 틀려서 CPU가 메모리에 접근해야 하는 경우 -> 캐시 미스 (성능 하락)

* 캐시 적중률 = 캐시 히트 / (캐시 히트 + 캐시 미스) (요즘은 8~90% 정도)

 

CPU가 사용할 법한 데이터를 예측하는 방법이 참조 지역성의 원리임.

- CPU가 메모리에 접근할 때의 주된 경향을 바탕으로 만들어진 원리.

 

1. CPU는 최근에 접근했던 메모리 공간에 다시 접근하려는 경향이 있다. (ex. 변수)

2. CPU는 접근한 메모리 공간 근처를 접근하려는 경향이 있다. (공간 지역성)

 

학습 출처: https://www.youtube.com/watch?v=bls_GjX-4U8&list=PLVsNizTWUw7FCS83JhC1vflK8OcLRG0Hl