The ALCF is partnering with Intel to host Aurora Learning Paths, a new training series designed to help attendees advance the development of applications for Argonne's upcoming Intel-HPE exascale supercomputer.
Developers of high-performance computing applications are faced with an increasingly diverse number of computing platforms featuring multiple generations of CPUs, GPUs, and FPGAs. Developing code that is performant and portable across a diverse set of platforms is expensive in terms of time spent trying to achieve the best results.
This hands-on learning series will explore the use of oneAPI and Data Parallel C++ (DPC++), Intel’s open source implementation of SYCL, to demonstrate methods to achieve performant, portable code across five different platforms available on the Intel Devcloud.
We define Performance, Portability, and Productivity as:
- Performance: Measurable quantity representing a characteristic of an application run on a platform. Typically, throughput or time-to-solution. We often express it as a percentage of peak performance on platforms.
- Portability: Ability of application to run correctly on different platforms.
- Productivity: The ratio of application code output to the invested development effort, where application code output represents features, optimizations, maintenance, etc.