One of ArrayFire's biggest features is the ability for code to be written just once and run on a plethora of devices. In this post, we show the outputs of <strong>af:info()</strong> from various devices available to us.

<h3>Desktop Processors</h3>

<h4 style="color:#ed1c24;">AMD GPUs (OpenCL)</h4>
<pre>
ArrayFire v2.1 (OpenCL, 64-bit Linux, build 4b9115c)
License: Standalone (/home/arrayfire/.arrayfire.lic)
Addons: MGL4, DLA, SLA
Platform: AMD Accelerated Parallel Processing, Driver: 1214.3 (VM)
[0]: Tahiti, 2907 MB, OpenCL Version: 1.2
Compute Device: [0]
</pre>

<h4 style="color:#ed1c24;">AMD APU/CPU (OpenCL)</h4>

<h4 style="color:#0071c5;">Intel CPU (OpenCL)</h4>
<pre>
ArrayFire v2.1 (OpenCL, 64-bit Linux, build 4b9115c)
License: Standalone (/home/arrayfire/.arrayfire.lic)
Addons: MGL4, DLA, SLA
Platform: Intel(R) OpenCL, Driver: 1.2.0.83073
[0]: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz, 7922 MB, OpenCL Version: 1.2
Compute Device: [0]
</pre>

<h4 style="color:#0071c5;">Intel HD Graphics (OpenCL)</h4>
<pre>
ArrayFire v2.1 (OpenCL, 64-bit Mac OSX, build a01d9b3)
License: Standalone (/Users/arrayfire/arrayfire.lic)
Addons: MGL4, DLA, SLA
Platform: Apple, Driver: 1.2(Jun  9 2014 13:24:19)
[0]: Iris Pro, 1536 MB, OpenCL Version: 1.2
Compute Device: [0]
</pre>

<h4 style="color:#0071c5;">Intel Xeon Phi Coprocessor (OpenCL)</h4>
<pre>
ArrayFire v2.1 (OpenCL, 64-bit Linux, build 4b9115c)
License: Standalone (/home/arrayfire/.arrayfire.lic)
Addons: MGL4, DLA, SLA
Platform: Intel(R) OpenCL, Driver: 1.2.0.82248
[0]: Intel(R) Many Integrated Core Acceleration Card, 11634 MB, OpenCL Version: 1.2
 1 : Genuine Intel(R) CPU  @ 2.60GHz, 64372 MB, OpenCL Version: 1.2
Compute Device: [0]
</pre>

<h4 style="color:#76b900;">NVIDIA GPUs (CUDA)</h4>
<pre>
ArrayFire v2.1 (CUDA, 64-bit Linux, build 4b9115c)
License: Standalone (/home/arrayfire/.arrayfire.lic)
Addons: MGL4, DLA, SLA
Platform: CUDA toolkit 6.0, Driver: 340.21
[0]: Tesla K40c, 11520 MB, CUDA Compute 3.5 
 1 : Quadro K5000, 4096 MB, CUDA Compute 3.0 
Compute Device: [0], Display Device: [1]
Memory Usage: 11406 MB free (11520 MB total)
</pre>

<h4 style="color:#76b900;">NVIDIA GPUs (OpenCL)</h4>
<pre>
ArrayFire v2.1 (OpenCL, 64-bit Linux, build 4b9115c)
License: Standalone (/home/arrayfire/.arrayfire.lic)
Addons: MGL4, DLA, SLA
Platform: NVIDIA CUDA, Driver: 340.21
[0]: Tesla K40c, 11519 MB, OpenCL Version: 1.1
 1 : Quadro K5000, 4095 MB, OpenCL Version: 1.1
Compute Device: [0]
</pre>

<h3>Embedded Processors</h3>

<h4 style="color:#0084ab;">ARM Mali GPU (OpenCL) <sup>#</sup></h4>
<pre>
ArrayFire v2.1  (OpenCL, 32-bit Linux, build 1971d38)
License: Standalone (ARM Mali)
Addons: MGL16, DLA, SLA
Platform: ARM Platform, Driver: 1.1
[0]: Mali-T604, 1998 MB, OpenCL Version: 1.1
</pre>

<h4 style="color:#76b900;">NVIDIA Tegra K1 (CUDA)</h4>
<pre>
ArrayFire v2.1 (CUDA, 32-bit Linux, build 4c3c009)
License: Standalone (Tegra)
Addons: MGL16, DLA, SLA
ARM
 0 : GK20A, 1747 MB, CUDA Compute 3.2 
Memory Usage: 106 MB free (1747 MB total)
</pre>

<h4 style="color:#db272a;">Qualcomm Snapdragon SoC (OpenCL) <sup>#</sup></h4>
<pre>
ArrayFire v2.1  (OpenCL, 32-bit Linux, build bedc9ca)
License: Standalone
Addons: MGL16, DLA, SLA
[0]: QUALCOMM Adreno(TM), 1389 MB, OpenCL Version: 1.1
 1 : QUALCOMM Krait(TM), 1389 MB, OpenCL Version: 1.1
Compute Device: [0]
</pre>


#: Experimental versions. Email <a href="mailto:technical@arrayfire.com" >technical@arrayfire.com</a> for access.

The devices shown above are ones we have in-house for demonstration purposes. This is not an exhaustive list.