POP: Half-Time Analysis

Wednesday, July 1, 2020

Eighteen months ago, the POP Centre of Excellence (CoE) started its second phase of funding (December 2018 to November 2021) so, having just passed the midpoint, perhaps now is a good time to reflect on the first half of this EU project and look forward to its future.

The objective of this second phase is to continue with and improve on the project activities of the first phase of POP, operating a CoE in HPC with a special focus on the very large scale. POP promotes best practices in performance analysis and optimization, helping developers and users of parallel applications to understand the performance of their applications and identify ways to improve them. While the primary customers are code developers and owners, POP services are also available to code users, research infrastructure and service centres. These services are offered for free to institutions within the EU, helping a wide user community.

Looking back

At the end of the first eighteen months, 54 performance assessment (PA) services (detailed audits of code performance) have been completed and 34 more are in progress. These services provide useful suggestions to clients for performance improvements. Additionally, a total of fourteen Proof-of-Concepts (PoC) have been undertaken, four of which have already been completed. These follow-on studies demonstrate the improvements in performance that can be made by implementing the suggestions made in the assessments.

Collaboration with other CoEs is a key aspect of POP. An initial campaign audited all twelve codes of the ChEESE CoE, soon to be repeated to determine the improvements in performance already achieved and then recommend further enhancements to these codes. Flagship codes were similarly audited for CompBioMed, ESiWACE and other HPC CoEs, while multiple codes were analysed at joint workshops with the EoCoE and E-CAM CoEs. Nine codes were audited on more than 5,000 cores, with the largest at 309,696 cores, as part of readiness assessments for forthcoming exascale computer systems.

POP continues to analyse service costs and investigate how to improve customer satisfaction. To obtain customer feedback, POP customers are sent questionnaires after receiving the report for the service provided. By the end of the first period, 54 questionnaires had been sent out and feedback collected from 39 customers. More than 94% of customers were either very satisfied or satisfied with the service. Over half of the customers wished to continue their collaboration with POP by requesting a PoC service.

The business development component of the project centred on identifying and attracting potential POP users, with a particular focus on SMEs: 1000 leads were identified, from which 89 new POP users were created, including 15 from SMEs. A new promotional tool was launched called “POPCasts” - short video interviews with users and POP staff, available on the POP blog. Online training material has also been produced, useful to those interested in learning about the POP methodology and tools. Work also commenced to identify a strategy to ensure the project´s sustainability.

The project team was invited to speak about the ROI of performance analyses at multiple international large conferences and workshops, highlighting the awareness and interest of the HPC community in this topic and in the project´s achievements. Training materials and activities were organized to help engage interested parties. POP hosted one training event and cooperated in ten others. These were co-organized and co-sponsored by POP partners with other EU projects or organizations (mostly PRACE (Advanced) Training Centres and VI-HPS). The dissemination team promoted project objectives, activities and results via established channels, e.g. via 58 blog articles, 6 newsletters, 9 webinars, and numerous social media posts. They also participated in key conferences and events, presenting 18 talks and posters.

A co-design repository was created to build a database of kernels representative of fundamental problem behaviors identified in real applications, along with best practice alternatives for implementing that same functionality in an efficient way. In the first half of the project, ten kernels were published on the live site, along with descriptions of their associated patterns (i.e. the problem behavior), best practices and relevant POP-assessed codes. The site also includes descriptions of the associated programming languages, programming models, disciplines and algorithms.

The POP methodology is being extended to support hybrid codes and to represent the efficiencies of I/O and vectorization. Tool development efforts include support for POP specific use cases, addition of new features and improvements towards better usability.

Looking forward

POP continues to offer highly specialized expertise and knowledge. Collaborations with other CoEs and HPC centres will help reach potential users of services and promote support to the governance of HPC infrastructures. Centres are being encouraged to adopt the POP methodology, helping embed it in the wider HPC community. We are also continuing to target SMEs.

All project activities aim to increase the adoption of HPC best practices by industrial and academic customers in all application domains. By applying these in real use cases and through the project´s targeted training activities, this directly contributes to developing the skills and human capital resources of customers. POP continues to extend the successful POP webinar series as a mechanism to promote technologies and methodologies and to engage with customers and the broader community.

As a result of POP’s services: application developers will make better-informed decisions, driving their work in a more productive direction; infrastructure operators will ensure that their systems are provisioned in the most efficient way to maximise their Return on Investment; and end-users (both academic and industrial) will use time and resources more efficiently.