CS

[CS] 캐시 메모리 특징 및 동작원리

chandlerxx 2024. 4. 19. 18:08

캐시메모리 등장 배경

1. CPU의 연산속도가 CPU가 메모리에 접근하는 속도보다 빠른 문제

2. 용량과 비용 문제

- CPU에 가까울수록 메모리 접근 속도는 빠르지만, 용량은 적고, 가격은 비싸짐

 

이러한 두가지 문제점을 해결하기 위해 등장한게 `캐시메모리`입니다.

 

 

캐시 메모리

  • CPU와 메모리 사이에 위치하면서 메모리의 데이터를 미리 복사하여 임시저장
  • 메모리에 접근하는 속도가 빠르다
  • 레지스터보다는 용량이 크다

출처

 

왼쪽: 캐시메모리X / 오른쪽 : 캐시메모리O

 

컴퓨터 내부 여러개의 캐시 메모리를 살펴보면

L1, L2 : CPU 내부에 존재하는 캐시 메모리

L3 : CPU 외부

  • 속도 : L1 > L2 > L3
  • 용량 : L3 > L2 > L1

 

캐시메모리는 CPU가 메모리로부터 가져올 데이터를 어떻게 예측하는걸까?

`참조 지역성의 원리`에 입각하여 캐시메모리가 동작합니다.

  • `시간 지역성 ` : 최근 접근했던 메모리공간에 다시 접근하려는 경향 
    - 예) 한번 참조했던 변수에 다시 접근하려는 시도 
  • `공간 지역성` : 접근한 메모리 공간 근처를 접근하려는 경향-
    - 예) 기능별로 구현되어 있는 메모리공간에, 원하는 기능 근처를 집중적으로 접근하려는 시도

 

 

출처

교보문고 혼공컴운