For applications to take full advantage of exascale hardware and software, a robust developer training and productivity program keeps application and software team members, staff, and other stakeholders abreast of emerging technologies. This effort is a close collaboration of Facilities, vendors, and the ECP community.
Description: Disseminate and transfer application development knowledge, lessons learned, and best practices across application teams and provide training on key technologies.
For applications to take full advantage of exascale hardware and software, a robust developer training and productivity program is necessary to keep application and software team members, staff, and other stakeholders abreast of emerging technologies. Potential high-priority topics include algorithms and methods, high-performing libraries, memory and storage hierarchies, on-node parallelism and vectorization, application portability techniques, software technologies, and software engineering design principles and best practices.
While the primary focus of this project is on supporting the ECP teams, the project has opened many of the training and productivity activities to a broader community whenever that makes sense. Reaching beyond the researchers involved in ECP today helps in terms of workforce development for the ECP, as well as laying the groundwork for the second generation of exascale developers and users after ECP ends and exascale systems (including smaller-scale deployments of those architectures) become more common and accessible to a broader base of users.
Key aspects of the work include the following.
Lead: Ashley Barker, Oak Ridge National Laboratory