슬롯링으로 연결된 다중처리기 시스템에서 최적화된 캐쉬일관성 프로토콜

An Optimized Cache Coherence Protocol in Multiprocessor System Connected by Slotted Ring

  • 민준식 (한국전산원) ;
  • 장태무 (동국대학교 컴퓨터·멀티미디어공학과)
  • 발행 : 2000.12.01

초록

다중처리기 시스템에서 여러 처리기 캐쉬들 간에 일고나성을 유지하기 위한 정책에는 기록무효화 정책과 기록갱신 정책이 있다. 기록 무효와 정책은 처리기사 캐쉬 블록에 기록을 시도할 때마다 다른 캐쉬에 저장된 동일한 모든 복사본을 무효화한다. 이러한 빈번한 무효화로 인하여, 기록 무효화 정책은 캐쉬 적중률이 낮다. 반면에 기록 갱신정책은 동일한 블록을 무효화 시키는 것이 아니라 동시에 갱신하는 정책이다. 이러한 정책의 경우에 블록의 공유 여부에 상관없이 갱신된 내용을 상호 연결망ㅇ르 통하여 전송해야만 하며 이로 인하여 상호 연결망상에 교통량이 폭주하게 된다. 본 논문에서는 슬롯링으로 연결된 공유메모리 다중처리기 시스템에서 효율적인 캐쉬 일관성 정책을 제안한다. 제안된 프로오콜은 기록 갱신정책을 기반으로 하며 공유된 블록을 갱신할 경우에만 갱신된 내용을 전송한다. 반면 갱신된 블록이 공유되지 않은 블록이면 갱신된 내용을 전송하지 않는다. 본 논문에서는 제안된 프로토콜은 분석하고 시뮬레이션을 통하여 기존의 프로토콜과 성능을 비교한다.

There are two policies for maintaining consistency among the multiple processor caches in a multiprocessor system: Write invalidate and Write update. In the write invalidate policy, whenever a processor attempt to write its cached block, it has to invalidate all the same copies of the updated block in the system. As a results of this frequent invalidations, this policy results in high cache miss ratio. On the other hand, the write update policy renew them, instead of invalidating all the same copies. This policy has to transfer the updated contents through interconnection network, whether the updated block is ptivate or not. Therefore the network suffer from heavy transaction traffic. In this paper we present an efficient cache coherence protocol for shared memory multiprocessor system connected by slotted ring. This protocol is based on the write update policy, but the updated contents are transferred only in case of updating the shared block. Otherwise, if the updated block is private, the updated contents are not transferred. We analyze the proposed protocol and enforce simulation to compare it with previous version.

키워드

참고문헌

  1. Per Stenstrom, 'A Survey of Cache Coherence Schemes for Multiprocessor,' IEEE Computer, pp.12-24, Jun. 1990 https://doi.org/10.1109/2.55497
  2. L. A. Barroso and M. Dubois, 'Cache Coherence on a Slotted Ring,' Intl. Conf. on Parallel Processing, pp. I230-I237, 1991
  3. L. A. Barroso and M. Dubois, 'The Performance of Cache-Coherent Ring-based Multiprocessors,' Proc. 20th Annul. Intl. Symp. on Computer Architecture, pp.268-277, May, 1993
  4. SQ. Yang, 'Performance Analysis of a Cache Coherent Multiprocessor-based on Hierarchical Multiple Buses,' Proc. PARBASE-90, pp.248-257, Mar. 1990 https://doi.org/10.1109/PARBSE.1990.77149
  5. L. Lamport, 'How to Make a Multiprocessor Computer that correctly executes Multiprocess Programs,' IEEE Trans. on Computers, Vol C-28, No.9, pp.690-691, Sept. 1979 https://doi.org/10.1109/TC.1979.1675439
  6. C. Scheurich and M. Dubois, 'Correct Memory Operation of Cache-based Multiprocessors,' The 14th Intl. Symp. on Computer Architecture, pp.234-243, 1987 https://doi.org/10.1145/30350.30377
  7. Q. Yang, L. Bhuyan, and B. Liu, 'Analysis and Comparison of Cache Coherence Protocols for a Packet-Switched Multiprocessor,' IEEE Trans. on Comput, Vol.38, pp.1143-1154, Aug. 1989 https://doi.org/10.1109/12.30868
  8. M. H. MacDogall, 'Simulating Computer Systems : Techniques and Tools,' The MIT Press, 1987
  9. C. Thacker and L. Stewart, 'Firefly: A Multiprocessor Workstation,' Comput. Architecture News, Vol.15, pp.164-172, Oct. 1987 https://doi.org/10.1145/36177.36199
  10. E. McCreight, 'The Dragon Computer System: An early overview,' Xerox Tech. Rep., Xerox Corp., Sept. 1984
  11. M. Dubois, 'Cache Architectures in Tightly Coupled Multiprocessors,' IEEE Computer, pp.9-11, June, 1990 https://doi.org/10.1109/MC.1990.10053
  12. M. Dubois and F. Briggs, 'Effect of Cache Coherency in Multiprocessors,' IEEE Tran. on Computer, No.11, pp.1083-1099, Nov. 1982 https://doi.org/10.1109/TC.1982.1675925
  13. M. K. Vernon and E. D. Lazowska, 'An Accurate and Efficient Performance Analysis Technique for Multiprocessor Snooping Cache_Consistency Protocols,' In Proc. 15th, Ann. Intl. Symp. Comp. Archi. pp.308-316, 1988 https://doi.org/10.1109/ISCA.1988.5241
  14. J. Archibald and J. L. Bear, 'Cache Coherence Protocols: Evaluation Using a Multiprocessor Simulation Model,' Acm. Trans. Comput. Sys. Vol.4, pp.273-298, Nov. 1986 https://doi.org/10.1145/6513.6514
  15. D. Chaiken et al, 'Directory-Based Cache Coherence in Large-Scale Multiprocessor,' IEEE Computer, pp.49-57, June. 1990 https://doi.org/10.1109/2.55500
  16. Davor Magdic. Limes: A Multiprocessor simulation Environment for PC Platforms (http://galeb.etf.bg.ac.yu/~dav0r/limes)
  17. S. WOO, and J. Singh. The SPLASH2 Programs: Characterization and Methodological Considerations. In Proceedings of the 22nd Annual Int'l Symp. On Computer Architecture, 43-63, June, 1995 https://doi.org/10.1145/223982.223990
  18. Z. Vranesic, M. Stumm, D. Lewis and R. White, 'Hector : A hierarchically Structured Shared Memory Multiprocessor,' IEEE Computer, Vol.24, No.1, pp.72-78, January 1991 https://doi.org/10.1109/2.67196
  19. Kendall Square Research, 'Technical Summary,' Walthan, Massachusetts, 1992