Determination of a Grain Size for Reducing Cache Miss Rate of Direct-Mapped Caches

직접 사상 캐쉬의 캐쉬 실패율을 감소시키기 위한 성김도 정책

  • 정인범 (한국과학기술원 전자전산학과) ;
  • 공기석 (한국전자통신연구원 내장형S/W연구팀) ;
  • 이준원 (한국과학기술원 전자전산학과)
  • Published : 2000.07.15

Abstract

In data parallel programs incurring high cache locality, the choice of grain sizes affects cache performance. Though the grain sizes chosen provide fair load balance among processors, the grain sizes that ignore underlying caching effect result in address interferences between grains allocated to a processor. These address interferences appear to have a negative impact on the cache locality, since they result in cache conflict misses. To address this problem, we propose a best grain size driven from a cache size and the number of processors based on direct mapped cache's characteristic. Since the proposed method does not map the grains to the same location in the cache, cache conflict misses are reduced. Simulation results show that the proposed best grain size substantially improves the performance of tested data parallel programs through the reduction of cache misses on direct-mapped caches.

높은 캐쉬 구역성을 나타내는 데이터 병렬 프로그램들에서 그레인 크기의 선정은 캐쉬 성능에 커다란 영향을 마친다. 선택된 그레인 크기가 프로세서들 사이에 균등한 부하 배분을 제공하더라도 내재하는 캐쉬 효과를 무시한 그레인 크기는 하나의 프로세서에 할당된 그레인들 사이에 주소 간섭을 발생되게 한다. 이런 주소 간섭은 캐쉬 충돌 실패를 발생하기 때문에 캐쉬 구역성에 부정적 영향을 미치게 된다. 이러한 문제점을 해결하기 위해서 본 논문에서는 직접 사상 캐쉬의 특정을 바탕으로 캐쉬 크기와 프로세서 개수들로부터 최적 그레인 크기를 유도한다. 제안된 방법은 캐쉬 공간 내에서 그레인들이 동일한 주소로 사상 되지 않게 하므로 캐쉬 충돌 실패를 감소시킨다. 모의 시험 결과는 제안된 최적 그레인 크기는 직접 사상 캐쉬상에서 캐쉬 실패를 줄이므로 시험된 데이터 병렬 프로그램들의 성능을 개선시킴을 보인다.

Keywords

References

  1. Alvin R. Lebeck and David A. Wood, 'Cache Profiling and the SPEC Benchmarks: A Case Study,' IEEE Computer, Vol.27, No.10, pp 15-26, Oct. 1994 https://doi.org/10.1109/2.318580
  2. David A. Patterson, John L. Hennessy, Computer A Quantitative Approach, 2nd Ed., p.405, MORGAN KAUFMANN PUBLISHERS, Inc., 1996
  3. Monica S. Lam, Edward E. Rothberg and Michael E. Wolf, 'The Cache Performance and Optimizations of Blocked Algorithms, 'In Proceedings of the 4th International Conference on Architectural Support for Programming Languages and Operating Systems, pp 63-74, April 1991 https://doi.org/10.1145/106972.106981
  4. A. Tucker and A. Gupta, 'Process Control and Scheduling Issues for Multiprogrammed Multiprocessors,' In Proceedings of the 12th ACM Symposium on Operating System Principles, pp 159-166, Dec. 1989 https://doi.org/10.1145/74850.74866
  5. 정인범, 이준원,'병렬 프로그램에서 성김도와 스케줄링 정책들의 효과,'한국정보과학회 논문지, 제 25권, 제11 호, pp. 1214-1224, 1998
  6. J.E. Veenstra and R.J. Fowler, 'MINT: A Front End for Efficient Simulation of Shared-Memory Multiprocessors. 'In Proceeding of 2nd International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS),' pp 201-207, Jan. 1994 https://doi.org/10.1109/MASCOT.1994.284422
  7. J. Archibald and J-L. Baer, 'Cache Coherence Protocols : Evaluation Using a Multiprocessors Simulation Model,' ACM Transactions on Computer Systems, Vol 4, No 4, pp 273-298, Nov. 1986 https://doi.org/10.1145/6513.6514
  8. Vipin Kumar, Ananth Grama, Anshul Gupta and George Karypis, 'Introduction to Parallel Computing(Design and Analysis of Algorithms).' The Benjamin/Cummings Publishing Company, Inc., pp.169, pp.179, 1994.
  9. K. C. Sevcik, 'Application Scheduling and Processor Allocation in Multiprogrammed Parallel Processing Systems,' Technical Report CSRI-282, Computer Systems Research Institute, University of Toronto, March 1993
  10. S. H. Chiang, R. K. Mansharamani and M. K. Vernon, 'Use of Application Characteristics and Limited Preemption for Run-to-Completion Parallel Processor Scheduling Policies,' In Proceeding of the ACM SIGMETRICS Conference, pp 33-44, May 1994 https://doi.org/10.1145/183018.183023
  11. R.E. Kessler and Mark D. Hill, 'Page Placement Algorithms for Large Real-Index Caches,' ACM Transaction on Computer Systems, Vol 10, No 4, pp 338-359, Nov. 1992 https://doi.org/10.1145/138873.138876