본문 바로가기

TIL

2023.01.04 캐시

CPU ↔ 메모리 사이의 데이터 전송 레이턴시 개선을 위해 사용되는 전략

 

지역성(영어로는 Locality) 

  • 시간적 지역성
    • 지금 어떤 데이터를 사용했다면 가까운 미래에 재사용을 할 가능성
  • 공간적 지역성
    • 지금 어떤 데이터를 사용했다면 그와 인접한 데이터도 사용할 가능성

 

 

캐시의 구성

 

출처: https://www.insidetheiot.com/cache-in-multicore-systems/

 

 L1, L2, L3 캐시가 전부 크기가 다르다 그리고 L3 캐시는 공유 캐시로 명명이 되어있다.

저 그림에서 각 캐시들이 코어랑 멀면 멀수록 실제로도 멀어진다고 생각하셔야 합니다! 그런 의미에서, L1 캐시는 코어랑 가장 가까운 친구일 것이고요. L3 캐시는 코어랑 가장 먼 친구겠네요. 당연하게도 거리가 가까울수록 CPU가 데이터를 가져오는 속도가 빠를 거고요! 멀수록 느려질 겁니다!

그래서 L1 캐시는 속도를 챙기는 대신 저장 공간을 포기하여 빠르게 가지고 오는 것에만 집중했어요! 하지만, 그만큼 cache miss가 될 확률은 높아질 수밖에 없습니다! 왜냐하면 워낙 가진 게 별로 없어서요.

반면에 L2, L3 캐시는 데이터를 갖고 오는 속도는 L1 캐시에 비해서 느리지만 cache miss가 될 확률도 낮아져요!

'TIL' 카테고리의 다른 글

2023.01.09 예외와 오류  (0) 2023.01.09
[WIL]2023.01.02~01.06  (0) 2023.01.08
[WIL] 2022.12.26~12.30  (0) 2023.01.02
2022.12.28 JWT 토큰, 쿠키, 세션 차이  (0) 2022.12.29
2022.12.27 PostMan 사용법  (1) 2022.12.28