Get the Latest on All Things CODE




oneAPI Turns Four

It has been four years since Raja Koduri (Executive Vice President and General Manager of the Intel Accelerated Computing Systems and Graphics Group) announced the oneAPI industry initiative at the 2018 Intel Architecture Day. He tweeted the following to mark the occasion:

“4th anniversary of oneAPI reveal at 2018 architecture day. Came a long way – almost 10x increase in developer adoption since the 2020 beta release with support from key HPC, AI and rendering frameworks. Fine beginnings with a lot more evolution ahead."

In honor of the four-year anniversary of oneAPI, much of this issue focuses on SYCL* and oneAPI libraries like oneMKL and oneDPL. The feature article is The Case for SYCL*, in which I outline the reasons why the current version of ISO* C++ is insufficient for heterogeneous parallelism. In a nutshell, C++ has no concept of an accelerator device, so it has no concept of device discovery, disjoint memories, or exception handling across device boundaries. All is not lost, however, as future C++ versions are likely to adapt to hardware heterogeneity. Host-device data transfer was discussed in a previous article: The Maxloc Reduction in oneAPI (The Parallel Universe, Issue 48). The SYCL device discovery API will be covered in a future article. From there, we turn our attention to Migrating C++ Thrust* Applications to SYCL* and oneAPI DPC++ Library (oneDPL), which describes how to modernize and accelerate C++ code using open, non-proprietary libraries. In the next article, DPEcho: General Relativity with SYCL* for the 2020s and Beyond, Salvatore Cielo (Leibniz Supercomputing Centre, Garching by Munich), Alexander Pöppl (Intel Corporation), Luca Del Zanna (Università degli Studi di Firenze, Sesto Fiorentino), and Matteo Bugli (Università degli Studi di Torino, Turin) describe how they ported one of their critical scientific applications to SYCL.

I return to my “old school” roots in Accelerating LU Factorization Using Fortran, oneMKL, and OpenMP* to demonstrate how to efficiently manage host-device data transfer while offloading math library functions to an accelerator using the OpenMP heterogeneous parallel directives.

From there, we turn our attention to artificial intelligence applications powered by oneAPI. The Intel® SIHG4SR Solution for the ACM RecSys Challenge 2022 describes Intel’s high-ranking entry to this recommender system challenge. Good or Bad Pill?: Computer Vision for the Pharmaceutical Industry showcases the Visual Quality Inspection AI Reference Kit. This end-to-end computer vision and deep learning pipeline identifies defective pills in a pharmaceutical manufacturing process. If you’re interested in doing stable diffusion (a fun, but serious, deep learning model that can convert text descriptions to images) on your personal computer, Running TensorFlow* Stable Diffusion on Intel® Arc™ GPUs has you covered. This article walks you through the process from setup to execution.

As always, don’t forget to check out Tech.Decoded for more information on Intel® solutions for code modernization, visual computing, data center and cloud computing, data science, systems and IoT development, and heterogeneous parallel programming with oneAPI.

Henry A. Gabb

January 2023

Henry A. Gabb, Senior Principal Engineer at Intel Corporation, is a longtime high-performance and parallel computing practitioner who has published numerous articles on parallel programming. He was editor/coauthor of “Developing Multithreaded Applications: A Platform Consistent Approach” and program manager of the Intel/Microsoft Universal Parallel Computing Research Centers.

LinkedIn | Twitter