It would have eventually, if you'd run more iterations: each iteration
leaks ~450 bytes before
https://cgit.freedesktop.org/beignet/commit/?id=7ae1517cfc373847f168ffb3e41b635861af19c7
but ~20,000 bytes after. I suspect the reason for this is that events
no longer release exec_data.gpgpu on complet
Thank you Rebecca! It helped. But what changed after Ubuntu 16.04? It
was not needed to put clReleaseEvent into the code in Ubuntu 16.04.
Br,
Andrej
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/17768
The bug is technically in your code: as you never call clReleaseEvent
(waiting on an event doesn't release it), you leak an event object per
iteration. I suspect the beignet change exposed this bug by greatly
increasing the effective size of an event object, but don't yet know
how.
There is a C++
Memory consumption rises over a run, by ~2GB by the failure point. The
exact number of iterations before failure depends on the beignet version
but not the matrix size.
git bisect finds that this was introduced by
https://cgit.freedesktop.org/beignet/commit/?id=7ae1517cfc373847f168ffb3e41b635861
** Package changed: ubuntu => beignet (Ubuntu)
** Tags removed: ubuntu18.04
** Tags added: bionic
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1776867
Title:
OpenCL-beignet EnqueueNDRangeKernel fa