ArrayFire Binary Installation Instructions

Installing ArrayFire couldn't be easier. We ship installers for Windows, OSX, and Linux. Although you could build ArrayFire from source, we suggest using our pre-compiled binaries as they include the Intel Math Kernel Library to accelerate linear algebra functions.

Please note that although our download page requires a valid login, registration is free and downloading ArrayFire is also free. We request your contact information so that we may notify you of software updates and occasionally collect user feedback about our library.

In general, the installation process for ArrayFire looks like this:

  1. Install prerequisites
  2. Download the ArrayFire installer for your operating system
  3. Install ArrayFire
  4. Test the installation
  5. Where to go for help?

Below you will find instructions for

Windows

If you wish to use CUDA or OpenCL please ensure that you have also installed support for these technologies from your video card vendor's website.

Next download and run the ArrayFire installer. After it has completed, you need to add ArrayFire to the path for all users.

  1. Open Advanced System Settings:
    • Windows 8: Move the Mouse pointer to the bottom right corner of the screen, Right click, choose System. Then click "Advanced System Settings"
    • Windows 7: Open the Start Menu and Right Click on "Computer". Then choose Properties and click "Advanced System Settings"
  2. In Advanced System Settings window, click on Advanced tab
  3. Click on Environment Variables, then under System Variables, find PATH, and click on it.
  4. In edit mode, append AF_PATH%/lib. NOTE: Ensure that there is a semi-colon separating AF_PATH%/lib from any existing content (e.g. EXISTING_PATHS;AF_PATH%/lib;) otherwise other software may not function correctly.

Finally, verify that the path addition worked correctly. You can do this by:

  1. Open Visual Studio 2013. Open the HelloWorld solution which is located at AF_PATH%/examples/helloworld/helloworld.exe.
  2. Build and run the helloworld example. Be sure to, select the platform/configuration of your choice using the platform drop-down (the options are CPU, CUDA, and OpenCL) and Solution Configuration drop down (options of Release and Debug) menus. Run the helloworld example

Linux

Debian 8

First install the prerequisite packages:

# Prerequisite packages:
apt-get install libglfw3-dev cmake

# Enable GPU support (OpenCL):
apt-get install ocl-icd-libopencl1

If you wish to use CUDA, please download the latest version of CUDA and install it on your system.

Next download ArrayFire. After you have the file, run the installer.

./arrayfire_*_Linux_x86_64.sh --exclude-subdir --prefix=/usr/local

RedHat, Fedora, and CentOS

First install the prerequisite packages:

# Install prerequiste packages
yum install glfw cmake

On Centos and Redhat the glfw package is outdated and you will need to compile it from source. Please these instructions.

If you wish to use CUDA, please download the latest version of CUDA and install it on your system.

Next download ArrayFire. After you have the file, run the installer.

./arrayfire_*_Linux_x86_64.sh --exclude-subdir --prefix=/usr/local

Ubuntu 14.04 and later

First install the prerequisite packages:

# Prerequisite packages:
sudo apt-get install cmake

Ubuntu 14.04 will not have the libglfw3-dev package in its repositories. You can either build the library from source (following the instructions listed here) or install the library from a PPA as follows:

sudo apt-add-repository ppa:keithw/glfw3
sudo apt-get update
sudo apt-get install glfw3

After this point, the installation should proceed identically to Ubuntu 14.10 or newer.

If your system has a CUDA GPU, we suggest downloading the latest drivers from NVIDIA in the form of a Debian package and installing using the package manager. At present, CUDA downloads can be found on the NVIDIA CUDA download page Follow NVIDIA's instructions for getting CUDA set up.

If you wish to use OpenCL, simply install the OpenCL ICD loader along with any drivers required for your hardware.

# Enable GPU support (OpenCL):
apt-get install ocl-icd-libopencl1

Special instructions for Tegra X1

The ArrayFire binary installer for Terga X1 requires JetPack 2.3 or L4T 24.2 for Jetson TX1. This includes Ubuntu 16.04, CUDA 8.0 etc. If you are using ArrayFire on the Tegra X1 also install these packages:

sudo apt-get install libopenblas-dev liblapacke-dev

Special instructions for Tegra K1

If you are using ArrayFire on the Tegra K1 also install these packages:

sudo apt-get install libatlas3gf-base libatlas-dev libfftw3-dev liblapacke-dev

In addition to these packages, you will need to compile GLFW3 from source using the instructions above.

Finally, download ArrayFire. After you have the file, run the installer using:

./arrayfire_*_Linux_x86_64.sh --exclude-subdir --prefix=/usr/local

Mac OSX

On OSX there are several dependencies that are not integrated into the operating system. The ArrayFire installer automatically satisfies these dependencies using Homebrew. If you don't have Homebrew installed on your system, the ArrayFire installer will ask you do to so.

Simply download the ArrayFire installer and double-click it to carry out the installation.

ArrayFire can also be installed through Homebrew directly using brew install arrayfire; however, it will not include MKL acceleration of linear algebra functions.

Testing installation

After ArrayFire is installed, you can build the example programs as follows:

cp -r /usr/local/share/ArrayFire/examples .
cd examples
mkdir build
cd build
cmake ..
make

Getting help