arrayfire

A general purpose GPU library.

Latest version: 3.10.0

Add to xmake.lua

add_requires("arrayfire 3.10.0")

Learn how to add and link packages with Xmake →

Information

License
BSD-3-Clause
Recipe updated
2025-10-11T04:11:19.000Z

Platforms

  • linux: i386, x86_64, armv7, armv7s, arm64, mips, mips64, mipsel, mips64el, loong64, riscv64, s390x, ppc, ppc64, ppc64el, sparc64

Options

compute_lib
Compute library for signal processing and linear algebra routines · Type: string · Default: FFTW/LAPACK/BLAS · Values: Intel-MKL, FFTW/LAPACK/BLAS
cpu
Build ArrayFire with a CPU backend. · Type: boolean · Default: true
cuda
Build ArrayFire with a CUDA backend. · Type: boolean · Default: false
cudnn
Use cuDNN for convolveNN functions. · Type: boolean · Default: false
fast_math
Use lower precision but high performance numeric optimizations. · Type: boolean · Default: true
forge
Forge libs are not built by default as it is not link time dependency. · Type: boolean · Default: false
imageio
Build ArrayFire with Image IO support. · Type: boolean · Default: false
kernel_to_disk
Enable caching kernels to disk. · Type: boolean · Default: true
logging
Build ArrayFire with logging support. · Type: boolean · Default: true
mkl_thread_layer
The thread layer to choose for MKL. · Type: string · Default: TBB · Values: TBB, GNU OpenMP, Intel OpenMP, Sequential
nonfree
Build ArrayFire nonfree algorithms. · Type: boolean · Default: false
oneapi
Build ArrayFire with a oneAPI backend. · Type: boolean · Default: false
opencl
Build ArrayFire with a OpenCL backend. · Type: boolean · Default: false
stacktrace
Add stacktraces to the error messages. · Type: boolean · Default: true
stacktrace_type
The type of backtrace features. · Default: Basic · Values: None, Basic, libbacktrace, addr2line
unified
Build Backend-Independent ArrayFire API. · Type: boolean · Default: true

Versions

  • v3.9.0
  • v3.10.0

Dependencies

Install with xrepo

Install the package independently of a project and inspect its available configuration.

install

xrepo install "arrayfire 3.10.0"

show info

xrepo info "arrayfire"

Link a library to your target

Declare the requirement, then attach the library to the target that uses it.

xmake.lua

add_requires("arrayfire 3.10.0")

target("demo")
    set_kind("binary")
    add_files("src/*.cpp")
    add_packages("arrayfire")

Open a package environment

Open a shell with the environment exported by this package. Use the executable names documented by the package.

enter shell

xrepo env -b "arrayfire 3.10.0" shell