Scott Apeland
Director of Developer Relations and Ecosystem Programs
In just over a year since the initial release of Intel oneAPI tools, the Intel® oneAPI toolkits are seeing strong interest and use among developers as a unified, cross-architecture programming model for CPUs and accelerators. Developers are relaying that they're using oneAPI because it's open, they can learn it quickly, and can migrate their code to oneAPI with the resultant SYCL* code being portable across different architectures.
Here are a few examples of what we're hearing from developers.
"We Are Firm Believers in Open Standards"
Erik Lindahl, professor of Biophysics at the KTH Royal Institute of Technology and Stockholm University, leads GROMACS research and its transition to oneAPI. In a sycl.tech video, Erik shares the value he sees in the oneAPI open standards-based, cross-architecture, cross-vendor programming model. "The part of oneAPI that is most important to me and my team is that, of course, it's an open standard. We are firm believers in open standards, particularly in the long run, because that means we can rely on it no matter what the vendors do. We think oneAPI is going to be a revolution in programming," said Erik.
GROMACS is a molecular dynamics package designed for simulations of proteins, lipids, and nucleic acids used to design new drugs. It is optimized using oneAPI with SYCL* to ensure it can parallelize better and use the power of multiple architecture types.
Stockholm University was also one of the first four Intel oneAPI Centers of Excellence established in November 2020. That number has increased to 19: The latest center with the Technical University of Darmstadt was recently announced. Centers at top universities and labs around the world focused on enabling open-source codes, building oneAPI support for new hardware platforms and programming languages, and delivering oneAPI curriculum and training.
For example, Aksel Alpay at Heidelberg University's oneAPI Center of Excellence added oneAPI language (Data Parallel C++ [DPC++]) capabilities to hipSYCL, which supports systems based on AMD* GPUs. The oneAPI center at the Institute of Computing Technology at the Chinese Academy of Sciences is extending oneAPI to support China's local accelerators. Dr. Jin Zheming at the Oak Ridge National Laboratory's oneAPI center is creating a repository of open-source samples, benchmark codes, and documentation to aid developers in migrating their CUDA* code to DPC++ (SYCL).
"It Was Fun to Learn"
We're also hearing that developers prefer oneAPI because it is based on common, familiar C and C++ constructs. Speaking at the International Workshop on OpenCL™ Standard (IWOCL) SYCLcon DevSummit in 2021, Andrew Pastrello, a PhD student at the University of New South Wales (UNSW) Sydney and nuclear engineer at the Australian Nuclear Science and Technology shared, "Implementation of the parallel kernel in DPC++ was quite straightforward, especially with the USM features. It was fun to learn and the experience I gained with ODE solving will also be invaluable in the future."
Andrew is using SYCL (DPC++) to develop performance-portable Monte Carlo neutron transport algorithms. With SYCL based on common, familiar C++ constructs, he found that:
- Host-side code is much simpler than OpenCL™ code
- The same data structure definitions are used for both host and device
- One code base can be maintained for various hardware targets.
"DPC++ Compatibility Tool Handled 80% of Our CUDA* Porting Effort"
Presenting his work at the oneAPI DevSummit SC21 in November 2021, David Hardy, lead developer of Nanoscale Molecular Dynamics (NAMD) at the University of Illinois at Urbana Champaign, explained that "porting a large application such as NAMD from CUDA to DPC++ is a daunting task. The Intel® DPC++ Compatibility Tool reduces much of the manual work by automatically converting calls to the CUDA API to corresponding DPC++ functionalities. This allows the programmer to focus on ensuring the correctness of the application, with minimal effort in manually writing DPC++ code."
NAMD is a prominent parallel molecular dynamics application designed for high-performance computing of large biomolecular systems. With 19,000 lines of CUDA code, migrating to DPC++ was a daunting task. By using the compatibility tool that ports CUDA language kernels and library API calls, 80% of the NAMD CUDA code was automatically migrated to DPC++ code.
"Improved Our 3D Model Performance by up to 9x"
Speaking at the oneAPI DevSummit in China last year, Yunlong Gao, head of research and development (R&D) at Daspatial explained, "The Intel® oneAPI Base and AI Analytics toolkits improved our 3D model reconstruction's performance by up to 9x on an Intel® Xeon® platform compared to our existing GPU solution."
The application uses AI preprocessing and inference feature-matching for 3D image reconstruction on very large medical images. oneAPI together with the Intel® Xeon® platform allowed them to handle large images with optimized AI inference processing through parallel multi-instances and bigger batch sizes. Performance gains were realized by using Intel® Advanced Vector Extensions 512 and multithreading optimizations in the preprocessing modules, together with TensorFlow* optimized by the oneAPI Deep Neural Network library (oneDNN) in the AI inference image-matching modules.
oneAPI Curriculum for Students Around the World
To ensure students have an opportunity to learn and use oneAPI, the Intel® Academic Program for oneAPI provides teacher kits, curriculum, and DevCloud compute resources to universities that add oneAPI to their undergraduate computer sciences courses. The first classes started last fall in China at Tsinghua University, Peking University, University of Science and Technology of China, and Xidian University. In 2022, this effort is expanding globally with universities in the US, Europe, Asia, and China adding oneAPI and heterogenous programming to their computer sciences courses.
More Examples and Developer Opportunities
These are just a few examples. Many more real-world examples are in oneAPI Ecosystem Support. You can also hear directly from industry and academia speakers who share their experience and knowledge from using oneAPI at regular virtual oneAPI DevSummits. View upcoming events, DevSummits, and recorded sessions. To get started with the toolkits, you'll find them on the Intel® Developer Zone.
Expand the SYCL* 2020 Ecosystem with hipSYCL and DPC++
Listen
Get started with this core set of tools and libraries for developing high-performance, data-centric applications across diverse architectures.