General atomic and molecular electronic structure system
Journal of Computational Chemistry
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
A scalable cross-platform infrastructure for application performance tuning using hardware counters
Proceedings of the 2000 ACM/IEEE conference on Supercomputing
High Performance Remote Memory Access Communication: The Armci Approach
International Journal of High Performance Computing Applications
Developing Scientific Applications Using Eclipse
Computing in Science and Engineering
Multicore challenges and benefits for high performance scientific computing
Scientific Programming - Complexity in Scalable Computing
PerfExpert: An Easy-to-Use Performance Diagnosis Tool for HPC Applications
Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis
Communications of the ACM
Automatic MPI to AMPI program transformation using photran
Euro-Par 2010 Proceedings of the 2010 conference on Parallel processing
Performance Optimization of Data Structures Using Memory Access Characterization
CLUSTER '11 Proceedings of the 2011 IEEE International Conference on Cluster Computing
Parallel Performance Measurement of Heterogeneous Parallel Systems with GPUs
ICPP '11 Proceedings of the 2011 International Conference on Parallel Processing
Effective source-to-source outlining to support whole program empirical optimization
LCPC'09 Proceedings of the 22nd international conference on Languages and Compilers for Parallel Computing
Hi-index | 0.00 |
Computational chemistry codes such as GAMESS and MPQC have been under development for several years and are constantly evolving to include new science and adapt to new high performance computing (HPC) systems. Our work with these codes has given rise to two needs. One is to refactor the codes so that it is easier to optimize them. After profiling has identified performance critical regions, refactoring to outline those regions into separate routines facilitates performance tuning and porting to complex heterogeneous HPC architectures. The second need is for automated performance tuning. Because of the large number of both fine-grained and coarse-grained parameters for tuning performance on complex hierarchical and hybrid architectures, the search space for an optimal set of parameters becomes very large. This paper describes initial results on using refactoring tools to restructure MPQC and GAMESS and on using automated tools to tune performance on multicore and manycore architectures.