Add support for setting queue priority for ROCm backend

Change-Id: I67ed5a6868af79538f7f4522d8d11c043cdf3c1e


[ROCm/clr commit: b5552aa97f]
Dieser Commit ist enthalten in:
Aryan Salmanpour
2020-06-04 01:16:31 -04:00
committet von Aryan Salmanpour
Ursprung 3d2182f8ba
Commit 55c58ebfaa
5 geänderte Dateien mit 105 neuen und 39 gelöschten Zeilen
@@ -591,7 +591,8 @@ bool VirtualGPU::releaseGpuMemoryFence() {
}
VirtualGPU::VirtualGPU(Device& device, bool profiling, bool cooperative,
const std::vector<uint32_t>& cuMask)
const std::vector<uint32_t>& cuMask,
amd::CommandQueue::Priority priority)
: device::VirtualDevice(device),
state_(0),
gpu_queue_(nullptr),
@@ -603,7 +604,8 @@ VirtualGPU::VirtualGPU(Device& device, bool profiling, bool cooperative,
schedulerParam_(nullptr),
schedulerQueue_(nullptr),
schedulerSignal_({0}),
cuMask_(cuMask)
cuMask_(cuMask),
priority_(priority)
{
index_ = device.numOfVgpus_++;
gpu_device_ = device.getBackendDevice();
@@ -705,7 +707,7 @@ VirtualGPU::~VirtualGPU() {
bool VirtualGPU::create() {
// Pick a reasonable queue size
uint32_t queue_size = 1024;
gpu_queue_ = roc_device_.acquireQueue(queue_size, cooperative_, cuMask_);
gpu_queue_ = roc_device_.acquireQueue(queue_size, cooperative_, cuMask_, priority_);
if (!gpu_queue_) return false;
if (!initPool(dev().settings().kernargPoolSize_, (profiling_) ? queue_size : 0)) {