P4 to Git Change 1619186 by gandryey@gera-w8 on 2018/10/15 13:38:18
SWDEV-155434 - Add SQTT instrumentation tokens for OpenCL dispatches for RGP support - Fix SQTT tockets update when multiple queues are captured Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#113 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palgpuopen.cpp#8 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palgpuopen.hpp#6 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.hpp#56 edit
Bu işleme şunda yer alıyor:
@@ -1008,12 +1008,29 @@ void PAL_STDCALL Device::PalDeveloperCallback(
|
||||
Device* device = static_cast<Device*>(pPrivateData);
|
||||
const auto& barrier = *static_cast<const Pal::Developer::BarrierData*>(pCbData);
|
||||
|
||||
const auto* pBarrierData = reinterpret_cast<const Pal::Developer::BarrierData*>(pCbData);
|
||||
|
||||
VirtualGPU* gpu = nullptr;
|
||||
if (pBarrierData->pCmdBuffer != nullptr) {
|
||||
// Find which queue the current command buffer belongs
|
||||
for (const auto& it: device->vgpus()) {
|
||||
if (it->isActiveCmd(pBarrierData->pCmdBuffer)) {
|
||||
gpu = it;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (gpu == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
switch (type) {
|
||||
case Pal::Developer::CallbackType::BarrierBegin:
|
||||
device->rgpCaptureMgr()->WriteBarrierStartMarker(barrier);
|
||||
device->rgpCaptureMgr()->WriteBarrierStartMarker(gpu, barrier);
|
||||
break;
|
||||
case Pal::Developer::CallbackType::BarrierEnd:
|
||||
device->rgpCaptureMgr()->WriteBarrierEndMarker(barrier);
|
||||
device->rgpCaptureMgr()->WriteBarrierEndMarker(gpu, barrier);
|
||||
break;
|
||||
case Pal::Developer::CallbackType::ImageBarrier:
|
||||
assert(false);
|
||||
|
||||
Yeni konuda referans
Bir kullanıcı engelle