Tools
Explore new features and tools within Intel® products, communities, and platforms
82 Discussions

oneAPI DevSummit: Open Programming Movement Gains Momentum

MaxTerry
Employee
1 0 4,510

On June 13, Intel hosted the 14th oneAPI DevSummit. The theme of this year’s oneAPI DevSummit 2023 focused on the growing ecosystem and adoption of SYCL,* the open, standards-based extension of the widely used C++ language from the Khronos Group* that is the foundation for the oneAPI programming model.

oneAPI with SYCL gives developers the freedom to program across multiple accelerator architectures: CPUs, GPUs, FPGAs, and other hardware. A single programming model that works across multiple vendors frees developers from the costly, time-consuming complexity of proprietary programming models.

Tony Mongkolsmai, a software architect and technical evangelist at Intel, delivered the first oneAPI State of the Union. Mongkolsmai noted that developers need productivity and performance, solutions must be built to stand the test of time. Evidence from this year’s DevSummit resoundingly supports all three points.

A Thriving Ecosystem

Open standards provide a strong foundation for longevity and a broad ecosystem. Since the launch of oneAPI in 2019, the number of companies and organizations using oneAPI has grown substantially. The ecosystem includes enterprises such as Accenture, Adobe, Anaconda, Fujitsu, Google, and Microsoft; major universities including UC Berkeley, University of Tennessee, University of Illinois, and the University of Bristol; national labs including Oak Ridge, Lawrence Livermore, Sandia, and Argonne; and even hardware companies like RISC-V.*

oneAPI ecosystem.png

But just because large organizations use oneAPI, why should developers care? Over the past three years, oneAPI has gained mainstream traction within tools that developers commonly use today.

Here are just a few examples of well-loved graphics applications that leverage oneAPI:

  • The popular Blender* open source 3D creation suite has integrated oneAPI/SYCL into the Blender Cycles Renderer.
  • The Chaos V-Ray* renderer also uses Academy Award winning Intel® Embree and Intel® Open Path Guiding Library (OpenPGL) library, which are built using oneAPI to create more realistic lighting effects. V-Ray integrates as a renderer into 3ds Max, Maya, Houdini, and Cinema 4D, which means a huge amount of content will be created using oneAPI.
  • The DreamWorks Animation* open source MoonRay production renderer includes acceleration from Intel Embree and other parts of oneAPI.

Even before the sudden spike in interest in generative AI, deep learning frameworks were already taking advantage of oneAPI.

  • TensorFlow* has integrated the one Deep Neural Network (oneDNN) library into its core codebase. 
  • PyTorch* users can take advantage of solutions built using oneAPI and oneDNN as well.

Mongkolsmai has written about using PyTorch and oneAPI to run stable diffusion on a simple laptop GPU. More recently, he and others fine-tuned a model on the new Dolly 2.0 LLM from Databricks* and do inference on it using oneAPI on the latest Intel® Data Center GPU Max Series processors in the Intel Developer Cloud.

Just a few weeks ago, the SYCLOPS project, built on top of oneAPI and RISC-V, announced AI and data mining solutions for large and diverse data sets. This project is supported by CERN, Codeplay, Heidelberg University, and several other EU organizations.

As testament to the growth and health of the ecosystem, the State of the Union featured three guest speakers highlighting their success stories:

  • Professor Hartwig Anzt from the University of Tennessee* spoke about the open source Ginkgo project’s experience with oneAPI. Ginkgo is a high-performance linear algebra library for manycore systems, with a focus on solution of sparse linear systems. Antz emphasized that oneAPI enables the project to run accelerated workloads at scale across 1,000 GPU tiles. He added that the team was able to migrate from CUDA to oneAPI quickly to enable their code to run across multiple vendor architectures.
  • Rafael Lago of Intel represented about DPEcho, an astrophysics, general relativity simulator run by the Leibniz-Rechenzentrum (LRZ) Project.* This simulator models turbulence, wave propagation, stellar winds, and processes around black holes, as demonstrated in a video showing all the platforms using SYCL (not CUDA, not ROCm).
  • Ahmed Joudad, CEO of Beewant,*and Sebastian Witalec, Head of Developer Relations at Weaviate,* delivered a compelling presentation on how they built and scaled an AI solution on top of oneAPI to make large amounts of unstructured video and image data useful for the City of Paris. Beewant and Weaviate are members of the Intel® Liftoff for Startups program, which supports startups seeking to use oneAPI to bring solutions to market faster.

oneAPI for Everyone

Speaking of liftoff, a strong community is what makes open standards like oneAPI thrive. In addition to Liftoff for Startups, Mongkolsmai highlighted some important community programs supporting developers everywhere:

What’s New in the oneAPI Spec?

Direct programming in oneAPI is simply programming in C++ using SYCL, which provides APIs and abstractions to find devices on which code can be executed, manage data resources, and code execution on those devices. API-based programming simplifies common accelerated algorithms in a variety of well-known spaces while still getting performance from the hardware.

There have been significant advancements and external contributions to both direct programming and the API libraries over the past year.

The oneAPI Math Kernel Library (oneMKL) supports a wider range of devices from multiple vendors, including AMD devices, Nvidia DFT, and Intel Data Center Max Series CPUs and GPUs.

The oneAPI Deep Neural Network Library (oneDNN) provides new experimental Graph API and Sparsity Support, a new Math Mode API to manage down converting to low-precision data types, updated quantization scheme supporting int8, and performance improvements on Intel and ARM CPUs and AMD, NVIDIA, and Intel GPUs

One of the biggest developments for the Intel® oneAPI DPC++/C++ Compiler was the announcement of commercial support via Codeplay for companies building on oneAPI. This includes oneAPI plugins, which provide support for Nvidia and AMD GPUs to the Intel® oneAPI Base Toolkit. Codeplay also announced a new oneAPI Construction Kit to enable SYCL on custom hardware.

Support for the latest SYCL 2020 standard is now enabled by default (can be reverted to 1.2.1 with a flag) which provides the ability to better target hardware around fp16, fp64, and a variety of other hardware features by determining capabilities needed for specific devices. Several implementations of proposed extensions to SYCL were also developed including:

  • Joint Matrix exposes matrix hardware via API extension to support a variety of hardware including NVIDIA GPUs and Intel CPUs and GPUs
  • SYCL Graph support allows you to express offload dependencies as a single graph, allowing us to build execution graphs and submit just once, which is especially beneficial for repetitive workloads with lots of small kernels
  • Bindless texture support allows GPU shaders to use textures without having to have a rendering context

The hipSYCL Compiler developed by Heidelberg University recently implemented single pass compilation for faster compile time. Unified device code representation for all backends means it can modify code at runtime in a backend-independent way, which can dramatically simplify working on technologies such as kernel fusion. hipSYCL now officially provides Intel GPU support–no longer on an experimental basis! Heidelberg University’s Aksel Alpay presented on HipSYCL’s Quest for Universal SYCL Binaries: One Binary from NVIDIA and AMD to Intel Data Center GPU Max Series.

Another significant piece of news was the announcement in March of the SYCL Safety Critical Working Group, formed to develop a C++-based heterogeneous compute programming framework for safety-critical systems. This framework will align with safety certification standards in the avionics, automotive, industrial, and medical fields. Providing a Safety Critical version of SYCL will allow developers to program in an accelerated environment using a framework that will enable safety critical certifications.

SYCL even made it into Compiler Explorer–great proof that the ecosystem around SYCL tooling continues to expand. With Compiler Explorer, you can see the assembly from the SYCL code as well as the (SPIR64) Standard Portable Intermediate Representation output. SPIR allows us to compile for different targets using this representation. You can examine how the representation you are trying to express in your SYCL code is being translated by the compiler.

Evolution of the Community

We talked about the importance of oneAPI being an open, community-driven spec. Perhaps the biggest news in the last year was the move to a community forum, which means oneAPI is run using an open governance model.

Why is this good for both software and hardware developers? The community will help ensure that hardware is being designed with software use cases in mind. This cross-industry group of hardware and software experts defines and drives standard interfaces for accelerator computing, with representatives from multiple companies and community members engaged in Special Interest Groups responsible for proposing changes to the various specs.

The strong community growing around oneAPI makes it a truly open initiative. The landscape of accelerated computing is still young, and standards continue to evolve. You can get involved by joining the oneAPI Community Forum or any of our community programs

CTAs:

Join the oneAPI Community Forum

Become a oneAPI Innovator

Become a Student Ambassador

Apply to Intel Liftoff for Startups

 

View other oneAPI DevSummit presentations:

Panel Discussion:

Three Tech Talks:

Two Lightning Talks

Live Tutorial:

About the Author
Technology marketing leader with a passion for connecting customers to Intel value!