This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.2)

OpenCLLink Setup

This section is concerned with the way that OpenCLLink is set up and configured for your machine. It will also help to track down and correct problems.

Setup and Testing

OpenCLLink is designed to work automatically after Mathematica is installed with no special configuration. You can test this by using the OpenCLQ function.
This loads the OpenCLLink application.
Click for copyable input
This checks if OpenCLLink is supported. If it returns True, as shown below, then OpenCLLink will work.
Click for copyable input
If OpenCLQ does not return True, then OpenCLLink will not work. However, you might be able to configure your machine to fix this.
There are five main reasons for getting False from OpenCLQ:
  • Unsupported operating system—OpenCLLink is not supported on SUN's Solaris or versions of Apple's Mac OS X earlier than 10.6.
  • Unsupported hardware—OpenCLLink only works on OpenCL-capable graphics cards and/or CPUs with SSE3 support. You can find out if your graphics card is supported on the NVIDIA CUDA website or the AMD/ATI OpenCL website.
  • Wrong ATI Driver—Starting with version 10.10, ATI hardware has two versions of the driver, one supporting OpenCL and one not. The AMD Catalyst Accelerated Parallel Processing (APP) Technology Edition of the driver is needed for OpenCL to function. The driver is only supported on certain cards and can be downloaded from the AMD/ATI Driver website.
    • Missing OpenCL ATI Stream SDK—For ATI hardware not supported by the APP driver, or if planning on using the CPU, the AMD/ATI Stream SDK is needed. The Stream SDK can be downloaded from the AMD/ATI OpenCL website.
    The rest of this section describes steps you can carry out to try and enable OpenCLLink.

Mac OS X

Apple Mac OS X Snow Leopard (10.6) includes OpenCL support as part of the operating system. OS X versions earlier than Snow Leopard are not supported.


In general, if CUDALink works then OpenCLLink should work. "CUDALink Setup" tells you how to test CUDALink and make it operational; this should be sufficient to resolve problems with OpenCLLink.


An OpenCL-capable video card (see next section) is required to use OpenCLLink. The AMD Catalyst driver is required as well. Some video cards have the AMD Catalyst Accelerated Parallel Processing (APP) driver; in those cases, the driver is sufficient. If the APP driver is not supported, then the ATI Stream SDK is required to use OpenCLLink.
The AMD Catalyst driver can be downloaded from the AMD/ATI Driver website while the ATI Stream SDK can be downloaded from the AMD/ATI Stream website.

Supported AMD/ATI Video Hardware

The following AMD/ATI video hardware is supported by OpenCLLink:
  • ATI Radeon HD: ATI Radeon HD 5970, ATI Radeon HD 5870, ATI Radeon HD 5850, ATI Radeon HD 5770, ATI Radeon HD 5750, ATI Radeon HD 5670, ATI Radeon HD 5570, ATI Radeon HD 4890, ATI Radeon HD 4870 X2, ATI Radeon HD 4870, ATI Radeon HD 4850 X2, ATI Radeon HD 4850, ATI Radeon HD 4830, ATI Radeon HD 4770, ATI Radeon HD 4670, ATI Radeon HD 4650, ATI Radeon HD 4550, or ATI Radeon HD 4350
  • ATI FirePro: ATI FirePro V8800, ATI FirePro V8750, ATI FirePro V8700, ATI FirePro V7750, ATI FirePro V5700, or ATI FirePro V3750
  • ATI FireStream: ATI FireStream 9270 or ATI FireStream 9250
  • ATI Mobility Radeon HD: ATI Mobility Radeon HD 4870, ATI Mobility Radeon HD 4860, ATI Mobility Radeon HD 4850X2, ATI Mobility Radeon HD 4850, ATI Mobility Radeon HD 4830, ATI Mobility Radeon HD 4670, ATI Mobility Radeon HD 4650, ATI Mobility Radeon HD 4500 Series, or ATI Mobility Radeon HD 4300 Series
    • ATI Mobility FirePro: ATI Mobility FirePro M7820, ATI Mobility FirePro M7740, or ATI Mobility FirePro M5800
    The ATI OpenCL implementation also registers x86 CPUs with SEE 2.x or later support as OpenCL devices. The CPUs can be used with OpenCLLink by specifying the appropriate and options.


On Mac OS X, OpenCLQ checks if OS X 10.6 (Snow Leopard) is installed. It would fail if not detected, since previous versions are not supported. On NVIDIA hardware, OpenCLQ follows the same methods of detection as CUDAQ in CUDALink; refer to "CUDALink Setup" for more information.


This section will only be applicable for systems with AMD/ATI GPU or a CPU used along with the AMD/ATI Stream SDK.
On both Linux and Windows, the environment variable is used to determine the path to the AMD/ATI Stream SDK. If not detected, then the following paths are checked:
"Windows""C:\\Program Files\\ATI Stream"
"Windows-x86-64""C:\\Program Files (x86)\\ATI Stream"

Default path to the AMD/ATI Stream SDK in case is not defined.

The variable can be checked in Mathematica using the following.
Click for copyable input
After detection, the result is stored in .

Error Messages

The error messages returned by OpenCLInformation are the same as CUDAInformation; refer to CUDALink detection failure error codes.