fast::DeviceManager class

Singleton class for retrieving and setting default execution devices

Base classes

class Object
Base class for all FAST objects.

Public static functions

static auto getInstance() -> DeviceManager*
static void setDefaultPlatform(DevicePlatform platform)
static void deleteInstance()
static auto getHostDevice() -> Host::pointer

Public functions

auto getDevice(DeviceCriteria criteria) -> OpenCLDevice::pointer
auto deviceSatisfiesCriteria(OpenCLDevice::pointer, const DeviceCriteria& criteria) -> bool
auto getAllDevices(bool enableVisualization = false) -> std::vector<OpenCLDevice::pointer>
auto getAllGPUDevices(bool enableVisualization = false) -> std::vector<OpenCLDevice::pointer>
auto getAllCPUDevices(bool enableVisualization = false) -> std::vector<OpenCLDevice::pointer>
auto getOneOpenCLDevice(bool enableVisualization = false, DevicePlatform platform = DEVICE_PLATFORM_ANY) -> OpenCLDevice::pointer
auto getOneGPUDevice(bool enableVisualization = false) -> OpenCLDevice::pointer
auto getOneCPUDevice(bool enableVisualization = false) -> OpenCLDevice::pointer
void setDefaultDevice(ExecutionDevice::pointer device)
auto getDefaultDevice() -> ExecutionDevice::pointer
auto getDevices(const DeviceCriteria& criteria) -> std::vector<PlatformDevices>
auto getDevices(DeviceCriteria criteria, bool enableVisualization) -> std::vector<OpenCLDevice::pointer>
auto getPlatforms(DevicePlatform platformCriteria) -> std::vector<cl::Platform>
auto deviceSatisfiesCriteria(const DeviceCriteria& criteria, const cl::Device& device, const cl::Platform& platform) -> bool
auto deviceHasOpenGLInteropCapability(const cl::Device& device, const cl::Platform& platform) -> bool
auto devicePlatformMismatch(const cl::Device& device, const cl::Platform& platform) -> bool
auto getDevicesForBestPlatform(const DeviceCriteria& deviceCriteria, std::vector<PlatformDevices>& platformDevices) -> std::vector<cl::Device>