Hardware Support Tool
Synopsis
The computecpp_info tool displays information about the OpenCL platforms that are available, and which can be used with ComputeCpp.
computecpp_info [OPTION]
Options
-h --help
Lists the commands available
-v --verbose
Verbose output showing additional information such as OpenCL extensions
-t --target
Specifies the filter for searching devices in the form [platform]:[device_type].
The option --target requires an argument in the format [option]=[argument], e.g. --target platform=intel.
--dump-device-compiler-flags
Outputs the flags required by the device compiler
--dump-is-supported
Checks whether the current platform is supported.
--dump-version
Prints the ComputeCpp version number as Major.Minor Target Options
--compiler-target
Enables compiler-target support
Target Options
The option --target
requires an argument in the format [option\]=\[argument\]
, e.g. ``--target platform=intel```.
The following table summarizes the platform and device_type targets:
Argument | Target | Description |
---|---|---|
platform | amd | AMD(R) platform |
platform | intel | Intel(R) platform |
platform | *, any or |
All platforms |
:device_type | gpu | GPU devices |
:device_type | cpu | CPU devices |
:device_type | accel | Accelerator devices |
:device_type | *, any or |
All devices |
:device_type | Default device |
Here are some example ComputeCpp targets:
Target | Selected |
---|---|
intel | Default device on Intel(R) platform |
intel:* | All devices on Intel platform |
:cpu | All CPU devices on any platform |
amd:gpu | All GPU devices on AMD(R) platform |
More examples of invocation:
computecpp_info --target=intel
computecpp_info --target=amd:cpu
computecpp_info --target=:cpu
Supported Devices
computecpp_info
reports whether the system where it is running is supported
by the ComputeCpp Package.
This tool checks for availability of:
- Supported system libraries (i.e, libstdC{pp})
- Supported operating system
- Supported OpenCL Platform Driver
- SPIR support
- In the case of CPU devices, relevant vectorization hardware support (e.g, SSE4.1 on Intel CPU devices)
The support status is shown before device attributes are listed and can be either YES, UNTESTED or NO with an additional explanation. YES means the device running that driver on that OS has been tested by Codeplay Software Ltd. UNTESTED indicates the device has not been tested - it is still possible the device will work with ComputeCpp, but ComputeCpp support may not be able to provide detailed answers to problems. NO indicates that the device does not support SPIR, which means that ComputeCpp will not be able to run on this device. Please refer to the ComputeCpp Platform Support Notes for details on potential issues with certain device drivers.
Note that computecpp_info does not check for SPIR-V or PTX support on drivers, as this is currently an experimental feature. This means that some drivers that support SPIR-V or PTX may appear as unsupported or untested.
Examples
Retrieving basic information
computecpp_info provides dump flags which produce basic information using minimal output, intended to be used as output for user scripts or build tools.
--dump-version* returns the version of ComputeCpp.
The --dump-device-compiler-flags
outputs the flags used by the device
compiler to build SYCL code:
computecpp_info --dump-device-compiler-flags -O2 -mllvm -inline-threshold=1000 -emit-llvm
The option --dump-is-supported
will return YES, UNTESTED or NO
indicating if the platform is supported.
The platform is supported if at least one device (using a specific driver)
has been tested by Codeplay Software Ltd.
NO will only be returned if none of the devices in the system support SPIR.
computecpp_info --dump-is-supported
YES