mpv/TOOLS
der richter 9fbe000451 osxbundle: fix slow and wasteful memory allocation
when using the bundle with activated big enough cache, very slow and
wasteful memory allocations lead to jittery playback and lot of dropped
frames. the cache had to have a certain size so it would constantly
allocate new memory to reproduce this. this never happens when started
from the terminal.

the source of the problem is a different malloc allocation policy,
MALLOC_NANO, that allocated a huge amount of virtual memory without
actually using it. the usage was between 0% to 25% of that virtual
memory. the binaries allocation policy on the other hand used >80% of
that allocated virtual memory and was a lot more efficient, it would use
MALLOC_TINY instead.

this is fixed by setting the MallocNanoZone environment variable to 0
to use the V1 of the allocation policy. when started from the bundle via
launchd this is forced to 1 and V2 policy which causes this problem.

some more info can be found in following file and its comments on the
Apple open source site:
https://opensource.apple.com/source/libmalloc/libmalloc-317.40.8/src/nano_malloc_common.c.auto.html

Fixes #7405
2021-05-16 13:50:40 +02:00
..
lua command: extend subprocess command stdin, change behavior 2020-08-16 02:54:44 +02:00
mpv-osd-symbols.sfdir osc: use custom symbols for window controls 2019-12-11 13:53:10 -08:00
osxbundle/mpv.app/Contents osxbundle: fix slow and wasteful memory allocation 2021-05-16 13:50:40 +02:00
__init__.py build: use matroska.py & file2string.py as python modules 2017-01-05 11:25:18 +01:00
appveyor-build.sh ci: remove libass enablement 2020-03-22 14:33:41 +02:00
appveyor-install.sh appveyor: Use MSYS2's spirv-cross package instead of building it 2021-02-23 01:38:39 +02:00
dylib-unhell.py osxbundle: simplify process_libraries() to eliminate leafs() 2019-12-15 12:33:25 +01:00
file2string.py file2string: remove question mark from safe chars 2020-11-22 17:16:57 +01:00
gen-osd-font.sh Add script to generate otf from sfdir using fontforge 2017-04-20 17:40:45 +01:00
idet.sh Use setfield, not --field-dominance. See #2297. 2015-09-09 02:57:44 +02:00
matroska.py matroska.py: remove python2 support 2020-11-27 11:17:29 +01:00
mpv_identify.sh mpv_identify: replace deprecated fps property 2017-06-25 14:24:49 +01:00
osxbundle.py *.py: cosmetic changes 2020-02-27 21:36:21 +01:00
stats-conv.py *.py: cosmetic changes 2020-02-27 21:36:21 +01:00
travis-deps travis: stop excluding ffmpeg-git 2017-12-22 21:49:21 +01:00
travis-rebuild-website build: move website rebuild into Linux/clang travis job 2021-05-16 01:55:37 +03:00
umpv umpv: Use generator expression for files 2021-03-03 21:35:33 +02:00
uncrustify.cfg uncrustify: add some instructions 2013-05-12 21:24:55 +02:00