SWDEV-336024 - Clear device heap to 0

The heap must be cleared once per device, but ROCclr doesn't
create a queue per device in HIP. Hence, the clear operation will
be performed during the first queue creation.

Change-Id: I52ceb06d67d11cde6d019c5ab510059f426a9bfb
This commit is contained in:
German Andryeyev
2022-05-06 16:12:22 -04:00
bovenliggende 6c458c7534
commit 04bfd93569
10 gewijzigde bestanden met toevoegingen van 77 en 47 verwijderingen
+1 -1
Bestand weergeven
@@ -284,7 +284,7 @@ bool DeviceQueue::create() {
const bool defaultDeviceQueue = properties().test(CL_QUEUE_ON_DEVICE_DEFAULT);
bool result = false;
virtualDevice_ = device().createVirtualDevice(this);
virtualDevice_ = device().CreateDeviceQueue(this);
if (virtualDevice_ != NULL) {
result = true;
context().addDeviceQueue(device(), this, defaultDeviceQueue);
+2 -2
Bestand weergeven
@@ -167,7 +167,7 @@ class HostQueue : public CommandQueue {
//! The command queue thread entry point.
void run(void* data) {
HostQueue* queue = static_cast<HostQueue*>(data);
virtualDevice_ = queue->device().createVirtualDevice(queue);
virtualDevice_ = queue->device().CreateDeviceQueue(queue);
if (virtualDevice_ != NULL) {
queue->loop(virtualDevice_);
Release();
@@ -178,7 +178,7 @@ class HostQueue : public CommandQueue {
}
void Init(HostQueue* queue) {
virtualDevice_ = queue->device().createVirtualDevice(queue);
virtualDevice_ = queue->device().CreateDeviceQueue(queue);
if (virtualDevice_ != nullptr) {
acceptingCommands_ = true;
}