Intel oneAPI Programming Overview
The oneAPI programming model provides a comprehensive and unified
portfolio of developer tools that can be used across hardware targets,
including a range of performance libraries spanning several workload
domains. The libraries include functions custom-coded for each target
architecture, so the same function call delivers optimized performance
across supported architectures.
The oneAPI programming model

As shown in the figure above, applications that take advantage of the
oneAPI programming model can run on multiple target hardware platforms
ranging from CPU to FPGA. Intel offers oneAPI products as part of a set
of toolkits. The Intel® oneAPI Base Toolkit, Intel® oneAPI HPC Toolkit,
Intel® oneAPI IoT Toolkit, and several other toolkits feature
complementary tools based on specific developer workload needs. For
example, the Intel oneAPI Base Toolkit includes the Intel® oneAPI
DPC++/C++ Compiler, the Intel® DPC++ Compatibility Tool, select
libraries, and analysis tools.
- Developers who want to migrate existing CUDA* code to SYCL* for compilation with the DPC++ compiler can use theIntel DPC++ Compatibility Toolto help migrate their existing projects to SYCL* using DPC++.
- TheIntel oneAPI DPC++/C++ Compilersupports direct programming of code targeting accelerators. Direct programming is coding for performance when APIs are not available for the algorithms expressed in user code. It supports online and offline compilation for CPU and GPU targets and offline compilation for FPGA targets.
- API-based programming is supported via sets of optimized libraries. The library functions provided in the oneAPI product are pre-tuned for use with any supported target architecture, eliminating the need for developer intervention. For example, the BLAS routine available fromIntel® oneAPI Math Kernel Libraryis just as optimized for a GPU target as a CPU target.
- Finally, the compiled SYCL application can be analyzed and debugged to ensure performance, stability, and energy efficiency goals are achieved using tools such asIntel® VTune™ ProfilerorIntel® Advisor.
The Intel oneAPI Base Toolkit is available as a free download from the
Intel Developer
Zone.
Users familiar with Intel® Parallel Studio and Intel® System Studio may
be interested in the Intel oneAPI HPC
Toolkit
and Intel oneAPI IoT
Toolkit
respectively.