Improving Lock Performance of Home-base Lazy Release Consistency

Home-based Lazy Release Consistency의 락 성능향상

  • Yun, Hui-Cheol ;
  • Lee, Sang-Gwon (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Lee, Jun-Won (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Maeng, Seung-Ryeol (Dept. of Computer Science, Korea Advanced Institute of Science and Technology)
  • 윤희철 (한국전자통신연구원 컴퓨터소프트웨어기술연구소) ;
  • 이상권 (한국과학기술원 전산학과) ;
  • 이준원 (한국과학기술원 전산학과) ;
  • 맹승렬 (한국과학기술원 전산학과)
  • Published : 2001.10.01

Abstract

Home-based Lazy Release Consistency (HLRC) shows poor performance on lock based applications because of two reasons:(1) a whole page is fetched on a page fault while actual modification is much smaller , and(2) the home is at the fixed location while access pattern is migratory, In this paper we present an efficient lock protocol for HLRC. In this protocol, the pages that are expected to be used by acquirer selectively updated using diffs. The diff accumulation problem is minimized by limiting the size of diffs to be sent for each page. Our protocol reduces the number or page faults inside critical sections because pages can be updated by applying locally stored diffs . This reduction yields the reduction of average lock waiting time and the reduction of message amount. The experiment with five applications shows that our protocol archives 2%~40% speedup against base HLRC for four applications.

HLRC는 LRC의 변종으로 DSM 분야에 있어 최근에 제안된 모델이다. HLRC는 여러장점을 가지고 있지만 단점 또한 존재한다. 이러한 단점 중 하나는 작은 크기의 영역을 보호하기위해 락을 사용하는경웽 매우 성능이 떨어진다는 것이다. 불행이도 이러한 형태의 락 사용은 가장 일반적인 것이기 때문에 락을 사용하는 응용프로그램에 있어 HLRC는 일반적으로 나쁜 성능을 보이게 된다. 본 논문에서는 HLRC를 위한 효율적인 락 프로토콜을 제안한다. 제안하는 프로토콜은 락 허가시 임계구역내에서 사용될 페이지에 대한 선택적으로 diff를 전달하여 갱신을 한다. 이때 전송할 diff의 최대 크기를 제안함으로서 diff의 누적현상의 발생을 최소화한다. 제안한 락 프로토콜은 임계구역 내에서의 원격 페이지 요청을 줄이며 이것은 락 대기 시간및 메세지 전송량의 감소로 이어진다. 5개의 벤치마크의 응용프로그램을 사용하여 성능을 측정한 결과 기본의 HLRC에 비해 2%~40%의성능향상을 얻었다.

Keywords

References

  1. K. Li, Shared Virtual Memory on Loosely Coupled Multiprocessors, PhD thesis, Yale University, Department of Computer Science, September 1986
  2. P. Kelcher, A. L. Cox and W. Zqaenepoel. Lazy Release Consistency for Software Distributed Shared Memory. In Proceedings of the 19th international Symposium on Computer Architecture, 1992 https://doi.org/10.1145/146628.139676
  3. Y. Zhou, L. Iftode and K. Li, Perframnce Evaluation of Two Home Based Lazy Release Consistency protocols for Shared Virtual Memory. In Proceedings of USENIX OSDI, October 1996
  4. H. Li, S. Dvarkadas, A. Cox and W. Zwaencpoel. Message Passing Versus Distributed Shared Momory in networks of Workstations. In Proceedings of Supercomputing, December 1995
  5. K. Gharachorloo, D. Lenoski, P. Gibbons, A. Gupta and J. Hennessy. Memeory Consistency and Event Ordering in Scalable Shared Memory Multiprocessors. In Proceedings of the 17th international Symposium on CmputerArchitecture, 1990
  6. A. Cox, E. de Lara, Y. Hu and W, Zwaenepoel. A Performance Comparison of Homeless and Home Based Lazy pelease Consistency Protocols in software Shared Memory. In Proceedings of the fifth High Performance Computer Architecture, 1999
  7. S. Woo, M. Ohara, E. Torric, J. Singh and A. Gupta. The SPLASH-2 Programs : Characterization and Methodological Considerations. In Proceedings of the 22th International Symposium on computer Architecture, 1995 https://doi.org/10.1145/223982.223990
  8. D. Jiang, H. Shan and J. Singh. Applicaiton restructuring and performance portability on shared virtual memory and hardware coherent multiprocessors. In Proceedings of the 6th ACM Symposium on principles and Practice of Parallel Programming, 1997
  9. P. Keleher. Distributed shared Memory Using Lazy Release Consistency. PhD thesis, Rice University, December 1994
  10. L. Monnerat and R. Bianchini. Efficiently Adapting to Sharing patterns in Software DSMs. In Proceedings of the 4th High Performance Computer Architecture, February 1998
  11. C. Amza, A. Cox, S. Dwarkadas, L. Jin and K. Rajamani. Adaptive Protocols of Software Distributed Shared Memory. In Proceedings of the IEEE, March 1999