Cache

정민준·2022년 11월 17일
0

CS공부

목록 보기
6/9
post-thumbnail

Cache란?

Cache란 자주 사용하는 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 저장 공간이 작고 비용이 비싼 대신 빠른 성능을 제공한다.

Cache의 장단점

장점
1. 캐시에 데이터를 미리 복사해 놓으면, 계산이나 접근 시간 없이 더 빠른 속도로 데이터에 접근할 수 있음.

단점
1. 비용이 많이 든다. 메모리 저장공간은 속도가 빠를수록 용량이 적고, 비싸다.

Cache의 지역성

모든 데이터를 캐시에 담기에는 저장 공간이 그리 크지않기 때문에 힘들다. 그래서 보통 캐시는 지역성을 나누어 분류한다.

  • 시간적 지역성
    특정 데이터가 한번 접근되었을 경우 가까운 미래에 또 한번 데이터에 접근할 가능성이 높은 것을 말한다. 즉, 한 번 가져왔던 데이터를 또 쓸 일이 있다는 의미를 말한다.
    이런 경우 캐시에 한번 가져와서 저장해놓고 여러 번 사용하게 되면 메모리에 접근하는 횟수가 줄어든다. 따라서 캐시는 반복적으로 사용되는 데이터가 많을수록 높은 효율성을 낼 수 있다.

  • 공간적 지역성
    특정 데이터와 가까운 주소가 순서대로 접근되었을 경우 공간적 지역성이라고 한다. CPU 캐시나 디스크 캐시의 경우에는 한 메모리 주소에 접근할 때 그 주소뿐 아니라 해당 블록을 전부 캐시에 가져오게 된다.
    만약 데이터가 블록에 모여있지 않다면 Cache Miss가 날 확률이 높아지고 메모리에 여러번 접근하게되어 효울성이 떨어지게 된다.

참조: https://jeongkyun-it.tistory.com/173

profile
머리 박고 개발공부중,,,

0개의 댓글