AI and high-performance computing (HPC) face similar issues today. Compute workloads in both areas have grown big enough that they cannot run on a single node, regardless of size. And for energy efficiency and fast results, both need to use and embrace integrated and attached accelerator technologies.
In both arenas, but particularly in AI, there is a growing array of diverse and complex hardware for acceleration. Certainly, HPC has dealt with heterogeneous computing for years. What makes things more challenging is that a single executable program may want to call upon multiple architectures for a single job. For instance, a routine may want to stream data through the CPU, then GPU and/or FPGA, make a quick filter on that, build an array of data, and process that data on a different host.
To accomplish this, researchers, scientists, and developers need simplified, unified, and open programming models to efficiently use multiarchitecture systems. For far too long, each architecture type has required its own languages and software tool stack, which added complexity for developers and hindered code portability and reuse across architectures. This was the message in a recent HPCwire.com interview with Joe Curley, vice president and general manager of Software Products and Ecosystem in Intel’s Software and Advanced Technology Group.
“Industry analysts are predicting huge growth and adoption of accelerator technology inside the data center,” said Curley. “With CPU, GPU and software technology changing so rapidly, often with multiple different microarchitectures, having a common, open, standards-based programming model is critical for enabling the full range of available and future hardware.”
It’s also critical for the future of AI-accelerated HPC as researchers and developers are actively using AI on extremely large data sets and models to produce high-accuracy results in much shorter time frames.
Software-First, the Catalyst to Silicon-Enabled
Curley emphasized how software makes it easier to accelerate HPC, AI, and many other workloads with the advanced multiarchitecture, multivendor programming – oneAPI – an open, cross-industry, standards-based initiative that delivers a common developer experience across accelerator architectures. It defines programming for an increasingly AI-infused, multiarchitecture world and helps developers harness the full, unique power of diverse computing architectures.
oneAPI unified and open programming enables developers to use the architecture of their choice and provide code portability. With oneAPI, software investments are preserved by supporting existing languages and programming models while delivering flexibility for developers to create new applications. Taking a software-first approach, Intel offers a full array of oneAPI tools for HPC, AI, and other workloads. The oneAPI specification includes a direct programming language, domain-specific libraries, and even supports plugins for Nvidia and AMD hardware built by Codeplay, Inc. It also includes SYCL2020 and standard library interfaces, as well as a direct-to-metal hardware programming interface.
Curley elaborated that SYCL, a Khronos Group-managed standard delivering a C++-based programming model to improve programming productivity when using different hardware accelerators, is a foundational software effort in oneAPI. One of the great benefits of SYCL is that it is a cross-platform abstraction layer that allows developers using modern C++ to easily use accelerators and incorporate them into their programming workflows. With SYCL, programmers do not have to learn a new language to use accelerators. All they must do is add syntax that says run on this device, and it is taken care of.
Curley gave an example of how powerful this is. He noted that while attending a conference, one of the speakers said that because he knew C++, he was productive in this language in seven days. “That’s mind-blowing if you just take the number of years it takes to program a GPU to deal with different code pages, host code, device code, and more,” said Curley.
Bringing it all together
AI and HPC solve some of the world’s greatest challenges. Unleashed by software, accelerators further help researchers get answers to these problems faster using less power. From better understanding the cosmos to speeding disease investigations and uncovering new treatments, AI and HPC provide new insights and a way forward in these fields.
“The greatest benefit of oneAPI and the multitude of open standards-based tools and components delivered by Intel is the ability to break free from proprietary programming languages that lock developers into a single vendor or hardware architecture,” concluded Curley.
Software built on multiarchitecture standards, like oneAPI, makes it easier to use the increasingly complex hardware needed to run AI and HPC workloads. Intel-led and industry efforts around oneAPI and SYCL empower an AI-accelerated HPC reality by simplifying access to the growing variety of processors and accelerators. This is enabled across Intel’s HPC technology portfolio, including 4th Gen Intel® Xeon® processors, Intel® Xeon® CPU Max Series processors and Intel® Data Center GPUs.
With these tools, programmers, data scientists, and developers do not have to be accelerator or hardware coding experts. They can tap the full benefits of multiarchitecture systems, masked by abstraction layers, allowing them to apply the appropriate technologies using skills they already possess.
Learn more about how Intel is helping HPC developers accelerate HPC and AI workloads here.