Refactor to isolate staging buffer code.

Bu işleme şunda yer alıyor:
Ben Sander committed 2016-03-17 00:20:56 -05:00
1 ebeveyn a1879ba59b
işleme 1b7cc7d921
5 files changed
+61 -47

No files matched your search

+3 -3
Dosyayı Görüntüle
@@ -2,14 +2,13 @@
#include "hsa.h"
struct ihipDevice_t;
//-------------------------------------------------------------------------------------------------
struct StagingBuffer {
static const int _max_buffers = 4;
StagingBuffer(ihipDevice_t *device, size_t bufferSize, int numBuffers) ;
StagingBuffer(hc::accelerator &acc, size_t bufferSize, int numBuffers) ;
~StagingBuffer();
void CopyHostToDevice(void* dst, const void* src, size_t sizeBytes, hsa_signal_t *waitFor);
@@ -20,7 +19,8 @@ struct StagingBuffer {
private:
ihipDevice_t *_device;
hc::accelerator &_acc;
hsa_agent_t _hsa_agent;
size_t _bufferSize; // Size of the buffers.
int _numBuffers;
+2
Dosyayı Görüntüle
@@ -153,6 +153,8 @@ typedef enum hipError_t {
,hipErrorNoDevice ///< Call to hipGetDeviceCount returned 0 devices
,hipErrorNotReady ///< Indicates that asynchronous operations enqueued earlier are not ready. This is not actually an error, but is used to distinguish from hipSuccess (which indicates completion). APIs that return this error include hipEventQuery and hipStreamQuery.
,hipErrorUnknown ///< Unknown error.
,hipErrorRuntimeMemory ///< HSA runtime memory call returned error. Typically not seen in production systems.
,hipErrorRuntimeOther ///< HSA runtime call other than memory returned error. Typically not seen in production systems.
,hipErrorTbd ///< Marker that more error codes are needed.
} hipError_t;