Intel oneAPI

The Intel oneAPI effort seeks to provide a unified cross-architecture programming model. It takes a toolkit-based approach. The linked site also points to release notes, documentation, etc.

Intel oneAPI Base, HPC and AI toolkits

Intel provides oneAPI toolkits in form of oneAPI Base, HPC or AI toolkits.

On most LRZ systems, Intel oneAPI Base and HPC toolkits are provided with a unified intel-toolkit modules.

Notes

Fortran and C/C++ compilers comprise both traditional and new, LLVM-based compiler drivers:

  • traditional: ifort, icc, icpc
  • LLVM-based ("next-gen"): ifx, icx, icpx, dpcpp


Loading any version of intel-toolkit module will auto-load most oneAPI components. A few components are also made available to you in the environment, you can look at all the available modules via, "module avail" after loading the intel-toolkit module. 


These are the intel-oneapi components and its versions provided in the intel-oneapi-toolkit wrapper modules,


Intel oneAPI component

module name

DPC++ compiler

intel-compilers

C++ classic

intel-compilers

Fortran

intel-compilers

Fortran classic

intel-compilers

MPI

intel-mpi

MKL

intel-mkl

VTUNE

intel-vtune

DPC++ compatibility tool

intel-dpcpp-ct

Inspector

intel-inspector

Advisor

intel-advisor

Collective Communications Library

intel-ccl

Deep Neural Networks Library

intel-dnn

ITAC

intel-itac

TBB

intel-tbb

IPP

intel-ipp

Cluster checker

intel-clck

DAL

intel-dal

Processing Library (oneVPL)

intel-vpl

IPP Crypto (oneIPP-cp)

intel-ippcp


Access

# Load the Intel oneAPI components via a unified module
# Loading the intel-toolkit will auto load most components of the Intel oneAPI Base and HPC toolkit

> module avail intel-toolkit
---------------------------------------------------- /lrz/sys/spack/release/24.1.0/modules/x86_64 -----------------------------------------------------
intel-toolkit/2023.1.0  intel-toolkit/2023.2.0  intel-toolkit/2024.0.0  

> module load intel-toolkit/2024.0.0

Note: You are loading a complete Base and HPC Intel-OneAPI toolkit / environment.
      This will remove any conflicting modules
      already loaded in your environment

  Loading requirement: intel/2024.0.0 intel-mpi/2021.11.0 intel-mkl/2024.0.0 intel-dpcpp-ct/2024.0.0
    intel-ccl/2021.11.0 intel-dnn/2024.0.0 intel-itac/2022.0.0 intel-tbb/2021.11.0 intel-ipp/2021.10.0 intel-dal/2024.0.0
    intel-ippcp/2021.9.0 intel-dpl/2022.3.0 intel-dpct/2024.0.0


# Most oneAPI Base and HPC components are auto loaded but a few are made available in the environment such as,  

> module avail
---------------------------------------- /lrz/sys/spack/release/24.1.0/modules/x86_64/.intel-toolkit/2024.0.0 -----------------------------------------
intel-advisor/2024.0.0  intel-dnn/2024.0.0       intel-dpl/2022.3.0        intel-ippcp/2021.9.0  intel-vtune/2024.0.0  
intel-ccl/2021.11.0     intel-dpcpp-ct/2024.0.0  intel-inspector/2024.0.0  intel-itac/2022.0.0   
intel-dal/2024.0.0      intel-dpct/2024.0.0      intel-ipp/2021.10.0       intel-tbb/2021.11.0   


# Then you can load any oneAPI components as,

> module load intel-vtune
...

# intel module will enable DPC++/SYCL
# Check available platforms/devices with,

> sycl-ls --verbose # Check available platforms/devices