Evaluating Cache Coherence in the DSMIO System
Resumo
There has been a significant amount of research on object-based database management systems (ODBMS). In contrast to traditional relational systems, ODBMS use the same data model for the clients and the server. Thus, parallel ODBMS typically adopt a data-shipping architecture, which allows data request processing to be performed at the clients. Although such a strategy can improve performance by moving data closer to clients and by alleviating the load on the server, it raises the issue of cache coherence. Our work is based on the observation that coherence maintenance techniques developed to improve software-based distributed shared-memory systems can be exploited to improve parallel ODBMS. In previous papers we proposed a coherence algorithm, called DSMIO, that uses the Lazy Release Consistency model and the diffing mechanism to limit the number and size of coherence and messages and save cache space. These papers evaluated DSMIO in the context of a parallel object-based database system where one machine acted as a server, accessing stable storage and keeping client caches coherent. In this paper we evaluate DSMIO for a system where each machine can act both as a client and a server. We use the state-of-the-art CallBack Locking (CBL) cache coherence algorithm as a basis for comparison. Our results show that DSMIO significantly outperforms CBL for workloads with even a moderately high frequency of database updates.
Palavras-chave:
Client-Server OODBMS, Parallel Database Systems, Cache Coherence, Distributed Shared Memory
Referências
S. V. Adve and K. Gharachorloo. Shared Memory Consistency Models: A Tutorial. IEEE Computer, December 1996.
A. Agarwal, R. Bianchini, D. Chaiken, K. Johnson, D. Kranz, J. Kubiatowicz, B-H. Lim, K. Mackenzie, and D. Yeung. The MIT Alewife Machine: Architecture and Performance. In Proceedings of the 22nd Annual International Symposium on Computer Architecture, pages 2–13, June 1995.
M. J. Carey, D. J. DeWitt, and J. F. Naughton. The O07 Benchmark. In Proceedings of the ACM SIGMOD International Conference on Management of Data, pp. 12–21, 1993.
M. J. Carey, M. J. Franklin, and M. Zaharioudakis. Fine-Grained Sharing in a Page Server OODBMS. In Proceedings ACM SIGMOD Conference, 1990.
R. Cattell. The Object Database Standard: ODMG-3.0. Morgan Kaufmann Publisher, 2000.
M. J. Franklin and M. J. Carey. Client-Server Caching Revisited. Technical Report 1089, Computer Science Department, University of Wisconsin-Madison, May 1992.
M. J. Franklin, M. J. Carey, and M. Livny. Transactional Client-Server Cache Consistency: Alternatives and Performance. In ACM Transactions on DataBase Systems, Sept. 1997.
K. Gharachorloo, D. E. Lenoski, J. Laudon, P. Gibbons, A. Gupta, and J. L. Hennessy. Memory Consistency and Event Ordering in Scalable Shared-Memory Multiprocessor. In Proceedings of the 17th International Symposium on Computer Architecture, May 1990.
P. Keleher, A. L. Cox, and W. Zwaenepoel. Lazy Release Consistency for Software Distributed Shared Memory. In Proceedings of the 19th International Symposium on Computer Architecture, May 1992.
P. Keleher, S. Dwarkadas, A. L. Cox, and W. Zwaenepoel. TreadMarks: Distributed Shared Memory on Standard Workstations and Operating Systems. In Proceedings of the 1994 Winter USENIX Conference, January 1994.
A. Martin. PostgreSQL Home Page: [link]
M. L. Q. Mattoso. Aspectos de Paralelismo na Gerência de Dados e Objetos no GEOTABA. In Tese de D.Sc, COPPE/UFRJ, RJ Brasil, 1993.
L. R. Monnerat and R. Bianchini. Efficiently Adapting to Sharing Patterns in Software DSMs. In Proceedings of the 4th IEEE Symposium on High-Performance Computer Architecture (HPCA-4), February 1998.
C. Morin and I. Puaut. A Survey of Recoverable Distributed Shared Virtual Memory Systems. In IEEE Transactions on Parallel and Distributed Systems, Sept. 1997.
C. Osthoff, M. Mattoso, C. Seidel, R. Bianchini and C. L. Amorim. Avaliação do Algoritmo de Coerência de Cache de Disco DSMIO.
C. Osthoff. Proposta e Avaliação de Mecanismos de Software de Memória Compartilhada Distribuída para E/S Paralela. In Tese de D.Sc, COPPE/UFRJ, RJ Brasil, 2000.
C. Osthoff, R. Bianchini, M. Mattoso, C. Seidel, and C. L. Amorim. Explorando Conceitos e Mecanismos de Memória Compartilhada Distribuída em E/S Paralela. In Proceedings of XV Brazilian Symposium on Computer Architecture, October 1999.
M. Ozsu, K. Voruganti, and R. Unrau. An Asynchronous Avoidance-Based Cache Consistency Algorithm for Client Caching DBMSs. In Proceedings of the 24th Very Large DataBases Conference, 1998.
T. Parker and A. Cox. I/O-Oriented Applications on a Software Distributed-Shared Memory System. Master of Science Thesis – Computer Science Dept, Rice University, 1999.
A. Purrakaystha, C. Ellis, D. Kotz, N. Nieuwejaar, and M. Best. Characterizing Parallel File-Access Patterns on a Large-Scale Multiprocessor. In Proceedings of the International Parallel Processing Symposium, April 1995.
C. B. Seidel, R. Bianchini, and C. L. Amorim. The Affinity Entry Consistency Protocol. In Proceedings of the 1997 International Conference on Parallel Processing (ICPP’97), August 1997.
D. Scales and K. Gharachorloo. Towards transparent and efficient software distributed shared memory. In Proceedings of the 16th ACM Symposium on Operating System Principles, Oct. 1997.
D. Scales, K. Gharachorloo and C. Thekkath. Shasta: A low overhead, software-only approach for supporting fine-grain shared memory. In Technical Report 96/2, Western Research Laboratory, Compaq Corporation, 1996.
O2 TECHNOLOGY. In The O2 System Administration Guide, Version 4.5, 1995.
K. Voruganti, M. Ozsu, and R. Unrau. An Adaptive Hybrid Server Architecture for Client-Caching Object DBMS. In Proceedings of the 25th Very Large DataBases Conference, 1999.
A. Agarwal, R. Bianchini, D. Chaiken, K. Johnson, D. Kranz, J. Kubiatowicz, B-H. Lim, K. Mackenzie, and D. Yeung. The MIT Alewife Machine: Architecture and Performance. In Proceedings of the 22nd Annual International Symposium on Computer Architecture, pages 2–13, June 1995.
M. J. Carey, D. J. DeWitt, and J. F. Naughton. The O07 Benchmark. In Proceedings of the ACM SIGMOD International Conference on Management of Data, pp. 12–21, 1993.
M. J. Carey, M. J. Franklin, and M. Zaharioudakis. Fine-Grained Sharing in a Page Server OODBMS. In Proceedings ACM SIGMOD Conference, 1990.
R. Cattell. The Object Database Standard: ODMG-3.0. Morgan Kaufmann Publisher, 2000.
M. J. Franklin and M. J. Carey. Client-Server Caching Revisited. Technical Report 1089, Computer Science Department, University of Wisconsin-Madison, May 1992.
M. J. Franklin, M. J. Carey, and M. Livny. Transactional Client-Server Cache Consistency: Alternatives and Performance. In ACM Transactions on DataBase Systems, Sept. 1997.
K. Gharachorloo, D. E. Lenoski, J. Laudon, P. Gibbons, A. Gupta, and J. L. Hennessy. Memory Consistency and Event Ordering in Scalable Shared-Memory Multiprocessor. In Proceedings of the 17th International Symposium on Computer Architecture, May 1990.
P. Keleher, A. L. Cox, and W. Zwaenepoel. Lazy Release Consistency for Software Distributed Shared Memory. In Proceedings of the 19th International Symposium on Computer Architecture, May 1992.
P. Keleher, S. Dwarkadas, A. L. Cox, and W. Zwaenepoel. TreadMarks: Distributed Shared Memory on Standard Workstations and Operating Systems. In Proceedings of the 1994 Winter USENIX Conference, January 1994.
A. Martin. PostgreSQL Home Page: [link]
M. L. Q. Mattoso. Aspectos de Paralelismo na Gerência de Dados e Objetos no GEOTABA. In Tese de D.Sc, COPPE/UFRJ, RJ Brasil, 1993.
L. R. Monnerat and R. Bianchini. Efficiently Adapting to Sharing Patterns in Software DSMs. In Proceedings of the 4th IEEE Symposium on High-Performance Computer Architecture (HPCA-4), February 1998.
C. Morin and I. Puaut. A Survey of Recoverable Distributed Shared Virtual Memory Systems. In IEEE Transactions on Parallel and Distributed Systems, Sept. 1997.
C. Osthoff, M. Mattoso, C. Seidel, R. Bianchini and C. L. Amorim. Avaliação do Algoritmo de Coerência de Cache de Disco DSMIO.
C. Osthoff. Proposta e Avaliação de Mecanismos de Software de Memória Compartilhada Distribuída para E/S Paralela. In Tese de D.Sc, COPPE/UFRJ, RJ Brasil, 2000.
C. Osthoff, R. Bianchini, M. Mattoso, C. Seidel, and C. L. Amorim. Explorando Conceitos e Mecanismos de Memória Compartilhada Distribuída em E/S Paralela. In Proceedings of XV Brazilian Symposium on Computer Architecture, October 1999.
M. Ozsu, K. Voruganti, and R. Unrau. An Asynchronous Avoidance-Based Cache Consistency Algorithm for Client Caching DBMSs. In Proceedings of the 24th Very Large DataBases Conference, 1998.
T. Parker and A. Cox. I/O-Oriented Applications on a Software Distributed-Shared Memory System. Master of Science Thesis – Computer Science Dept, Rice University, 1999.
A. Purrakaystha, C. Ellis, D. Kotz, N. Nieuwejaar, and M. Best. Characterizing Parallel File-Access Patterns on a Large-Scale Multiprocessor. In Proceedings of the International Parallel Processing Symposium, April 1995.
C. B. Seidel, R. Bianchini, and C. L. Amorim. The Affinity Entry Consistency Protocol. In Proceedings of the 1997 International Conference on Parallel Processing (ICPP’97), August 1997.
D. Scales and K. Gharachorloo. Towards transparent and efficient software distributed shared memory. In Proceedings of the 16th ACM Symposium on Operating System Principles, Oct. 1997.
D. Scales, K. Gharachorloo and C. Thekkath. Shasta: A low overhead, software-only approach for supporting fine-grain shared memory. In Technical Report 96/2, Western Research Laboratory, Compaq Corporation, 1996.
O2 TECHNOLOGY. In The O2 System Administration Guide, Version 4.5, 1995.
K. Voruganti, M. Ozsu, and R. Unrau. An Adaptive Hybrid Server Architecture for Client-Caching Object DBMS. In Proceedings of the 25th Very Large DataBases Conference, 1999.
Publicado
24/10/2000
Como Citar
OSTHOFF, Carla; SEIDEL, Cristiana; BIANCHINI, Ricardo; MATTOSO, Marta; AMORIM, Claudio L..
Evaluating Cache Coherence in the DSMIO System. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 12. , 2000, São Pedro/SP.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2000
.
p. 73-80.
DOI: https://doi.org/10.5753/sbac-pad.2000.41206.
