![]() |
|
||||||
| Home
| Mission
|
about SciDAC
|
Contact Us |
||||||
Alumni ProjectPERC Collaborations with SciDAC Scientific Projects PI: SummaryIn support of SciDAC computational science projects, the Performance Evaluation Research Center (PERC) includes outreach activities. These activities accelerate both the development of SciDAC application codes that run efficiently on high performance computing systems and PERC research in performance tools, modeling, and optimization. Close collaborations with the SciDAC computational science projects and with other Integrated Software Infrastructure Centers (ISICs) are vital to the success of the PERC research agenda. These collaborations provide motivation and feedback for PERC researchers, and assure the relevance of the research to the goal of improving the performance of SciDAC application codes on high performance computing (HPC) systems. The collaborations also enable PERC to contribute directly to the computational science projects, accelerating progress in achieving science goals. Numerous mechanisms exist for SciDAC computational science projects to learn about and exploit PERC capabilities. • Performance tools, papers, and results are freely available from the PERC web site http://perc.nersc.gov . • Tutorials are offered describing both evaluation and optimization methodologies and how to use the performance tools. • Presentations on PERC research are made at national meetings and at SciDAC computational science project meetings. For certain SciDAC projects, PERC also assigns one or more liaisons to work closely with the project. The form of interaction varies with the computational science project, but typical activities include: • Application benchmarks . Application codes and problem specifications are identified that can be used as performance benchmarks. These codes represent the computational needs of the science project. Application teams can utilize the analyses and optimization of these codes to improve the performance or accelerate the development of the production scientific codes. • Application benchmarking . Performance data are collected and analyzed from runs of the benchmark codes on HPC systems. These data are used to determine what computer resources or performance improvements are needed to achieve the science goals. • Optimization . Performance tools are used to identify performance bottlenecks. The liaisons then work with the application developers to determine how performance can be improved. • Modeling . Performance models of the application benchmarks are generated, to predict performance for different problem specifications or HPC systems. These liaisons also further PERC research with the following activities: • Kernel benchmarks . Full application codes are often too large for tools or techniques in early development. The identification and extraction of representative kernels from the full application codes allows PERC researchers to base their work on relevant examples. • Tool evaluation . The liaisons use the latest versions of the PERC performance tools on the application and kernel benchmarks, reporting successes and problems to the tool developers. • Technology transfer . These liaisons also ensure that performance results and performance tuning methodoloeis generated within PERC are communicated back to the computational science projects. A typical example is the collaboration between PERC and the SciDAC project “Collaborative Design and Development of the Community Climate System Model for Terascale Computers” (www.osti.gov/scidac/ber/projects/malone.html). PERC collaboration with this project has focused on benchmarking and performance analysis. PERC worked with the developers to package and release benchmark versions of the Community Atmospheric Model (CAM) and the Parallel Ocean Program (POP), the atmosphere and ocean components of CCSM. These have been used in extensive benchmarking activities. PERC collected performance data that determined the prioritization of the performance optimization efforts within the computational science project, motivating the performance improvements in CAM displayed in Figure 1. These improvements, which include load balanced parallel decompositions, addition of OpenMP threading and improved interprocessor communication algorithms in the dynamics and the land submodels, significantly improved the code's scalability as well as doubling performance at 64 processors.
PERC has continued to be instrumental in the performance optimization of the CCSM components as problem resolutions increase and new physics are added in preparation for the Intergovernmental Panel on Climate Change (IPCC) assessments. Recent activities include the evaluation of load balancing schemes optimized for clusters of SMPs and for the Cray X1, and performance sensitivity analyses of different implementations of interprocessor communication in CAM and POP. Other close collaborations exist between PERC and computational science projects in high energy physics and fusion sciences, and with the other ISICs, as described at http://perc.nersc.gov/. These collaborations are listed in the PERC overview report. For further information please contact:
|
Home | ASCR | Contact Us | DOE disclaimer |
|
|