From 97851343d43004b9eb82b9fad549561d2d278ae4 Mon Sep 17 00:00:00 2001 From: foreman Date: Wed, 5 Aug 2015 16:44:13 -0400 Subject: [PATCH] P4 to Git Change 1177473 by cpaquot@hog-ocl on 2015/08/05 16:07:55 EPR #422059 - [DX11-OpenCL interop][MAYA] OpenCL doesn't update We need to add a Dx->Flush() before ending the query to make sure the DX driver flushes all the GPU caches. ReviewBoardURL = http://ocltc.amd.com/reviews/r/8174/diff/ Affected files ... ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d10.cpp#10 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d11.cpp#17 edit [ROCm/clr commit: 28f7002255b5e7c37ed6b83a463c7a39ab23f562] --- projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp | 1 + projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp b/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp index 389a0d88b6..634472596d 100644 --- a/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp +++ b/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp @@ -1458,6 +1458,7 @@ D3D10Object::copyOrigToShared() pD3D10ResOrig_, subRes_, NULL); // Flush D3D queues and make sure D3D stuff is finished + d3dDev->Flush(); pQuery_->End(); BOOL data; while(S_OK != pQuery_->GetData(&data, sizeof(BOOL), 0) && data != TRUE) diff --git a/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp b/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp index d0970004e2..aceef1cdfa 100644 --- a/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp +++ b/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp @@ -1002,6 +1002,7 @@ D3D11Object::copyOrigToShared() // Flush D3D queues and make sure D3D stuff is finished { ScopedLock sl(resLock_);//protect from multiple + pImmediateContext->Flush(); pImmediateContext->End(pQuery_); BOOL data; while(S_OK != pImmediateContext->GetData(pQuery_, &data, sizeof(BOOL), 0) && data != TRUE)