Design and Performance Analysis of Segment Directory Method for Multiprocessor Systems

다중 프로세서 시스템을 위한 세그먼트 디렉토리 방식의 설계 및 성능 분석

  • Choe, Jong-Hyeok ;
  • Lee, Chang-Gyu (Dept. of Electronic Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Park, Gyu-Ho (Dept. of Electronic Computer Science, Korea Advanced Institute of Science and Technology)
  • 최종혁 (LG종합기술원 시스템IC센터) ;
  • 이창규 (한국과학기술원 전자전산학과) ;
  • 박규호 (한국과학기술원 전자전산학과)
  • Published : 2000.11.01

Abstract

본 논문에서 우리는 전체 벡터 디렉토리와 포인터 디렉토리의 중간 형태를 가지는 새로운 디렉토리인 세그먼트 디렉토리를 제안한다. 이는 대부분의 포인터 기반 디렉토리 방법들에서 디렉토리 저장 효율을 높이기 위하여 사용될 수 있다. 포인터가 단지 하나의 프로세서만을 가리키는 데 비하여, 세그먼트 디렉토리 요소는 포인터와 거의 같은 수의 비트들을 가지고 여러 개의 프로세서들을 동시에 가리킬 수 있다. 본 논문에서는, 세그먼트 디렉토리를 기존의 네 가지 한정 디렉토리 방법들에 적용하고, 이렇게 얻은 성능 개선을 측정, 분석하였다. 세그먼트 디렉토리는 한정 디렉토리 방법들의 성능을 저하시키는 요인인 디렉토리 넘침을 71% 까지 제거시킴으로써, 이 네 가지 방법들 상에서 수행된 모든 벤치마크 프로그램들에 대해 대역폭 요구량과 디렉토리 제어기 점유도, 메모리 접근 지연을 감소시켜서 프로그램의 수행을 가속시켰다. 게다가, 세그먼트 디렉토리는 추가적인 하드웨어 부담이나 프로토콜 복잡도 없이 간단하게 구현될 수 있다.

Keywords

References

  1. Archibald, J. K. and Baer, J.-L., 'Cache coherence protocols: Evaluation using a multiprocessor simulation model,'ACM Trans. on Computer Systems, Vol.4, No.4, pp. 273-298, 1986 https://doi.org/10.1145/6513.6514
  2. Tomasevic, M. and Milutinovic, V., 'Hardware Approaches to Cache Coherence in Shared-Memory Multiprocessors: Part 1, ' IEEE Micro, vol. 14, no. 5, pp. 52-59, Oct. 1994 https://doi.org/10.1109/MM.1994.363067
  3. Tomasevic, M. and Milutinovic, V., 'Hardware Approaches to Cache Coherence in Shared-Memory Multiprocessors: Part 2,' IEEE Micro, vol. 14, no. 6, pp. 61-66, Dec. 1994 https://doi.org/10.1109/40.331392
  4. Censier, L. M. and Feautrier, P., 'A New Solution to Coherence Problems in Multicache Systems,' IEEE Trans. on Computers, Vol.C-27, No.12, pp. 1112-1118, 1978 https://doi.org/10.1109/TC.1978.1675013
  5. Agarwal, A., Simoni, R., Hennessy, J., and Horowitz, M., 'An Evaluation of Directory Schemes Cache Coherence,' in Proc. 15th Int'l Symposium on Computer Architecture, pp. 280-289, 1988 https://doi.org/10.1109/ISCA.1988.5238
  6. Gupta, A., Weber, W.-D., and Mowry, T., 'Reducing Memory and Traffic Requirements for Scalable Directory-Based Cache Coherence Schemes,' in Proc. 1990 Int'l Conference on Parallel Processing, pp. I.312-I.321, 1990
  7. Chaiken, D., Kubiatowicz, J., and Agarwal, A., 'LimitLESS Directories: A Scalable Cache Coherence Schemes,' in Proc. 4th Int'l Conference on Architectural Support for Programming Languages and Operating Systems, pp. 224-234, 1991 https://doi.org/10.1145/106972.106995
  8. James, D. V., Laundrie, A. T., Gjessing, S., and Sohi, G. S., 'Scalable Coherent Interface,' IEEE Computer, Vol.23, No.6, pp. 74-77, June 1990 https://doi.org/10.1109/2.55503
  9. Choi, J. H. and Park, K. H., 'Segment Directory : An Improvement to the Pointer in Directory Cache Coherence Schemes,' in Parallel Processing Letters, vol. 8, No. 4, pp. 577-588, Dec. 1998 https://doi.org/10.1142/S0129626498000572
  10. Choi, J. H. and Park, K. H., 'Segment Directory Enhancing the Limited Directory Cache Coherence Schemes,' in Proc. of the Merged Symposium of the 13th Int'l Parallel Processing Symposium & the 10th Symposium on Parallel and Distributed Processing, pp. 258-267, Apr. 1999
  11. Simoni, R., and Horowitz, M., 'Dynamic Pointer Allocation for Scalable Cache Coherence Directories,' in Proc. Int'l Symposium on Shared Memory Multiprocessing, pp. 72-81, 1991
  12. Agarwal, A., Bianchini, R., Chaiken, D., Johnson, K. L., Kranz, D., Kubiatowicz, J., Lim, B.-H., Mackenzie, K., and Yeung, D., 'The MIT Alewife machine : Architecture and performance,' in Proc. 22nd Annual Int'l Symposium on Computer Architecture, pp. 2-13, 1995 https://doi.org/10.1145/223982.223985
  13. Simoni, R., 'Cache Coherence Directories for Scalable Multiprocessors,' Ph. D. Thesis, Staford University, 1995
  14. Covington, R. G., Dwarkadas, J. R., Jump, J. R., Sinclair J. B., and Madala S., 'Efficient Simulation of Parallel Computer Systems,' Int. Journal in Computer Simulation, Vol. 1, No. 1, pp. 31-58, 1991
  15. Goldschmidt, S., 'Simulation of multiprocessors : Accuracy and performance,' Ph. D. Thesis, Stanford University, 1993
  16. Agarwal, A., 'Limits on Interconnection Network Performance,' IEEE Trans. on Parallel and Distributed Systems, Vol.2, No.4, pp. 398-412, 1991 https://doi.org/10.1109/71.97897
  17. Woo, S. C., Ohara, M., Torrie, E., Singh J. P., and Gupta, A., 'The SPLASH-2 Programs: Characterization and Methodological Considerations,' in Proc. 22nd Int'l Symposium on Computer Architecture, pp. 24-36, 1995
  18. Scheurich, C. and Dubois, M., 'Correct memory operation of cache-based multiprocessors,' in Proc. 14th Annual Int'l Symposium on Computer Architecture, pp. 234-243, 1987 https://doi.org/10.1145/30350.30377
  19. Kuskin, J., Ofelt, D., Heinrich, M., Heinlein, J., Simoni, R., Gharachorloo, K., Chapin, J., Nakahira, D., Baxter, J., Horowitz, M., Gupta, A., Rosenblum, M., and Hennessy, J., 'The Stanford FLASH Multiprocessor,' in Proc. 21st Annual Int'l Symposium on Computer Architecture, pp. 302-313, 1994 https://doi.org/10.1145/191995.192056