본 게시물은 ‘강민철, ⌜혼자 공부하는 컴퓨터구조 + 운영체제⌟, 한빛미디어, 2022’ 을 인용하였습니다.
저장 장치 계층 구조
‘CPU에 얼마나 가까운가’를 기준으로 각기 다른 용량/성능의 저장 장치들을 계층적으로 나타낸 구조
CPU에 가까운 저장장치일수록 빠르고, 용량 작고, 비쌈
캐시 메모리
- CPU는 프로그램을 실행하는 과정에서 메모리에 빈번하게 접근해야 함
- CPU 연산 속도가 빨라도 메모리에 접근하는 속도가 그에 따라가지 못한다면 CPU 발전은 소용 없음
⇒ 캐시 메모리의 등장
- 캐시 메모리(cache memory) : CPU와 메모리 사이에 위치하고 레지스터보다 용량이 크고 메모리보다 빠른 SRAM 기반의 저장 장치
- CPU 연산 속도와 메모리 접근 속도의 차이를 줄이기 위해 탄생
- 컴퓨터 내부에는 여러 개의 캐시 메모리 있음
- CPU(코어)와 가까운 순서대로 계층 구성
- 코어와 가장 가까운 캐시 메모리 : L1(Level1) 캐시
- 그 다음 가까운 캐시 메모리를 L2(Leve2) 캐시, L3(Level3) 캐시
캐시 메모리 용량 : L1 < L2 < L3, 캐시 메모리 속도 : L1 > L2 > L3
- 일반적으로 L1, L2 캐시는 코어마다 고유한 캐시 메모리로 할당되고, L3 캐시는 여러 코어가 공유하는 형태로 사용됨
- cf. 분리형 캐시(split cache) : 코어와 가장 까운 캐시는 조금이라도 접근 속도를 빠르게 만들기 위해 명령어만 저장하는 L1, L1| 캐시와 데이터만 저장하는 L1D 캐시로 분리
참조 지역성 원리
- 보조기억장치는 전원이 꺼져도 기억할 대상 저장
메모리는 실행 중인 대상을 저장
캐시 메모리는 CPU가 사용할 법한 대상을 예측해 저장
- 캐시 히트(cache hit) : 자주 사용될 것으로 예측한 데이터가 실제로 들어맞아 캐시 메모리 내 데이터가 CPU에서 활용될 경우
- 캐시 미스(cache miss) : 자주 사용될 것으로 예측해 캐시 메모리에 저장했으나, 예측이 틀려 메모리에서 필요한 데이터를 직접 가져와야 하는 경우
- 캐시 적중률(cache hit ratio) : 캐시가 히트되는 비율
캐시 히트 횟수 / (캐시 히트 횟수 + 캐시 미스 횟수)
- 참조 지역성의 원리(locality of reference, principle of locality) : CPU가 메모리에 접근할 때 주된 경향으로 만들어진 원리
- CPU는 최근에 접근했던 메모리 공간에 다시 접근하려는 경향이 있음 : 시간 지역성(temporal locality)
- CPU는 접근한 메모리 공간 근처를 접근하려는 경향이 있음 : 공간 지역성(spatial locality)
확인 문제
1. 다음 보기에 있는 저장 장치들로 저장 장치 계층 구조 도식도를 채우세요.
① 레지스터
② 캐시 메모리
③ 메모리
④ 보조기억장치
2. 캐시 메모리와 관련된 설명 중 옳지 않은 것을 고르세요. : 캐시 적중률이 높으면 캐시 메모리의 성능이 떨어집니다.
캐시 메모리의 적중률이 높으면, 캐시 메모리의 성능이 높아짐