- 【Updated on May 12, 2025】 Integration of CiNii Dissertations and CiNii Books into CiNii Research
- Trial version of CiNii Research Knowledge Graph Search feature is available on CiNii Labs
- 【Updated on June 30, 2025】Suspension and deletion of data provided by Nikkei BP
- Regarding the recording of “Research Data” and “Evidence Data”
ハイパフォーマンスアプリケーションにおけるC++ STLを用いたプログラミング
-
- GERLACH Jens
- Tsukuba Research Center of the Real World Computing Partnership
-
- SATO Mitsuhisa
- Tsukuba Research Center of the Real World Computing Partnership
-
- ISHIKAWA Yutaka
- Tsukuba Research Center of the Real World Computing Partnership
Bibliographic Information
- Other Title
-
- Using the C++ Standard Template Library for High Performance Applications
Search this article
Description
C++のANSI/ISOの標準として検討されているStandard Template Library(STL)は豊富なコンテナクラスとgenericなアルゴリズムを提供している。タイプ安全性と統一されたインタフェース、高レベルなメモリ管理機構がSTLコンテナの重要な特徴となっている。実際の使用に際しては、STLを用いた時の効率が重要になる.本稿では、例として、粒子シミュレーションのコードを取り上げ、様々コンテナクラスを用いた実装における実行時間の比較を異なるCPUといくつかのコンパイラの組合せで行い、STLコンテナを使って、粒子をトラバースするオーバーヘッドについて調べた。その結果、我々の例では、使用するSTLにもよるが、10不規則または動的にデータが変化するアプリケーションではプログラミングが容易になり、十分に考慮に値するものといえる.
The Standard Template Library (STL) of the forthcoming ANSI/ISO Standard of the C++ programming language offers a wealth of generic containers and algorithms. Type safety, a uniform interface, and a higher-level memory management are main aspects of STL containers. Efficiency was a basic constraint in the design of its containers and algorithms. Using the STL in reality has to prove that it can be efficiently applied to problems from the domain of High Performance Computing. As an example we consider the integration procedures of a particle simulation method. We compare the execution time of different implementations. To investigate the overhead, we measure the time it takes to traverse different types of containers while performing numerical methods on each of their elements. We compare an implementation that uses C arrays with a more object-based programming style that represents the particles by a C++ Class and replace the array by various STL containers. The results show that depending on the used STL container the overhead of the object-based programming style ranges from 10% to 50%. Therefore we recommend considering the STL when irregular or dynamic numerical problems have to be implemented.
Journal
-
- IPSJ SIG Notes
-
IPSJ SIG Notes 66 19-24, 1997-05-09
Information Processing Society of Japan (IPSJ)
- Tweet
Details 詳細情報について
-
- CRID
- 1573950401966124672
-
- NII Article ID
- 110002932021
-
- NII Book ID
- AN10463942
-
- Text Lang
- en
-
- Data Source
-
- CiNii Articles