ArrayFire is a general-purpose library that simplifies the process of developing software that targets parallel and massively-parallel architectures including CPUs, GPUs, and other hardware acceleration devices.
arrayfire-d
is a D binding for ArrayFire.
Installation
Getting ArrayFire
To install arrayfire
library, see resource.
arrayfire_d
Using Add arrayfire_d
in dub.json as a dependency.
"dependencies": {
"arrayfire_d": "~>0.1.0"
}
Specifying Backend:
ArrayFire library supports the following backends:
- CPU :
afcpu
- OpenCL :
afopencl
- CUDA :
afcuda
- Unified backend :
af
To specify the backend you want to use place it in your dub.json
file.
For example, if you have a Nvidia GPU and want to use the CUDA backend:
dub.json
:
{
"name": "af_example",
"authors": [
"John Doe"
],
"libs": ["afcuda"],
"description": "ArrayFire Example"
}
If you specify af
as ArrayFire backend, the following preference would be used by ArrayFire
to harvest maximum efficiency:
- CUDA
- OpenCL
- CPU
LICENSE
This software is distributed under the BSD 3-Clause License.
Copyright © 2017, Prasun Anand and ArrayFire