Abstract
NUMA systems have remote access caches(RAC) in each local node to reduce the overhead for repeated remote memory accesses. By this RAC, memory latency and network traffic can be reduced and the performance of the multiprocessor system can be improved. Until now, several cache replacement policies have been proposed in recent years, and there also is cache replacement policy for multiprocessor systems. In this paper, we propose a cache replacement policy which is based on cache line coherence information. In this policy, the cache line that does not have an ownership is replaced first with respect to cache line that has an ownership. Like this way, the overhead to transfer ownership is avoided and the memory latency can be decreased. We also propose “Keeping-Ownership replacement policy with MRU (KOM)” and “Keeping-Ownership replacement policy with Reference Bit(KORB)” to reduce the frequent replacement penalty of the ownership-lacking cache line. We compare and analyze these with LRU and Pseudo LRU(PLRU). The simulation shows that KOM outperforms the PLRU by 25%, and KORB outperforms the PLRU by 13%. Although the hardware cost of KOM is very small, the performance of KOM is nearly equal to that of the LRU.
NUMA 시스템은 원격의 메모리에 반복적으로 접근하는 오버헤드를 피하기 위해 지역 노드내에 원격 캐시를 둔다. 이러한 원격 캐시를 사용하여 원격 메모리로의 접근 지연 시간을 감소시키고 네트워크 상의 트래픽 양을 줄이지 못한다면 다중 프로세서 시스템의 성능 저하는 명백하다. 성능 상의 여러 기준 중에서 메모리 시스템과 관련해서는 캐시 교체 정책에 관한 연구가 계속되었고, 그 중 다중 프로세서 시스템에서의 캐시 교체 정책에 관한 연구도 이어졌다. 본 논문에서는 캐시의 공유 상태에 기반을 둔 교체 정책을 제안한다. 소유권이 없는 캐시 라인을 먼저 교체하고, 이를 통해 소유권이 옮겨지는 오버헤드를 피하여 메모리 지연 시간을 줄인다. 또한 소유권이 없는 캐시 라인에 지나친 피해가 얼도록, “MRU를 사용한 소유권 유지 교체 정책(KOM)”과 “참조 비트를 사용한 소유권 유지 교체 정책(KORB)”를 제안하고, 이를 LRU, Pseudo LRU(PLRU)와 비교한다. KOM과 KORB는 PLRU에 비하여 수행 시간에서 25%, 13%씩 각각 향상을 보였다. 특히 KOM은 하드웨어 복잡도가 현저히 낮음에도 불구하고 LRU에 가까운 성능을 나타냈다.