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 and key technologies of importance to ECP. These projects are done in close collaboration among the computing facilities, vendors, and the ECP community.
Description: Disseminate and transfer application development knowledge, lessons learned, and best practices across application teams; 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 for training include algorithms and methods, high-performing libraries, 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 ECP teams, the project has opened many training and productivity activities to a broader community whenever possible. Training materials are archived in the training space of the ECP website. Reaching beyond the researchers involved in ECP today helps in developing a workforce 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 community.
Key aspects of the work include the following:
Lead: Osni Marques, Lawrence Berkeley National Laboratory