[Arm프로세서] 캐시 알고리즘: 시간적 지역성(temporal locality)
By Guillermo Austin Kim | 2022년 5월 13일 |
캐시는 CPU 근처에 있는 용량이 작지만 동작 속도는 빠른 임시 저장 공간입니다. CPU는 접근 속도가 오래 걸리는 메인 메모리보다 캐시에 먼저 접근해 찾으려는 데이터가 있는지 체크합니다. 만약 캐시에 데이터가 있으면 캐시에 존재하는 데이터를 가져옵니다. CPU가 접근하려는 데이터나 명령어가 캐시에 존재하는 확률이 높을 수록 CPU의 성능이 더 좋아집니다. 캐시가 CPU가 자주 사용하는 데이터를 갖고 있으면 CPU의 성능이 좋아지므로 "CPU가 자주 사용하는 데이터를 어떤 방식으로 미리 로딩할까?"라는 주제로 고민 했습니다. 이 과정에서 CPU가 자주 사용하는 데이터를 예측하는 방법을 연구하기 시작했습니다. 프로그램이 실행될 때 CPU 메모리에 접근하는 패턴을 면밀히 관찰했는데, 그 결과 몇 가지 패턴이