We have a new experimental forum preview build of the Plex Media Server to share with you today. These builds are built with our new toolchain and will (hopefully) improve performance, download size and memory usage.
If you want to help test, use the following links. Remember that these are experimental builds so we suggest you backup before proceeding. Be ready to roll-back if needed. The builds are also based on unreleased versions of PMS - so you might see rough edges and missing pieces.
Read on below the links if you want more technical information about these new builds.
In early 2019 we consolidated most of our toolchain around Clang and switched to use C++ package manager Conan. We wrote about it on our technical blog.
We still had some work to do after that upgrade, so the last couple of months we have been working on continued development of the toolchain and our infrastructure. And these builds represent these advancements.
What’s new with our toolchain?
We now base it on LLVM 11.0.1
A huge step up from LLVM 8 used before
Clang is now used to build binaries for all platforms including Windows.
LLVM’s libc++ is now used on all platforms (except windows)
LLVM’s linker (lld) is used on all platforms (except macOS)
LTO (link time optimization) is enabled for better optimized binaries
Lot of compiler / linker flags are enabled to make the binaries smaller
Linux binaries are now using the musl libc instead of glibc
This means that the binaries should be usable on a lot more systems. There is no longer a dependency on the system version of glibc.
So what does this mean for the average user?
Download packages are around 25-30% smaller than earlier version.
The binaries themselves are up to 50% smaller.
Peak memory usage has been dropped a lot on certain systems
Image operations and library scanning is faster on most systems (especially noticeable on slow systems)
Software transcoding on Windows is significantly faster compared to earlier versions
Enabled platforms that was before removed because of old system glibc (Thecus)
For plex developers now have access to much better tools for debugging and newer C++ standards to work with.
Thanks for helping out and testing. Please report any problems in this forum thread!
Updates
2021-03-17 - 1.22.2.4204-0a657c52f
Uploaded a new version that fixes:
macOS plugins didn’t start and left the server in perpetual “starting” state
CORS issue which lead to a lot of issues where the locally hosted web-client didn’t behave correctly
As these are experimental builds I’ll likely want to limit any testing to a couple of hours in my morning when folks who use my server are not really around. That way I can restore to a current beta and my good backup without effecting my users.
Outside of install, matching some new content, refresh metadata, streaming some various types of media types and a look in the logs is there anything specific we should attempt and look out for ?
I can test the WD MyCloud PR2100 binary. Are you able to make it compatible for OS5? I tried to install the version on the link, but it said the binary was for OS3.
Now running this on Windows and no issues so far, tested multiple streams, local and remote. Seems to be an an improvement on HDR to SDR transcodes, just tested 3 simulatneously and sat around 60% CPU on 3950x… HW tonemapping would still be nice though
Server would crash after trying to play a Title that transcoded using Browser. The Plex Chevron would flash when launching again in the Menu bar. So Reverted back.
Tried again, launch from the Browser the chevron would disappear from menu Bar and my Server would not load in Browser. Not Available.
OS: Windows Server 2019
CPU: Dual Xeon E5-2670
GPU: nVidia Quadro P2000
GPU Driver Ver: 461.72
I downloaded and installed without any problems.
I tried HW transcoding first, and there seems to be no improvement in transcoding speed.
I moved on the software transcoding and was measuring its transcode speed in Tautilli, and it varied between 0.5 up to 1.9, although I was getting some buffering now and again. I was playing it in Chrome and it was transcoding 4K down to 1080p.
I did turn on the HDR tone mapping, and the speed diminished, and I experienced more frequent buffering.
While there is a whose discussion of whether or not to transcode 4K, I would at least like to have the option as I have the horsepower where I should be able to.
CPU usage with the software trascoding is improved.