CUDA* to SYCL* Catalog of Ready-to-Use Applications
Migrate from CUDA to C++ with SYCL
Training & Resource Portal
Bookmark this page for the latest SYCL* code porting tools, training, and techniques that help you unlock your code from the constraints of vendor lock-in.
NEW
Product Page
"Using Intel® oneAPI Base Toolkit, we have successfully implemented GE HealthCare's proprietary TrueFidelity* DL, a deep learning image reconstruction algorithm available across much of the company's CT portfolio. TrueFidelity DL images achieve exceptional clarity at low dose. The open source SYCL compiler provides near entitlement AI/DL inferencing performance for several NVIDIA* GPU devices. Based on GE Healthcare experience with OpenCL™ software, code portability is crucial to protect our software development investment and reuse the software across different platforms and vendors. We also found that cuDNN to oneDNN porting is very straightforward. oneAPI is an open source project with strong commercial support from the third parties."
– Mark Valkenburgh, senior director, Global and Strategic Alliances, GE HealthCare
GitLab*
The San Diego Supercomputer Center (SDSC) at the University of California San Diego (UCSD) ported the Amber biomolecular simulations software package used by thousands of scientists in academia, national labs, and industry to enable open standards-based, cross-architecture GPU offload with SYCL.
GitHub*
The XGBoost library provides scalable, portable, and distributed gradient boosting (GBDT, GBRT, or GBM). It is now available with SCYL and oneAPI support for multiarchitecture accelerator and GPU offload support to provide even faster AI inference support across different platform configurations.
Science
Biology and Chemistry
ZIB GitLab
"The essential core algorithms of the simulation software HAL’s MD package have been successfully migrated [by Zuse Institute Berlin (ZIB)] from CUDA to SYCL, thereby achieving code portability across major GPU vendors. It is a high-precision molecular dynamics package for large-scale simulations of the complex dynamics in inhomogeneous liquids."
— Dr Thomas Steinke, head of the Supercomputing Department, ZUSE Institute Berlin.
Lecture Notes
GitHub*
The Large-scale Atomic/Molecular Massively Parallel Simulator (LAMMPS) is a classical molecular dynamics application with a focus on materials modeling. It uses the message passing interface (MPI) with the Kokkos core libraries SYCL back end for use on scientific HPC platforms.
GitHub
Professor Andreas Koch and team in the computer science department at Technical University Darmstadt (TU Darmstadt) are working on enabling an accelerated version of the AutoDock* simulation application to use SYCL in medical and pharmaceutical research.
Technical University Darmstadt
GitHub
RELION* is an open source application suite used to discover the biological structures of molecules from data gathered through electron cryo-microscopy (cryo-EM). The suite is developed at the MRC Laboratory of Molecular Biology. The community is actively migrating the solver back ends of RELION to SYCL.
GitLab
Researchers at the University of Illinois Urbana-Champaign demonstrate functional correctness in porting a large molecular dynamics application.
Open Source Project
Erik Lindahl (a biophysics professor at the University of Stockholm who works on GROMACS) migrated CUDA code to SYCL using the Intel DPC++ Compatibility Tool for cross-architecture-ready code.
Tech Paper (PDF)
Heterogeneous computing takes an important role in providing solutions but at the same time generates new challenges on porting source code between different architectures. To address these challenges, Intel proposed oneAPI, a new unified programming environment that allows code developed in the SYCL language to be run on different devices such as CPUs, GPUs, FPGAs, and others.
Tech Article
New exascale hardware requires a new software environment. To keep up with all the changes in hardware architecture, the code needs to support the new and unifying programming model: oneAPI and SYCL.
Healthcare
Product Webpage
Using the Intel® oneAPI Base Toolkit, [GE HealthCare*] successfully migrated code, which requires heavy processing and is extensively used in ultrasound diagnostics solutions, to SYCL. This is a big step forward on the way to a single, open, standards-based programming model for heterogeneous computing. The migrated code efficiently runs on different GPU platforms and achieves competitive performance.
— Arcady Kempinsky, senior lead software architect, GE HealthCare
Tech Video
Ricardo Nobre and the High-Performance Computing Architectures and Systems (HPCAS) Research Group at INESC-ID use the Intel DPC++ Compatibility Tool to seamlessly port a CUDA-based application, resulting in more than 95% of their hand-tuned code automatically migrated. The application features collaborative use of CPU and GPU devices to find new associations between genotypes and phenotypes. It thus speeds up detection of specific gene mutations that can lead to a more likely expression of a disease and adverse effects on health.
Tech Video
Zhen Ju of China, a challenge participant winner, demonstrates the migration of a CUDA-based application and the benefits of an open programming model for all architectures. The ported application offers a more efficient and accurate solution to filter out redundant sequences in generic data.
Tech Video
Luigi Crisci of the University of Salerno shows how LiGen, a docking and scoring pipeline, is made portable across different GPUs by porting the original code base.
High-Energy Physics
GitHub
MadGraph is one of the most commonly used software solutions for analyzing and generating simulated particle collision events. It is used extensively in experimental particle physics to assist with calculating the physical properties of particles based on their paths through a detector. It has been ported to support SYCL for accelerated parallel compute on multiple-vendor GPUs.
The Atlas Experiment at Centre Européen Recherche Nucléaire (CERN) has been using software development tools from Intel and SYCL in an effort to enable their charged particle track reconstruction detector analytics to effectively use GPUs and achieve major performance improvements.
GitHub
QUDA is a library for performing calculations in lattice quantum chromodynamics (LQCD) for quark and gluon interactions inside nuclei. To move to an open vendor-agnostic back end and genericize the code, the developers are constructing a SYCL back end instead of CUDA.
Tech Paper (PDF)
This technical paper describes the experiences in creating mini applications for the Wilson-Dslash stencil operator for lattice quantum chromodynamics using the Kokkos and SYCL.
Computing
GitHub
zfp is a compressed format for representing multidimensional floating-point and integer arrays. It provides compressed-array classes that support high-throughput read and write random access to individual array elements. It is now available ported to SYCL for highly parallel compression of whole arrays, such as applications that read and write large datasets to and from the disk.
GitHub
Kokkos Core implements a programming model in C++ for writing performance portable applications targeting all major HPC platforms. Kokkos Core can use SYCL, OpenMP*, and C++ threads as back end programming models.
Tech Video
Zheming Jin, a researcher at Oak Ridge National Laboratory (ORNL), evaluates DPC++ by porting several benchmarking applications.
Tech Video
Gordon Brown (a principal software engineer at Codeplay*) talks about scaling kernels migrated with SYCL to pre-exascale machines.
Tech Paper (PDF)
This paper presents the first steps toward solving the diverse heterogeneous computing problem using oneAPI—a cross-industry effort to develop an open, standards-based unified programming model that extends standard C++ with SYCL to provide portable parallelism across diverse processor architectures.
Tech Video
Steffen Christgau of the Zuse Institute Berlin shares experiences with migrating a typical CUDA stencil application code to DPC++/SYCL with the help of the Intel DPC++ Compatibility tool.
Tech Video
István Z. Reguly of Pázmány Péter Catholic University (PPCU) gives an overview of performance achieved with DPC++ on Intel CPUs on MG-CFD (an unstructured-mesh CFD mini app) and OpenSBLI (a structured mesh academic CFD code). He also compares results to OpenMP implementations and explores key differences and bottlenecks based on Intel® VTune™ Profiler and Intel® Advisor feedback.
Geology and Geography
GitHub
SeisSol is a scientific software for the numerical simulation of seismic wave phenomena and earthquake dynamics. SeisSol uses high-order discontinuous Galerkin discretization with an arbitrary derivative (ADER) local time stepping on unstructured adaptive tetrahedral meshes. SeisSol is now available with SYCL parallel accelerator offload support, thanks to Leibniz-Rechenzentrum (LRZ).
GitHub
easyWave is an application that simulates tsunami generation and propagation for early warning and emergency response. It uses GPU acceleration to speed up the calculations. Originally developed at the German Research Center for Geosciences (GFZ) in Potsdam, members of the Zuse Institute Berlin (ZIB) migrated the code base to SYCL using the Intel® DPC++ Compatibility Tool.
GitHub
The Centre for Development of Advanced Computing (C-DAC) uses the Intel® DPC++ Compatibility Tool for migrating SeisAcoMod2D, a seismic application, from CUDA to SYCL. Intel® VTune™ Profiler helps identify bottlenecks in the migrated SYCL code and achieve performance portability on Intel® Data Center GPU Max Series.
GitHub
Universidad de Málaga migrated the tsunami prediction simulation Tsunami-HySEA from CUDA to SYCL. This allows users to be independent of individual hardware vendors. With a single source, the application runs performant on NVIDIA* hardware and Intel Data Center Max Series GPUs.
Aerodynamics and Fluid Dynamics
Conference Proceedings
Researchers at Old Dominion University and NASA* ported Fun3D Computational Fluid Dynamics (CFD) kernels to SYCL for use with Intel® Data Center GPU Max Series 1550 and large-scale heterogeneous systems. To achieve their performance goals, they made extensive use of the Explicit SIMD SYCL Extension (ESIMD) API for Intel GPUs.
GitHub
Indian Institute of Technology Goa (IIT Goa)
"IIT Goa has developed an in-house CFD solver to simulate incompressible turbulent flows. To port our solver to GPUs, we are working with the unsteady Poisson equation, a model template for our CFD solver. Using Intel's SYCLomatic tool for oneAPI, this code is migrated to SYCL, thus opening up other vendor and architectural alternatives. We look forward to using the migrated SYCL code on different platform architectures and migrating our CFD solver to SYCL."
Video
SankhyaSutra Labs achieves functional and performance portability for a highly parallelizable lattice Boltzmann solver. This solver is based on a SYCL programming model in a heterogeneous platform, which is based on Intel® CPU and GPU architectures.
Tech Video
Eric Nielson (a research scientist at NASA*) and Dr. Mohammad Zubair (a computer science professor at Old Dominion University) share their experiences with moving kernels optimized for CUDA.
Math
GitLab
"The publicly available ELPA library provides highly efficient and highly scalable direct eigensolvers for symmetric (hermitian) matrices targeting all kinds of HPC systems up to the current exascale class.
ELPA both works on CPUs and on discrete GPUs. The Max Planck Computing and Data Facility (MPCDF) in collaboration with Intel engineers took the effort to develop a SYCL back end for Intel GPUs."
GitLab*
This C++ template library for linear algebra implements matrix and vector operations, geometric transformations, numerical solvers, and related algorithms. The Eigen n-dimensional tensor operations back end fully supports SYCL.
GitHub
This software framework is designed to accelerate scientific discovery for applications that solve partial differential equations on block-structured meshes. AMReX features GPU acceleration that includes SYCL back ends.
GitHub
LibreTT is a portable Tensor Transpose library that incorporates and supersedes the original CUDA Tensor Transpose (cuTT) library. Enhancements include adding thread safety and SYCL support for Intel GPU accelerators.
GitHub
For extremely performance-critical code (such as low-level linear algebraic libraries), engineering work-arounds might become necessary to achieve the desired performance and portability goals.
Image and Video Processing
Blog
NEON’s Airborne Observation Platform (AOP) is designed to collect long-term, open-access ecological data to understand better how US ecosystems are changing. Its color-blending algorithm for photography code is implemented with the SYCL programming model for enhanced portability across diverse computing platforms using Intel® DPC++ Compatibility Tool.
Contrel* Website
Contrel migrated their automatic inspection solution to the SYCL open, standards-based programming model for heterogeneous computing, using the Intel® DPC++ Compatibility Tool in the process. It is now released with SYCL-enabled GPU offload.
Company Website
Hangzhou Arcvideo Technology Co., Ltd., a Chinese smart video solution and cloud service provider, creates a single portable code base for the Arcvideo application by migrating CUDA kernels to SYCL with the Intel DPC++ Compatibility Tool. The company achieves competitive performance with reduced power consumption on Intel Data Center GPU Flex Series.
GitHub
Blender* Foundation unites with Intel to import Blender, the open source 3D graphics software adopted by millions of users worldwide, to SYCL. As a result, the SYCL enabled implementation of the Blender cycles renderer can take advantage of processors for Intel® Arc™ graphics. The most recent version, Blender 3.6, supports hardware ray tracing on Intel® Arc™ GPUs thanks to the Intel® Embree version 4 addition to the SYCL import.
Tech Article
Zheming Jin describes his experience of converting a CUDA implementation of a parallel graph coloring algorithm to SYCL.
Finance
Press Release
STAC-A2 is a compute and memory-intensive industry benchmark in the field of financial market derivatives risk analysis. The oneAPI STAC-A2 Solution under Test (SUT) benchmark implementation brings compatibility with SYCL and impressive performance results.
Tech Video
In quantitative finance, the Monte Carlo method is a popular approach when using GPUs. Dr. Suiunbek Ibraey from D&T Technology used SYCL to code the existing model in the new framework. Using this approach, SYCL puts the model-specific part into the kernel code and leaves the parallel execution to oneAPI constructs, speeding up model development.
Support Forums
Intel® oneAPI Data Parallel C++
Support for Intel® oneAPI DPC++ Compiler, Intel® oneAPI DPC++ Library (oneDPL), Intel® DPC++ Compatibility Tool, and Intel® Distribution for GDB*.
Migrate to SYCL
A one-stop forum to get assistance migrating your existing code to SYCL.