Skip to content

Intel oneAPI Base + HPC Toolkit

Overview

The Intel oneAPI module gives access to many tools meant for developing high-performance applications which function across many architectures. This includes tools such as compilers, math libraries, and MPI.

Availability

Cluster Module/Version
BOSE oneapi, oneapi-*
BGSC Not Available

By itself the oneapi module is not useful, but its required to enable access to all the other oneAPI modules you'd want to use.

Once loaded using module load oneapi, you can view the list of currently installed modules using module avail oneapi.

Load your chosen modules using module load oneapi-XXX such as module load oneapi-compiler to use the Intel compiler.

List of oneAPI Modules
[username@bose ~]$ module load oneapi
[username@bose ~]$ module avail oneapi
------------------------------------------ /data/software/intel/oneapi/modulefiles -------------------------------------------
oneapi-advisor/2021.3.0        oneapi-debugger/10.1.2         oneapi-icc/2023.1.0                  oneapi-mkl/2021.3.0
oneapi-advisor/2023.1.0        oneapi-debugger/2023.1.0       oneapi-icc32/2023.1.0                oneapi-mkl/2023.1.0
oneapi-ccl/2021.3.0            oneapi-dev-utilities/2021.3.0  oneapi-init_opencl/2021.3.0          oneapi-mkl32/2021.3.0
oneapi-ccl/2021.9.0            oneapi-dev-utilities/2021.9.0  oneapi-init_opencl/2023.1.0          oneapi-mkl32/2023.1.0
oneapi-clck/2021.3.0           oneapi-dnnl-cpu-gomp/2021.3.0  oneapi-inspector/2021.3.0            oneapi-mpi/2021.3.0
oneapi-clck/2021.7.3           oneapi-dnnl-cpu-gomp/2023.1.0  oneapi-inspector/2023.1.0            oneapi-mpi/2021.9.0
oneapi-compiler-rt/2021.3.0    oneapi-dnnl-cpu-iomp/2021.3.0  oneapi-intel_ipp_ia32/2021.3.0       oneapi-oclfpga/2021.3.0
oneapi-compiler-rt/2023.1.0    oneapi-dnnl-cpu-iomp/2023.1.0  oneapi-intel_ipp_ia32/2021.8.0       oneapi-oclfpga/2023.1.0
oneapi-compiler-rt32/2021.3.0  oneapi-dnnl-cpu-tbb/2021.3.0   oneapi-intel_ipp_intel64/2021.3.0    oneapi-tbb/2021.3.0
oneapi-compiler-rt32/2023.1.0  oneapi-dnnl-cpu-tbb/2023.1.0   oneapi-intel_ipp_intel64/2021.8.0    oneapi-tbb/2021.9.0
oneapi-compiler/2021.3.0       oneapi-dnnl/2021.3.0           oneapi-intel_ippcp_ia32/2021.3.0     oneapi-tbb32/2021.3.0
oneapi-compiler/2023.1.0       oneapi-dnnl/2023.1.0           oneapi-intel_ippcp_ia32/2021.7.0     oneapi-tbb32/2021.9.0
oneapi-compiler32/2021.3.0     oneapi-dpct/2021.3.0           oneapi-intel_ippcp_intel64/2021.3.0  oneapi-vtune/2021.5.0
oneapi-compiler32/2023.1.0     oneapi-dpct/2023.1.0           oneapi-intel_ippcp_intel64/2021.7.0  oneapi-vtune/2023.1.0
oneapi-dal/2021.3.0            oneapi-dpl/2021.4.0            oneapi-itac/2021.3.0
oneapi-dal/2023.1.0            oneapi-dpl/2022.1.0            oneapi-itac/2021.9.0

This is the current list of modules as of 4/24/2024.

Example (Compilers, MKL)

Use Interactive Mode (for compiling software) on BOSE if not using Slurm's sbatch feature:

sdevelop

Load the oneAPI module:

module load oneapi

Load the Intel compiler and MKL modules:

module load oneapi-compiler 
module load oneapi-mkl
Loading all at once

Did you know you can combine all of the module load commands into a single one if you already know what you are going to use?

module load oneapi oneapi-compiler oneapi-mkl

Configure using either Intel's nextgen compiler (icx, icpx) or their classic version (icc, icpc):

# For Intel's Nextgen Compiler
CC=icx CXX=icpx ./configure --prefix=$HOME/my-software

# For Intel's Classic Compiler
CC=icc CXX=icpc ./configure --prefix=$HOME/my-software

Some software can only be compiled with one of the above, so you may have to experiment with both. Older software typically favors the classic compiler.

Compiler and install your program:

make -j $SLURM_NTASKS  # $SLURM_NTASKS only works if using 'sdevelop' or 'sbatch'.
make install

Real Example

Has your research group used Intel oneAPI Base + HPC Toolkit in a project? Contact the HPC Team and we'd be glad to feature your work.

Resources