会议论文详细信息
20th International Conference on Computing in High Energy and Nuclear Physics
Improving robustness and computational efficiency using modern C++
物理学;计算机科学
Paterno, M.^1 ; Kowalkowski, J.^1 ; Green, C.^1
Scientific Computing Division, Fermi National Accelerator Laboratory, Batavia
IL, United States^1
关键词: Assembly language;    C++ codes;    Computationally efficient;    Costs and benefits;    Executable codes;    Informed decision;    International standards;    ISO/IEC;   
Others  :  https://iopscience.iop.org/article/10.1088/1742-6596/513/5/052026/pdf
DOI  :  10.1088/1742-6596/513/5/052026
学科分类:计算机科学(综合)
来源: IOP
PDF
【 摘 要 】

For nearly two decades, the C++ programming language has been the dominant programming language for experimental HEP. The publication of ISO/IEC 14882:2011, the current version of the international standard for the C++ programming language, makes available a variety of language and library facilities for improving the robustness, expressiveness, and computational efficiency of C++ code. However, much of the C++ written by the experimental HEP community does not take advantage of the features of the language to obtain these benefits, either due to lack of familiarity with these features or concern that these features must somehow be computationally inefficient. In this paper, we address some of the features of modern C+-+, and show how they can be used to make programs that are both robust and computationally efficient. We compare and contrast simple yet realistic examples of some common implementation patterns in C, currently-typical C++, and modern C++, and show (when necessary, down to the level of generated assembly language code) the quality of the executable code produced by recent C++ compilers, with the aim of allowing the HEP community to make informed decisions on the costs and benefits of the use of modern C++.

【 预 览 】
附件列表
Files Size Format View
Improving robustness and computational efficiency using modern C++ 710KB PDF download
  文献评价指标  
  下载次数:118次 浏览次数:57次