P4 to Git Change 1973670 by gandryey@gera-win10 on 2019/07/25 11:27:11
SWDEV-79445 - OCL generic changes and code clean-up
- Don't create an extra queue for DMA transfers when SDMA is disabled. That should allow to avoid useless sync operations.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palconstbuf.cpp#13 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palgpuopen.cpp#15 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#75 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paltimestamp.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paltimestamp.hpp#5 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#143 edit
[ROCm/clr commit: b9b798616f]
This commit is contained in:
@@ -838,13 +838,6 @@ bool VirtualGPU::create(bool profiling, uint deviceQueueSize, uint rtCUs,
|
||||
if (nullptr == queues_[SdmaEngine]) {
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
queues_[SdmaEngine] =
|
||||
Queue::Create(*this, Pal::QueueTypeCompute, idx, cmdAllocator_, rtCUs,
|
||||
amd::CommandQueue::Priority::Normal, residency_limit, max_cmd_buffers);
|
||||
if (nullptr == queues_[SdmaEngine]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
LogError("Runtme couldn't find compute queues!");
|
||||
@@ -2484,7 +2477,9 @@ void VirtualGPU::submitMarker(amd::Marker& vcmd) {
|
||||
|
||||
void VirtualGPU::releaseMemory(GpuMemoryReference* mem) {
|
||||
queues_[MainEngine]->removeCmdMemRef(mem);
|
||||
queues_[SdmaEngine]->removeCmdMemRef(mem);
|
||||
if (!dev().settings().disableSdma_) {
|
||||
queues_[SdmaEngine]->removeCmdMemRef(mem);
|
||||
}
|
||||
}
|
||||
|
||||
void VirtualGPU::submitPerfCounter(amd::PerfCounterCommand& vcmd) {
|
||||
@@ -3128,9 +3123,9 @@ void VirtualGPU::profileEvent(EngineType engine, bool type) const {
|
||||
return;
|
||||
}
|
||||
if (type) {
|
||||
profileTs_->begin((engine == SdmaEngine) ? true : false);
|
||||
profileTs_->begin();
|
||||
} else {
|
||||
profileTs_->end((engine == SdmaEngine) ? true : false);
|
||||
profileTs_->end();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user