Identifying and understanding poor performance is an increasingly difficult task due to the growing complexity and scale of target applications and systems. Visualization is an important tool for exploratory and comprehension-centered goals, leading to development of visualizations and visual tools from both the performance analysis and visualization communities. However, there are several obstacles to wide-spread adoption of these visual tools and techniques, such as scale and ease-of-use. Furthermore, the challenge of visualizing such large and complex data often takes precedence over the other challenges that must be solved to get these tools into the hands of users. Addressing these issues requires making trade-offs which in turn require a firm understanding of performance analysts' needs and workflows. Through several projects in performance visualization, I discuss observed barriers to designing and deploying performance visualization solutions as well as the perspective of visualization-focused experts in working in the performance analysis space. I then propose directions focusing on these gaps between the visual design and integration into performance analysis workflows.
{"title":"Integrating Visualization (and Visualization Experts) with Performance Analysis","authors":"Katherine E. Isaacs","doi":"10.1145/3526063.3536196","DOIUrl":"https://doi.org/10.1145/3526063.3536196","url":null,"abstract":"Identifying and understanding poor performance is an increasingly difficult task due to the growing complexity and scale of target applications and systems. Visualization is an important tool for exploratory and comprehension-centered goals, leading to development of visualizations and visual tools from both the performance analysis and visualization communities. However, there are several obstacles to wide-spread adoption of these visual tools and techniques, such as scale and ease-of-use. Furthermore, the challenge of visualizing such large and complex data often takes precedence over the other challenges that must be solved to get these tools into the hands of users. Addressing these issues requires making trade-offs which in turn require a firm understanding of performance analysts' needs and workflows. Through several projects in performance visualization, I discuss observed barriers to designing and deploying performance visualization solutions as well as the perspective of visualization-focused experts in working in the performance analysis space. I then propose directions focusing on these gaps between the visual design and integration into performance analysis workflows.","PeriodicalId":244248,"journal":{"name":"Proceedings of the 2nd Workshop on Performance EngineeRing, Modelling, Analysis, and VisualizatiOn Strategy","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123699318","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
S. Hunold, Jordy I. Ajanohoun, Ioannis Vardas, J. Träff
MPI performance analysis tools are important instruments for finding performance bottlenecks in large-scale MPI applications. These tools commonly support either the profiling or the tracing of parallel applications. Depending on the type of analysis, the use of such a performance analysis tool may entail a significant runtime overhead on the monitored parallel application. However, overheads can occur in different stages of the performance analysis with varying severity, e.g., the overhead when initializing an MPI context is typically less problematic than when monitoring a high number of short-lived MPI function calls. In this work, we precisely define the different types of overheads that performance engineers may encounter when applying performance analysis tools. In the context of performance tuning, it is crucial to avoid delaying individual events (e.g., function calls) when monitoring MPI applications, as otherwise performance bottlenecks may not show up in the same spot as when running the applications without applying a performance analysis tool. We empirically examine the different types of overheads associated with popular performance analysis tools for a set of well-known proxy applications and categorize the tools according to our findings. Our study shows that although the investigated MPI profiling and tracing tools exhibit a rather unique overhead footprint, they hardly influence the net time of an MPI application, which is the time between the Init and Finalize calls. Performance engineers should be aware of all types of overheads associated with each tool to avoid very costly batch jobs.
{"title":"An Overhead Analysis of MPI Profiling and Tracing Tools","authors":"S. Hunold, Jordy I. Ajanohoun, Ioannis Vardas, J. Träff","doi":"10.1145/3526063.3535353","DOIUrl":"https://doi.org/10.1145/3526063.3535353","url":null,"abstract":"MPI performance analysis tools are important instruments for finding performance bottlenecks in large-scale MPI applications. These tools commonly support either the profiling or the tracing of parallel applications. Depending on the type of analysis, the use of such a performance analysis tool may entail a significant runtime overhead on the monitored parallel application. However, overheads can occur in different stages of the performance analysis with varying severity, e.g., the overhead when initializing an MPI context is typically less problematic than when monitoring a high number of short-lived MPI function calls. In this work, we precisely define the different types of overheads that performance engineers may encounter when applying performance analysis tools. In the context of performance tuning, it is crucial to avoid delaying individual events (e.g., function calls) when monitoring MPI applications, as otherwise performance bottlenecks may not show up in the same spot as when running the applications without applying a performance analysis tool. We empirically examine the different types of overheads associated with popular performance analysis tools for a set of well-known proxy applications and categorize the tools according to our findings. Our study shows that although the investigated MPI profiling and tracing tools exhibit a rather unique overhead footprint, they hardly influence the net time of an MPI application, which is the time between the Init and Finalize calls. Performance engineers should be aware of all types of overheads associated with each tool to avoid very costly batch jobs.","PeriodicalId":244248,"journal":{"name":"Proceedings of the 2nd Workshop on Performance EngineeRing, Modelling, Analysis, and VisualizatiOn Strategy","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126611156","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In most scientific domains, results are now obtained thanks to computational science that heavily relies on numerical simulations. This in turn leads to a tremendous increase in size and complexity of the underlying computing infrastructures. The performance assessment of such distributed systems and the applications they run is then a complex task for which various approaches can be considered. This talk will give a general overview of these approaches for the performance assessment of distributed systems and applications: experimentation, emulation, and simulation. It will specifically focus on the main features and strengths of the SimGrid toolkit. SimGrid is a 20+ year old research project whose scope has broaden over the years from the simulation of computing grids to P2P systems, clouds, and HPC. It will introduce the two main programming APIs, the underlying (in)validated models, and present some of the tools based on SimGrid that are currently available
{"title":"Performance Evaluation Through Simulation with SimGrid","authors":"F. Suter","doi":"10.1145/3526063.3535352","DOIUrl":"https://doi.org/10.1145/3526063.3535352","url":null,"abstract":"In most scientific domains, results are now obtained thanks to computational science that heavily relies on numerical simulations. This in turn leads to a tremendous increase in size and complexity of the underlying computing infrastructures. The performance assessment of such distributed systems and the applications they run is then a complex task for which various approaches can be considered. This talk will give a general overview of these approaches for the performance assessment of distributed systems and applications: experimentation, emulation, and simulation. It will specifically focus on the main features and strengths of the SimGrid toolkit. SimGrid is a 20+ year old research project whose scope has broaden over the years from the simulation of computing grids to P2P systems, clouds, and HPC. It will introduce the two main programming APIs, the underlying (in)validated models, and present some of the tools based on SimGrid that are currently available","PeriodicalId":244248,"journal":{"name":"Proceedings of the 2nd Workshop on Performance EngineeRing, Modelling, Analysis, and VisualizatiOn Strategy","volume":"28 5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117003693","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In this paper, we develop a method to identify High Performance Computing (HPC) workloads from a stream of incoming I/O requests. This characterization of workloads could then be used to intelligently schedule the I/O requests in the parallel file system (PFS) that most HPC systems use. We use a deep learning model for this purpose that is designed to pick up changes in the workload as they occur. We show that our method accurately determines the workload characteristics when evaluated on publicly available server-side HPC traces. We also show that the I/O scheduling based on such a characterization can substantially increase the available I/O bandwidth and thus reduce the latencies for the HPC workloads.
{"title":"Server-Side Workload Identification for HPC I/O Requests","authors":"Lu Pang, K. Kant","doi":"10.1145/3526063.3535350","DOIUrl":"https://doi.org/10.1145/3526063.3535350","url":null,"abstract":"In this paper, we develop a method to identify High Performance Computing (HPC) workloads from a stream of incoming I/O requests. This characterization of workloads could then be used to intelligently schedule the I/O requests in the parallel file system (PFS) that most HPC systems use. We use a deep learning model for this purpose that is designed to pick up changes in the workload as they occur. We show that our method accurately determines the workload characteristics when evaluated on publicly available server-side HPC traces. We also show that the I/O scheduling based on such a characterization can substantially increase the available I/O bandwidth and thus reduce the latencies for the HPC workloads.","PeriodicalId":244248,"journal":{"name":"Proceedings of the 2nd Workshop on Performance EngineeRing, Modelling, Analysis, and VisualizatiOn Strategy","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127673290","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
R. Liem, Connor Scully-Allison, Ana Luisa Veroneze Solórzano, Kristopher Keipert, Rafael Ferreira da Silva, Suraj P. Kesavan, Tirthak Patel
In this panel, a team of four experts in performance analysis, parallel computing, quantum computing, and distributed systems discuss how different scientific computing fields are benefiting from performance analysis tools. The panel will discuss challenges and limitations in today's available tools from the perspective of a tools developer, domain scientist, and solutions architect. An emphasis will be placed on evaluating the performance and visualizing experiments in rising fields in Computer Science such as Machine Learning and Quantum Computing in HPC infrastructures. The panel is in the format of questions and answers sessions given by the moderator combined with interactive communication with the audience. We encourage participants to join our interactive panel discussion.
{"title":"PERMAVOST'22 Discussion Panel: Domain Scientists vs. Performance Analysis Tools: Advancing in HPC","authors":"R. Liem, Connor Scully-Allison, Ana Luisa Veroneze Solórzano, Kristopher Keipert, Rafael Ferreira da Silva, Suraj P. Kesavan, Tirthak Patel","doi":"10.1145/3526063.3536197","DOIUrl":"https://doi.org/10.1145/3526063.3536197","url":null,"abstract":"In this panel, a team of four experts in performance analysis, parallel computing, quantum computing, and distributed systems discuss how different scientific computing fields are benefiting from performance analysis tools. The panel will discuss challenges and limitations in today's available tools from the perspective of a tools developer, domain scientist, and solutions architect. An emphasis will be placed on evaluating the performance and visualizing experiments in rising fields in Computer Science such as Machine Learning and Quantum Computing in HPC infrastructures. The panel is in the format of questions and answers sessions given by the moderator combined with interactive communication with the audience. We encourage participants to join our interactive panel discussion.","PeriodicalId":244248,"journal":{"name":"Proceedings of the 2nd Workshop on Performance EngineeRing, Modelling, Analysis, and VisualizatiOn Strategy","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122452104","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}