Many users reported high memory/RAM usage, some 8GB+.
In my case gone from 1.5GB+ to 400MB or less on Raspberry Pi 4.
Adding MALLOC_TRIM_THRESHOLD_=100000can make a big difference.
With Docker:
Add to your docker-compose.yml and docker compose down && docker compose up -d
...
environment:
  - MALLOC_TRIM_THRESHOLD_=100000
...
With systemd:
Edit /etc/default/jellyfin change the value of MALLOC_TRIM_THRESHOLD_ and restart the service
# Disable glibc dynamic heap adjustment
MALLOC_TRIM_THRESHOLD_=100000
Source: https://github.com/jellyfin/jellyfin/issues/6306#issuecomment-1774093928
Official docker,Debian,Fedora packages already contain MALLOC_TRIM_THRESHOLD_.
Not present on some docker images like linuxserver/jellyfin
Check is container (already) have the variable
docker exec -it jellyfin printenv | grep MALLOC_TRIM_THRESHO LD_
- It’s bad form to just say “set this variable to this value” without any explanation about what that variable does and why that value helped. - Your configuration may not work or may be detrimental for others. - If you click the source linked, you can read through all the details. - The linked source also doesn’t explain what the env variable actually does or why it fixes anything. 
 
 
- PS: Reddit doesn’t allow edit post titles, needed to repost - But this is Lemmy. - OP didn’t update their repost bot to understand what it’s reposting. - Reddit people, should be banned 
 
 
- What does it do? - The value of this tunable is the minimum size (in bytes) of the top-most, releasable chunk in an arena that will trigger a system call in order to return memory to the system from that arena. - https://www.gnu.org/software/libc/manual/html_node/Memory-Allocation-Tunables.html 
 - MALLOC_MMAP_THRESHOLD_is an environment variable that sets the size threshold for using the- mmapsystem call to allocate memory instead of using the heap.- Default: 128 KiB
- Behavior:
- If a memory request is ≥ 128 KiB, mmapis used.
- If < 128 KiB, the heap is used.
 
- If a memory request is ≥ 128 KiB, 
- Purpose:
- Helps manage large memory allocations more efficiently.
- Can be adjusted to optimize performance for specific applications.
 
 
 
- What’s the default value? - It could depend on your distro, official packaging (docker,Debian,Fedora) have - MALLOC_TRIM_THRESHOLD_=131072, but different distros could have (or not) ship with different settings.- Official settings for systemd https://github.com/jellyfin/jellyfin-packaging/blob/master/debian/conf/jellyfin 
 
- Thank you for posting this! I’ve been increasing the memory for my VM over and over and it was using 24GB RAM + 4GB swap. Hopefully this will let me reclaim some. 
- I’ve been having memory leak issues with my Jellyfin container, so I fired it up to see if it has a MALLOC variable set and it immediately crashed my server. Now waiting for the OOM killer to do its thing. 
- How well does jellyfin work on a rpi? How many simultaneous 1080p users with AVC\ACC media can it do? Active cooling? - Didn’t try but depends on which RPI. 4? 5? - Also depends on the storage medium (SD? SSD?), assuming there’s no transcoding. 
 
 



