2015-09-13, 21:46
(2015-09-13, 18:47)Milhouse Wrote: Running "bcmstat.sh -cxgpd10" during a movie might help confirm if there is a leak, either of GPU memory or RAM - keep an eye on the "GPUMem Free" and "Memory Free/Used" columns.
I've updated bcmstat.sh with a "D" option to show GPU (reloc) and ARM available memory deltas. This will be in the next build (or grab the latest version from github).
ASS subtitles are known to leak memory, but interestingly GPU memory seems to be leaking too with ASS subs. The GPU is losing 1,048,576 bytes whenever a multi-line (eg. 2 line) subtitle is shown, or it could be coincidence that the chunk of memory being allocated always happens whenever a multi-line sub is displayed - perhaps it's the length of the subtitle that triggers the leak (with multi-line subs typically being longer than single lines). Small ARM memory allocations are more or less constant, with no obvious correlation between single and multi-line subs.
Edit: The GPU memory leak is real in #0912 - at <10MB reloc available the subtitles are shown as blocks, and after ending playback the GPU memory isn't freed with textures (eg. bubbles background) no longer displayed. In #0907 with either mmal or omx the same 1,048,576 block is being allocated but is paired with a corresponding free, so effectively no memory loss. With build #0908+ there are only allocates and no frees, resulting in the GPU leak.