설명하기에 앞서 이 글은 책 '혼자 공부하는 컴퓨터구조 +운영체제' 를 참고하여 작성된 글임을 밝힙니다.
즉, CPU가 메모리에 진입하는 속도가 느리다는 단점을 보완해 주기 위해 탄생한 것이 바로 캐시 메모리이다.
CPU는 메모리에 접근하는 시간이 일반적으로 오래 걸린다. 한시라도 빠르게 다양한 데이터들을 처리해야하는 입장에서 보았을 때 CPU의 처리 속도가 느린 것은 매우 치명적인 단점이다.
그래서 이러한 문제점을 해결해 주는 것이 바로 캐시 메모리이다.
CPU가 사용할 일부 데이터를 미리 캐시 메모리에 가져와서 빠르고 신속하게 데이터를 처리할 수 있게 하는 것이 바로 캐시 메모리의 장점이다.
(위 사진과 같이 CPU가 직접 메모리에 접근하는 것보다, CPU가 캐시 메모리에서 가져온 데이터에 접근하는 것이 더욱 효율적이다.)
-> 이와 같은 구조를 "저장장치 계층 구조" 라고 한다.
저장장치 계층 구조(캐시메모리)
- 컴퓨터 내부에는 여러개의 캐시메모리들이 있다.
- CPU(코어)와 가까운 캐시메모리 일수록 순서대로 L1(Level 1), L2, L3 캐시라고 부른다.
'용량이 작은' 캐시 메모리는 CPU가 사용할 법한 대상을 "예측"하여 저장하는데,
캐시가 미스되지 않고 히트 된 횟수를 비율로 나타낸 것을 캐시 적중률 이라고 한다.
캐시 히트 횟수 / (캐시 히트 횟수 + 캐시 미스 횟수)
이처럼 캐시 메모리의 (hit)적중률을 높이기 위해서는 참조 지역성의 원리를 바탕으로 캐시 메모리가 CPU의 접근 위치를 잘 파악할 수 있어야 한다.
| 정리 하며 |
- 캐시 메모리는 CPU의 처리 속도(성능)을 향상 시키기 위한 메모리 유형이다.
- 캐시 메모리는 '저장장치 계층 구조'의 특성에 의해 처리 속도는 빠른 반면, 용량이 작고 비싸다.
- 캐시 메모리가 성공적인 데이터 접근시 -> 캐시 히트
아닐 시 -> 캐시 미스- 캐시 적중률을 높이기 위해서는 참조 지역성의 원리를 기억하자.