[Mesa-dev] [Bug 103586] OpenCL/Clover: AMD Turks: corrupt output buffer (depending on dimension order?)

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Nov 13 19:56:12 UTC 2017


https://bugs.freedesktop.org/show_bug.cgi?id=103586

--- Comment #12 from Dave Gilbert <freedesktop at treblig.org> ---
(In reply to Jan Vesely from comment #11)
> (In reply to Dave Gilbert from comment #10)
> > I believe I'm still seeing this:
> > 
> > dg at hath:~/ocl2$ clinfo 
> > Number of platforms                               1
> >   Platform Name                                   Clover
> >   Platform Vendor                                 Mesa
> >   Platform Version                                OpenCL 1.1 Mesa
> > 17.4.0-devel (git-a16dc04ad5)
> > ....
> > dg at hath:~/ocl2$ echo $LD_LIBRARY_PATH 
> > /home/dg/mesa/try/lib:
> > 
> > so I *think* it's using my build.
> 
> yes, that looks OK.
> 
> > and I believe I'm still seeing it.
> > Is my test valid or do I really need that finish?
> 
> it should be OK. Can you replace the clFinish with clWaitForEvents (or the
> respective C++ method) to wait for kernel execution?
> It looks to me that clover creates new map without waiting for all the dep
> events.

It doesn't seem to help, if I add:
--- a/ocl.cpp
+++ b/ocl.cpp
@@ -74,6 +74,7 @@ static int got_dev(cl::Platform &plat,
std::vector<cl::Device> &devices, cl::Dev
     cl::Event eventBarrier2;
     queue.enqueueBarrierWithWaitList(NULL,&eventBarrier2);
     std::cerr << __func__ << "enqueueMapBuffer gave: " << err << std::endl;
+    event.wait();
     eventMap.wait();
     eventBarrier2.wait();


that doesn't seem to help and I think event is the event triggered by the
kernel.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20171113/56d71b1f/attachment.html>


More information about the mesa-dev mailing list