Skip to main content

Design of high-performance C++ package for handling of multidimensional histograms

  • Track C2: Computational Science
  • Conference paper
  • First Online:
High-Performance Computing and Networking (HPCN-Europe 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1593))

Included in the following conference series:

  • 85 Accesses

Abstract

This paper evaluates different object-oriented models and design techniques for development of high-performance numerical C++ software to handle multidimensional data. Two fundamental approaches are considered: the classical inheritance driven class hierarchy and the static polymorphism techniques. The inheritance driven approach exhibits intrinsic drawbacks, whilst static polymorphism techniques based on traits may significantly increase the efficiency and extensibility of the design. In the paper, a special attention is given to the analysis of efficiency and extensibility of the proposed solutions in ODBMS environment. As the result of this reaserch the Hist OOgrams Package has been developed at CERN as a part of LHC++ environment. The results of this study may be helpful in object-oriented design of other numerical packages.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Status Report of the LHC++Project. http://wwwinfo.cern.ch/asd/lhc++/sr98/index.html

    Google Scholar 

  2. Object Database Management Group: The Object Database Standard: ODMG-93, Release 1.2 Morgan Kaufmann Publishers, ISBN 0-201-63398-1

    Google Scholar 

  3. ANSI/ISO C++ Standard. http://webstore.ansi.org/AnsiDocStore

    Google Scholar 

  4. Musser, D.R., Saini, A.: STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library. Addison Wesley, ISBN 0-201-63398-1.

    Google Scholar 

  5. High Performance C++.http://www.extreme.indiana.edu/hpc

    Google Scholar 

  6. Blitz++-a C++ library for scientific computing. http://monet.uwaterloo.ca/blitz/

    Google Scholar 

  7. Template Numerical Toolkit (TNT). http://math.nist.gov/tnt/

    Google Scholar 

  8. Veldhuizen, T.L., Jernigan, M.E.: Will C++ be faster than Fortran? In: Proceedings of the 1st International Scientific Computing in Object Oriented Parallel Environments (ISCOPE'97).

    Google Scholar 

  9. Myers, N.C.: Traits: a new and useful template technique. In: C++ Report, June 1995

    Google Scholar 

  10. Objectivity/DB, Objectivity Inc., www.objectivity.com

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Peter Sloot Marian Bubak Alfons Hoekstra Bob Hertzberger

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag

About this paper

Cite this paper

Bubak, M., Mościcki, J.T., Shiers, J. (1999). Design of high-performance C++ package for handling of multidimensional histograms. In: Sloot, P., Bubak, M., Hoekstra, A., Hertzberger, B. (eds) High-Performance Computing and Networking. HPCN-Europe 1999. Lecture Notes in Computer Science, vol 1593. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0100615

Download citation

  • DOI: https://doi.org/10.1007/BFb0100615

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65821-4

  • Online ISBN: 978-3-540-48933-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics