Skip to main content
QUICK REVIEW

[논문 리뷰] Proficient Pair of Replacement Algorithms on L1 and L2 Cache for Merge Sort

Richa Gupta, Sanjiv Tokekar|arXiv (Cornell University)|2010. 03. 22.
Advanced Data Storage Technologies참고 문헌 23인용 수 5
한 줄 요약

이 논문은 병합 정렬을 위한 새로운 이중 수준 캐시 교체 전략을 제안하며, L1 캐시에 대해 파artition 기반 교체(PBR_L1) 알고리즘을 도입하고 L2 캐시는 FIFO로 최적화한다. 시뮬레이션 결과, 다양한 캐시 크기에서 FIFO 대비 PBR_L1이 1.7%에서 44%까지 성능 향상을 보였으며, 분 析된 워크로드에서 LRU와 LFU를 모두 능가한다.

ABSTRACT

Memory hierarchy is used to compete the processors speed. Cache memory is the fast memory which is used to conduit the speed difference of memory and processor. The access patterns of Level 1 cache (L1) and Level 2 cache (L2) are different, when CPU not gets the desired data in L1 then it accesses L2. Thus the replacement algorithm which works efficiently on L1 may not be as efficient on L2. Similarly various applications such as Matrix Multiplication, Web, Fast Fourier Transform (FFT) etc will have varying access pattern. Thus same replacement algorithm for all types of application may not be efficient. This paper works for getting an efficient pair of replacement algorithm on L1 and L2 for the algorithm Merge Sort. With the memory reference string of Merge Sort, we have analyzed the behavior of various existing replacement algorithms on L1. The existing replacement algorithms which are taken into consideration are: Least Recently Used (LRU), Least Frequently Used (LFU) and First In First Out (FIFO). After Analyzing the memory reference pattern of Merge Sort, we have proposed a Partition Based Replacement algorithm (PBR_L1)) on L1 Cache. Furthermore we have analyzed various pairs of algorithms on L1 and L2 respectively, resulting in finding a suitable pair of replacement algorithms. Simulation on L1 shows, among the considered existing replacement algorithms FIFO is performing better than others. While the proposed replacement algorithm PBR_L1 is working about 1.7% to 44 % better than FIFO for various cache sizes.

연구 동기 및 목표

  • 메모리 계층에서 다양한 캐시 수준 간에 단일 교체 알고리즘이 효율적이지 않은 문제를 해결하기 위해.
  • 병합 정렬의 메모리 액세스 패턴을 분석하여 L1 및 L2 캐시에 최적화된 교체 전략을 규명하기 위해.
  • 병합 정렬 실행 중 L1 캐시 동작 특성에 맞게 특화된 교체 알고리즘(PBR_L1)을 설계하기 위해.
  • 병합 정렬의 액세스 패턴에 특화된, L1과 L2 캐시에 각각 적합한 교체 알고리즘의 조합을 특정하기 위해.
  • 정렬 워크로드에서 L1 및 L2 캐시의 상이한 액세스 특성을 활용하여 캐시 성능을 향상시키기 위해.

제안 방법

  • 병합 정렬의 메모리 참조 문자열을 분석하여 L1 및 L2 수준의 액세스 패턴을 특성화하였다.
  • 시뮬레이션을 통해 L1 캐시에서 기존 교체 알고리즘(LRU, LFU, FIFO)의 성능을 평가하였다.
  • 액세스 빈도와 최근성 기반으로 데이터 액세스를 파artition으로 그룹화하는 파artition 기반 교체(PBR_L1) 알고리즘을 L1 캐시에 제안하였다.
  • 시뮬레이션 환경에서 우수한 성능을 보인 점을 바탕으로 L2 캐시에 대해 FIFO를 선택하였다.
  • 다양한 캐시 크기와 구성에서 PBR_L1을 LRU, LFU, FIFO와 비교하기 위해 시뮬레이션을 수행하였다.
  • 다양한 워크로드에서의 성능 기반으로 최적의 조합인 L1에 PBR_L1, L2에 FIFO를 도출하였다.

실험 결과

연구 질문

  • RQ1기존 교체 알고리즘(LRU, LFU, FIFO)은 병합 정렬의 L1 캐시 액세스 패턴에서 어떻게 성능을 발휘하는가?
  • RQ2병합 정렬의 L1 캐시 액세스 특성을 더 잘 활용할 수 있는 맞춤형 교체 알고리즘을 설계할 수 있는가?
  • RQ3병합 정렬에 대해 L1 및 L2 캐시 간의 가장 효과적인 교체 알고리즘 조합은 무엇인가?
  • RQ4제안된 PBR_L1 알고리즘이 캐시 미스 비율 또는 성능 측면에서 기존 알고리즘을 능가하는가?
  • RQ5PBR_L1 + FIFO 조합의 성능은 다양한 L1 캐시 크기에서 어떻게 변화하는가?

주요 결과

  • 기존 알고리즘 중에서 FIFO가 병합 정렬 워크로드의 L1 캐시에서 가장 우수한 성능을 보였다.
  • 제안된 PBR_L1 알고리즘은 다양한 L1 캐시 크기에서 FIFO 대비 1.7%에서 44%까지 성능 향상을 보였다.
  • 제시된 병합 정렬 액세스 패턴에서 PBR_L1은 시뮬레이션 환경에서 LRU 및 LFU를 모두 능가하는 성능을 보였다.
  • L1에 PBR_L1, L2에 FIFO를 적용한 조합이 병합 정렬에 가장 효율적인 조합으로 나타났다.
  • PBR_L1의 성능 향상은 중간에서 대규모 캐시 크기에서 가장 두드러졌으며, 이는 확장성의 이점을 시사한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.