h-log
로그인
h-log
로그인
[CS] 지역성의 원리와 캐시
해니
·
2022년 11월 28일
팔로우
0
python
자료구조
CS
목록 보기
2/15
📌 지역성 (locality)
빠른 CPU와 느린 메인 메모리 RAM의 속도 차이는 성능 저하 원인 중 하나가 되는데 , 캐시는 이 둘 사이에서 중간자 역할을 함
캐시가 효율적으로 동작하기 위해서는 캐시에 저장할 데이터가 지역성을 가져야 함
시간 지역성
읽기/쓰기를 위해 특정 메모리가 사용됐을 때 가까운 시일 내에 해당 메모리가 다시 사용될 가능성이 높은 것을 의미함
한번 접근한 변수는 계속해서 접근할 가능성이 높음
공간 지역성
특정 데이터와 가까운 주소가 순서대로 접근되는 경우를 의미함
이번에 접근할 변수는 이전에 접근한 변수 근처에 있을 가능성이 높음
🧰 레지스터 (Register)
CPU 내 임시 저장장치
메인 메모리에서 가져온 데이터를 일시적으로 저장할 수 있는 메모리 공간
메모리에서 바로 CPU의 연산 장치로 값을 가져올 수 없으므로 반드시 레지스터로 값을 가져와야 하며, 연산 결과값은 다시 임시 레지스터에 저장된 후 메모리에 있는 변수에 저장되는 과정을 거침
🍋 캐시
메인 메모리에 있는 변수는 연산을 하기 전과 후에 반드시 레지스터를 거쳐야하는데, 이러한 비효율성을 줄이기 위해 도입됨
CPU는 필요한 변수를 메모리에서 직접 가져오지 않고 캐시에 요청함
자주 사용하는 데이터를 캐시에 저장하면 CPU가 빠르게 꺼내 쓸 수 있음
캐시 히트(cache hit): CPU에서 요청한 데이터가 캐시 안에 있는 경우
캐시 미스(cache miss): CPU에서 요청한 데이터가 캐시 안에 없는 경우
출처
https://literate-t.tistory.com/73
파이썬으로 배우는 자료구조
해니
💻 ⚾️ 🐻 이전했어요..! ➡️ https://dev-haeni.tistory.com/
팔로우
이전 포스트
[CS] 메모리 구조 - 스택 ,힙
다음 포스트
[CS] 추상 자료형 - 스택(Stack), 큐(Queue)
0개의 댓글
댓글 작성