더북(TheBook)

CPU가 캐시에 요청했는데 요청한 데이터가 없다면 이를 캐시 미스(cache miss)라고 하고, 요청한 데이터가 있다면 캐시 히트(cache hit)라고 합니다.

캐시가 도중에 껴서 과정이 더 복잡해졌다고 생각할지도 모릅니다. 하지만 그렇지 않습니다. 캐시에서 CPU로 데이터를 전달하는 데 걸리는 시간은 3클럭입니다. 메인 메모리에서 가져오는 것보다 훨씬 빠르지요. 공간 지역성을 고려한다면 캐시 히트가 발생했을 때 성능은 월등하게 향상됩니다.

앞서 배열은 메모리에서 선형적으로 이어져 있다고 했습니다. 그렇다면 캐시 히트가 발생하기 좋은 최적의 조건이군요. 게다가 배열이 관련 있는 데이터 집합임을 고려하면 배열의 장점은 충분히 짐작할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.