|
| DeviceBuffer (Context *const context, OWLDataType type) |
|
std::string | toString () const override |
|
DeviceData & | getDD (const DeviceContext::SP &device) const |
|
void | resize (size_t newElementCount) override |
|
void | upload (const void *hostPtr, size_t offset, int64_t count) override |
|
void | upload (const int deviceID, const void *hostPtr, size_t offset, int64_t count) override |
|
void | clear () override |
|
RegisteredObject::DeviceData::SP | createOn (const DeviceContext::SP &device) override |
|
| Buffer (Context *const context, OWLDataType type) |
|
virtual | ~Buffer () |
|
std::string | toString () const override |
|
Buffer::DeviceData & | getDD (const DeviceContext::SP &device) const |
|
const void * | getPointer (const DeviceContext::SP &device) const |
|
size_t | getElementCount () const |
|
size_t | sizeInBytes () const |
|
virtual void | clear ()=0 |
|
virtual void | resize (size_t newElementCount)=0 |
|
virtual void | upload (const void *hostPtr, size_t offset, int64_t count)=0 |
|
virtual void | upload (const int deviceID, const void *hostPtr, size_t offset, int64_t count)=0 |
|
RegisteredObject::DeviceData::SP | createOn (const DeviceContext::SP &device) override |
|
void | destroy () |
|
| RegisteredObject (Context *const context, ObjectRegistry ®istry) |
|
| ContextObject (Context *const context) |
|
std::string | toString () const override |
|
| Object () |
|
virtual std::string | toString () const |
|
virtual DeviceData::SP | createOn (const std::shared_ptr< DeviceContext > &device) |
|
void | createDeviceData (const std::vector< std::shared_ptr< DeviceContext > > &devices) |
|
template<typename T > |
std::shared_ptr< T > | as () |
|
a device-side buffer that has its own cuda-malloc'ed memory on each device. DeviceBuffers are fastest to access on the device, BUT* are not visible on the host, and are replicated in the sense that changing to a device buffer on one GPU will not be visible on other GPUs