The SGI Origin: a ccNUMA highly scalable server
Proceedings of the 24th annual international symposium on Computer architecture
Performance analysis using the MIPS R10000 performance counters
Supercomputing '96 Proceedings of the 1996 ACM/IEEE conference on Supercomputing
The C++ Programming Language, Third Edition
The C++ Programming Language, Third Edition
User-Extensible SimplificationType-Based Optimizer Generators
CC '01 Proceedings of the 10th International Conference on Compiler Construction
Expression Templates Revisited: A Performance Analysis of Current Methodologies
SIAM Journal on Scientific Computing
C2FPGA-A dependency-timing graph design methodology
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
Ever-increasing size and complexity of software applications and libraries in parallel scientific computing is making implementation in the programming languages traditional for this field--FORTRAN 77 and C--impractical. The major impediment to the progression to a higher-level language such as C++ is attaining FORTRAN 77 or C performance, which is considered absolutely necessary by many practitioners. The use of template metaprogramming in C++, in the form of so-called expression templates to generate custom C++ code, holds great promise for getting C performance from C++ in the context of operations on array-like objects. Several sophisticated expression template implementations of parallel array-class libraries exist, and in certain circumstances their promise of performance is realized. Unfortunately this is not uniformly the case; this paper explores the major reasons for this. A more complete version of this paper may be obtained from http://www.c3.lanl.gov/~kei/ipps98.html.