Cache Performance Analysis of Multiprocessor Systems for OLTP Applications based on a Memory-Resident DBMS

메모리 상주 DBMS 기반의 OLTP 응용을 위한 다중프로세서 시스템 캐쉬 성능 분석

  • 정용화 (한국전자통신연구원 컴퓨터시스템연구부) ;
  • 한우종 (한국전자통신연구원 컴퓨터시스템연구부) ;
  • 윤석한 (한국전자통신연구원 컴퓨터시스템연구부) ;
  • 박진원 (영산대학교 컴퓨터정보공학부) ;
  • 이강우 (동국대학교 컴퓨터정보통신학부) ;
  • 김양우 (동국대학교 컴퓨터정보통신학부)
  • Published : 2000.08.31

Abstract

Currently, multiprocessors are evaluated almost exclusively with scientific applications. Commercial applications are rarely explored because it is difficult to obtain the source codes of commercial DBMS. Even when the source code is available, such as for POSTGRES, understanding the source code enough to perform detailed meaningful performance evaluations is a daunting task for computer architects.To evaluate multiprocessors with commercial applications, we have developed our own DBMS, called EZDB. EZDB is a parallelized DBMS, loosely inspired from POSTGRES, and running on top of a software architecture simulator. It is capable of executing parallel programs written in SQL. Contrary to POSTGRES, EZDB is not intended as a prototype for a production-quality DBMS. Its purpose is to easily run and evaluate the performance of commercial applications on multiprocessor architectures. To illustrate the usefulness of EZDB, we showed the cache performance data collected for the TPC-B benchmark on a shared-memory multiprocessor. The simulation results showed that the data structures exhibited unique sharing characteristics and that their locality properties and working sets were very different from those in scientific applications.

다중프로세서 시스템에 대한 대부분의 기존 연구는 과학계산용 응용을 중심으로 수행되어 왔으며, 또 다른 응용 분야인 상용 응용을 이용한 연구는 아직까지 초보 단계에 머물고 있는 실정이다. 이는 상용 DBMS의 소스 프로그램을 액세스하기가 쉽지 않으며, POSTGRES와 같은 공개된 소스 프로그램을 액세스 할 수 있더라도 컴퓨터 구조 설계자가 수십만 라인의 그 소스 프로그램을 이해하여 의미있는 성능분석을 수행하기는 사실상 불가능하기 때문이다. 본 연구에서는 상용 응용을 이용하여 다중프로세서 시스템을 분석하기 위하여, SQL로 작성된 병렬 프로그램을 아키텍처 시뮬레이터 상에서 수행할 수 있는 EZDB라는 병렬 DBMS를 자체 개발하였다. EZDB가 POSTGRES와 다른점은 그 목적이 다중프로세서 시스템에서 상용 응용을 수행시키고 그 성능을 쉽게 분석할 수 있다는 점이다. EZDB의 유용함을 확인하기 위해, 본 논문에서는 다중프로세서 시스템에서 TPC-B 작업부하를 수행시켰을 때의 캐쉬 성능을 분석한다. 구축된 작업부하를 기반으로 프로그램 구동 시뮬레이션을 수행한 결과, 상용 응용에서 데이터 구조의 공유 특성이 매우 특별하며 국부성 및 작업 세트가 과학계산 응용의 경우와 매우 상이함을 확인하였다.

Keywords

References

  1. D. Culler, J. Singh, and A. Gupta, Parallel Computer Architecture : A Hardware/Software Approach, Morgan Kaufmann, Pub., 1998
  2. J. Singh, W. Weber, and A. Gupta, 'SPLASH: Stanford Parallel Applications for Shared Memory,' Computer Architecture News, Vol. 20, No. 1, pp. 5-44, 1992
  3. C. Wang, C. Wang, and K. Hwang, 'STAP Benchmark Evaluation of Three Massively Parallel Processors,' Proc. of Int'l Conf. on Parallel and Distributed Computing Systems, 1997
  4. M. Stonebraker, L. Rowe, and M. Hirohama, 'The Implementation of POSTGRES,' IEEE Tr. on Knowledge and Data Engineering, Vol. 2, pp. 125-142, 1990
  5. First Workshop on Computer Architecture Evaluation using Commercial Workloads, HPCA-4, 1998
  6. W. Hahn, et al., 'Evaluation of a Cluster-Based System for the OLTP Application,' ETRI Journal, Vol. 20, No. 4, pp. 301-326, 1998
  7. L. Barroso, K. Gharachorloo, and E. Bugnion, 'Memory System Characterization of Commercial Workloads,' Proc. of Int'l Symp. on Computer Architecture, 1998 https://doi.org/10.1109/ISCA.1998.694758
  8. P. Trancoso, et al., 'The Memory Performance of DSS Commercial Workloads,' Proc. of Int'l Symp. On High-Performance Computer Architecture, 1997 https://doi.org/10.1109/HPCA.1997.569680
  9. H. Garcia-Molina and K. Salem, 'Main Memory Database Systems: An Overview,' IEEE Tr. on Knowledge and Data Engineering, Vol. 4, No. 6, pp. 185-202, 1992 https://doi.org/10.1109/69.180602
  10. J. Gray, The Benchmark Handbook for Database and Transaction Processing Systems, Morgan Kaufmann, Pub., 1993
  11. J. Nilsson and F. Dahlgren, 'Improving Performance of Load-Store Sequences for Transaction Processing Workloads on Multiprocessors,' Proc. of Int'l Conf. On Parallel Processing, pp. 246-255, 1999 https://doi.org/10.1109/ICPP.1999.797410
  12. J. Boyle, et al., Portable Programs for Parallel Processors, Holt, Rinehart, and Winston, Inc., 1987
  13. M. Brorsson, et al., 'The CacheMire Test Bench A Flexible and Effective Approach for Simulation of Multiprocessors,' Proc. of Int'l Simulation Symp., pp. 41-49, 1993
  14. D. Suggs and R. Reynolds, 'Constructing Multiprocessor Workload Characterizations,' Proc. of ACM Annual Southeast Conf., pp. 3-12, 1995 https://doi.org/10.1145/1122018.1122020