--
프로세서의 속도가 증가함에 따라 메모리의 속도도 따라와준다면 좋았겠지만...
프로세서가 빠르나 메모리가 느려 시스템의 속도가 느린 상황.
이런 상황을 '캐시' 를 통해 개선할 수 있다.
캐시는 CPU 칩 안에 들어가는 메모리로, 자주 사용하는 데이터를 담아놓고 메인 메모리 접근 대신 사용해
처리 속도를 높이는 용도로 쓰인다.
그럼 여기서 '자주 사용하는 데이터'는 어떤 기준으로 선정될까.
바로 시간 지역성 과 공간 지역성 , 즉 지역성 원리에 따라 판단되어진다.
시간 지역성은 최근 접근한 데이터에 다시 접근하는 경향을 말하고, 공간 지역성은 최근 접근한 데이터의
주변 공간에 다시 접근하는 경향을 말한다.
--
CPU 칩에는 L1, L2, L3 Cache와 같이 여러 개의 캐시가 들어간다.
L1 Cache는 프로세서와 가장 가까이 있는 캐시로, Instruction Cache(I$)와 Data Cache(D$)로 나뉜다.
Instruction Cache : 메모리의 TEXT 영역 데이터를 다루는 캐시
Data Cache : TEXT 영역을 제외한 모든 데이터를 다루는 캐시
L2 Cache는 용량이 큰 캐시로, 나누지 않고 사용한다.
L3 Cache는 멀티 코어 시스템에서 여러 코어가 공유하게 되는 캐시이다.
--
다음 글에서는 캐시의 성능에 대해 정리.
'개발 > etc' 카테고리의 다른 글
ORM에 대해 간략히 알아보기 (1) | 2024.01.23 |
---|---|
[git] git status 에러코드 128 소스트리 에러 (0) | 2023.04.18 |
[JBoss] 배포 옵션 정리 (마커, CLI) (0) | 2022.11.10 |
[JBoss] you have not yet added any users to be able to access the admin console 에러 해결법 (0) | 2022.11.09 |
[Tomcat] PermGen space 에러 해결방법 (0) | 2022.11.07 |
댓글