Integrating parallel application development with performance analysis in periscope
Ventsislav Petkov, Michael Gerndt · 2010
High-performance computing (HPC) is making its way in every field of science and engineering by providing advanced methods for getting deeper comprehension of different processes and phenomena. However, due to the increased complexity of computer architectures and their multi-level parallelism, the development of efficient highly parallel applications is considerably complicated. This process has to be inevitably augmented with continuous performance analysis in order for one to be successful in optimizing applications and squeezing the potential out of today's supercomputers. Periscope is a distributed performance analysis tool capable of collecting and processing measurement data from large scale application runs. In comparison to other similar tools, Periscope provides high-level performance bottlenecks and not the low-level values of hardware counters. This paper presents an enhanced and powerful graphical user interface that was recently developed for Periscope. It was successfully integrated in the Eclipse development platform as a plug-in and takes advantage of one of its extensions - the Parallel Tools Platform (PTP). This approach combines some of platform's advanced programming features with those of the Periscope performance measurement toolkit. As a result, a convenient software development and performance analysis environment was produced that aims at increasing the productivity of developers during the creation of highly efficient HPC applications.