SOFA plugin: SofaOpenCL  master
Open source framework for multi-physics simuation
sofa::gpu::opencl::OpenCLMemoryManager< T > Class Template Reference

#include <OpenCLMemoryManager.h>

Inheritance diagram for sofa::gpu::opencl::OpenCLMemoryManager< T >:

Detailed Description

template<class T>
class sofa::gpu::opencl::OpenCLMemoryManager< T >

OpenCLMemoryManager OpenCL and multi-GPU version of MemoryManager

Classes

struct  rebind
 

Static Public Member Functions

static int numDevices ()
 
static void hostAlloc (void **hPointer, int n)
 
static void memsetHost (host_pointer hPointer, int value, size_t n)
 
static void hostFree (const host_pointer hSrcPointer)
 
static void deviceAlloc (int d, device_pointer *dPointer, int n)
 
static void deviceFree (int d, device_pointer dSrcPointer)
 
static void memcpyHostToDevice (int d, device_pointer dDestPointer, const host_pointer hSrcPointer, size_t n)
 
static void memcpyDeviceToHost (int d, host_pointer hDestPointer, const device_pointer dSrcPointer, size_t n)
 
static void memcpyDeviceToDevice (int d, device_pointer dDestPointer, const device_pointer dSrcPointer, size_t n)
 
static void memsetDevice (int d, device_pointer dDestPointer, int value, size_t n)
 
static int getBufferDevice ()
 
static bool bufferAlloc (gl_buffer *, int, bool createBuffer=true)
 
static void bufferFree (const gl_buffer)
 
static bool bufferRegister (const gl_buffer)
 
static void bufferUnregister (const gl_buffer)
 
static bool bufferMapToDevice (device_pointer *dDestPointer, const gl_buffer)
 
static void bufferUnmapToDevice (device_pointer *dDestPointer, const gl_buffer)
 
static device_pointer deviceOffset (device_pointer memory, size_t offset)
 
static device_pointer null ()
 
static bool isNull (device_pointer p)
 
- Static Public Member Functions inherited from sofa::helper::MemoryManager< T >
static int numDevices ()
 
static void hostAlloc (host_pointer *hPointer, int n)
 
static void memsetHost (host_pointer hPointer, int value, size_t n)
 
static void hostFree (const host_pointer hSrcPointer)
 
static void deviceAlloc (int d, device_pointer *dPointer, int n)
 
static void deviceFree (int d, const device_pointer dSrcPointer)
 
static void memcpyHostToDevice (int d, device_pointer dDestPointer, const host_pointer hSrcPointer, size_t n)
 
static void memcpyDeviceToHost (int d, host_pointer hDestPointer, const void *dSrcPointer, size_t n)
 
static void memcpyDeviceToDevice (int d, device_pointer dDestPointer, const device_pointer dSrcPointer, size_t n)
 
static void memsetDevice (int d, device_pointer dDestPointer, int value, size_t n)
 
static int getBufferDevice ()
 
static bool bufferAlloc (buffer_id_type *, int, bool)
 
static void bufferFree (const buffer_id_type)
 
static bool bufferRegister (const buffer_id_type)
 
static void bufferUnregister (const buffer_id_type)
 
static bool bufferMapToDevice (device_pointer *, const buffer_id_type)
 
static void bufferUnmapToDevice (device_pointer *, const buffer_id_type)
 
static device_pointer deviceOffset (device_pointer dPointer, size_t offset)
 
static device_pointer null ()
 
static bool isNull (device_pointer p)
 

Function details

◆ bufferAlloc()

template<class T >
static bool sofa::gpu::opencl::OpenCLMemoryManager< T >::bufferAlloc ( gl_buffer ,
int  ,
bool  createBuffer = true 
)
inlinestatic

◆ bufferFree()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::bufferFree ( const  gl_buffer)
inlinestatic

◆ bufferMapToDevice()

template<class T >
static bool sofa::gpu::opencl::OpenCLMemoryManager< T >::bufferMapToDevice ( device_pointer dDestPointer,
const  gl_buffer 
)
inlinestatic

◆ bufferRegister()

template<class T >
static bool sofa::gpu::opencl::OpenCLMemoryManager< T >::bufferRegister ( const  gl_buffer)
inlinestatic

◆ bufferUnmapToDevice()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::bufferUnmapToDevice ( device_pointer dDestPointer,
const  gl_buffer 
)
inlinestatic

◆ bufferUnregister()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::bufferUnregister ( const  gl_buffer)
inlinestatic

◆ deviceAlloc()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::deviceAlloc ( int  d,
device_pointer dPointer,
int  n 
)
inlinestatic

◆ deviceFree()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::deviceFree ( int  d,
device_pointer  dSrcPointer 
)
inlinestatic

◆ deviceOffset()

template<class T >
static device_pointer sofa::gpu::opencl::OpenCLMemoryManager< T >::deviceOffset ( device_pointer  memory,
size_t  offset 
)
inlinestatic

◆ getBufferDevice()

template<class T >
static int sofa::gpu::opencl::OpenCLMemoryManager< T >::getBufferDevice ( )
inlinestatic

◆ hostAlloc()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::hostAlloc ( void **  hPointer,
int  n 
)
inlinestatic

◆ hostFree()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::hostFree ( const host_pointer  hSrcPointer)
inlinestatic

◆ isNull()

template<class T >
static bool sofa::gpu::opencl::OpenCLMemoryManager< T >::isNull ( device_pointer  p)
inlinestatic

◆ memcpyDeviceToDevice()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::memcpyDeviceToDevice ( int  d,
device_pointer  dDestPointer,
const device_pointer  dSrcPointer,
size_t  n 
)
inlinestatic

◆ memcpyDeviceToHost()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::memcpyDeviceToHost ( int  d,
host_pointer  hDestPointer,
const device_pointer  dSrcPointer,
size_t  n 
)
inlinestatic

◆ memcpyHostToDevice()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::memcpyHostToDevice ( int  d,
device_pointer  dDestPointer,
const host_pointer  hSrcPointer,
size_t  n 
)
inlinestatic

◆ memsetDevice()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::memsetDevice ( int  d,
device_pointer  dDestPointer,
int  value,
size_t  n 
)
inlinestatic

◆ memsetHost()

template<class T >
static void sofa::gpu::opencl::OpenCLMemoryManager< T >::memsetHost ( host_pointer  hPointer,
int  value,
size_t  n 
)
inlinestatic

◆ null()

template<class T >
static device_pointer sofa::gpu::opencl::OpenCLMemoryManager< T >::null ( )
inlinestatic

◆ numDevices()

template<class T >
static int sofa::gpu::opencl::OpenCLMemoryManager< T >::numDevices ( )
inlinestatic

Enum details

◆ anonymous enum

template<class T >
anonymous enum
Enumerator
MAX_DEVICES 

◆ anonymous enum

template<class T >
anonymous enum
Enumerator
BSIZE 

◆ anonymous enum

template<class T >
anonymous enum
Enumerator
SUPPORT_GL_BUFFER