P4 to Git Change 1991227 by cpaquot@cpaquot-ocl-lc-lnx on 2019/08/29 17:26:37
SWDEV-193938 - [HIP] Use fine grained pool for hipHostRegister
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_memory.cpp#69 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.hpp#40 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#43 edit
[ROCm/clr commit: b6f298d3f0]
이 커밋은 다음에 포함됨:
@@ -408,6 +408,10 @@ class Device : public NullDevice {
|
||||
|
||||
std::map<hsa_queue_t*, int>& QueuePool() { return queue_pool_; }
|
||||
|
||||
hsa_amd_memory_pool_t SystemSegment() const { return system_segment_; }
|
||||
|
||||
hsa_amd_memory_pool_t SystemCoarseSegment() const { return system_coarse_segment_; }
|
||||
|
||||
private:
|
||||
static hsa_ven_amd_loader_1_00_pfn_t amd_loader_ext_table;
|
||||
|
||||
|
||||
@@ -831,8 +831,9 @@ bool Buffer::create() {
|
||||
|
||||
if (owner()->getSvmPtr() != owner()->getHostMem()) {
|
||||
if (memFlags & (CL_MEM_USE_HOST_PTR | CL_MEM_ALLOC_HOST_PTR)) {
|
||||
hsa_status_t status = hsa_amd_memory_lock(owner()->getHostMem(), owner()->getSize(), nullptr,
|
||||
0, &deviceMemory_);
|
||||
hsa_amd_memory_pool_t pool = (memFlags & CL_MEM_SVM_ATOMICS)? dev().SystemSegment() : dev().SystemCoarseSegment();
|
||||
hsa_status_t status = hsa_amd_memory_lock_to_pool(owner()->getHostMem(), owner()->getSize(), nullptr,
|
||||
0, pool, 0, &deviceMemory_);
|
||||
if (status != HSA_STATUS_SUCCESS) {
|
||||
deviceMemory_ = nullptr;
|
||||
}
|
||||
|
||||
새 이슈에서 참조
사용자 차단