Hendricks A (2025)
Publication Type: Conference contribution
Publication year: 2025
Publisher: Association for Computing Machinery, Inc
Pages Range: 1009-1016
Conference Proceedings Title: Proceedings of 2025 Workshops of the International Conference on High Performance Computing, Network, Storage, and Analysis, SC 2025 Workshops
Event location: St. Louis, MO, USA
ISBN: 9798400718717
Modern HPC runtime systems increasingly rely on sophisticated C++ template metaprogramming to achieve zero-cost abstractions and type safety. This paper presents lessons learned from implementing the AllScale runtime system, a production HPC framework that makes extensive use of variadic templates, SFINAE, and template specialization for distributed data management. Through analysis of our template-heavy architecture for data items, automatic serialization, and type-safe requirement systems, we identify key challenges, performance implications, and best practices for template metaprogramming in HPC contexts. Our findings show that careful template design can maintain compile-time performance while enabling zero-cost abstractions that achieve 92-105% of hand-tuned MPI performance. We provide concrete recommendations for managing template complexity, compilation overhead, and debugging challenges in production HPC systems.
APA:
Hendricks, A. (2025). Lessons Learned: Template-Heavy C++ in Production HPC Runtime Systems. In Proceedings of 2025 Workshops of the International Conference on High Performance Computing, Network, Storage, and Analysis, SC 2025 Workshops (pp. 1009-1016). St. Louis, MO, USA: Association for Computing Machinery, Inc.
MLA:
Hendricks, Arne. "Lessons Learned: Template-Heavy C++ in Production HPC Runtime Systems." Proceedings of the 2025 Workshops of the International Conference on High Performance Computing, Network, Storage, and Analysis, SC 2025 Workshops, St. Louis, MO, USA Association for Computing Machinery, Inc, 2025. 1009-1016.
BibTeX: Download