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