ViennaCL - The Vienna Computing Library  1.7.1
Free open-source GPU-accelerated linear algebra and solver library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
device_utils.hpp File Reference

Various utility implementations for dispatching with respect to the different devices available on the market. More...

#include <CL/cl.h>
#include <stddef.h>
#include <map>
#include <string>
#include "viennacl/forwards.h"

Go to the source code of this file.

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 
 viennacl::ocl
 OpenCL backend. Manages platforms, contexts, buffers, kernels, etc.
 

Macros

#define VIENNACL_OCL_MAX_DEVICE_NUM   8
 
#define VIENNACL_DEVICE_MAP(device, arch)   if (name.find(device,0)!=std::string::npos) return arch;
 

Enumerations

enum  viennacl::ocl::vendor_id {
  viennacl::ocl::beignet_id = 358, viennacl::ocl::intel_id = 32902, viennacl::ocl::nvidia_id = 4318, viennacl::ocl::amd_id = 4098,
  viennacl::ocl::unknown_id = 0
}
 
enum  viennacl::ocl::device_architecture_family {
  viennacl::ocl::tesla = 0, viennacl::ocl::fermi, viennacl::ocl::kepler, viennacl::ocl::maxwell,
  viennacl::ocl::evergreen, viennacl::ocl::northern_islands, viennacl::ocl::southern_islands, viennacl::ocl::volcanic_islands,
  viennacl::ocl::unknown
}
 

Functions

device_architecture_family viennacl::ocl::get_architecture_family (cl_uint vendor_id, std::string const &name)
 

Detailed Description

Various utility implementations for dispatching with respect to the different devices available on the market.

Definition in file device_utils.hpp.

Macro Definition Documentation

#define VIENNACL_DEVICE_MAP (   device,
  arch 
)    if (name.find(device,0)!=std::string::npos) return arch;
#define VIENNACL_OCL_MAX_DEVICE_NUM   8

Definition at line 25 of file device_utils.hpp.