Jump to content

Transcoding Using 100% CPU ...


irh1
 Share

Recommended Posts

Hi,

 

When I start playback on either our Roku3 or Android tablets, the server cpu is running at 100%. I was expecting / hoping for a lot less. The server has an i7-4790T so whilst not the most powerful chip, it's no slouch either, and it's running Windows Server 2012 R2.

 

There are Transcoding settings in the Server Dashboard, under Playback, but these make no difference.

 

I looked through the log that gets produced, and what I think is happening is that the server is transcoding the whole file as quickly as it can(it finished after about 20 minutes - the CPU usage is down close to zero), rather than just transcoding as it is needed.

 

Is my above theory correct? If so, is there a way to get it to transcode less aggressively? (essentially can the ffmpeg process that gets launched be restricted to less cores? or be told to go slower?)

Also what happens when two people try to watch at once? does the 2nd have to wait for the server to get through to the end of the 1st file?

 

 

 

Link to comment
Share on other sites

Koleckai Silvestri

I believe they are working on throttling mechanisms so your machine will transcode slower and over a longer period of time. This would prevent the CPU from being maxed out. As long as your chip isn't overheating and straining the cooling system, running at 100% shouldn't hurt it though.

Link to comment
Share on other sites

apart from what Koleckai said and which is true, if you want to decrease the usage, try lowering the quality on the tablets (in the client). Not sure how the roku does it, but throttling is undergoing development so expect to see something about that in the upcoming updates.

Link to comment
Share on other sites

sanjaydevani

hi, even i am also cheking this issue, i m trying to find out what i can do best i ll post it, i have same big issue about this coz we are 12 user which is going to use and see movies today i did 3 user and work great same time, i am doing users slowly mean after use some day, i ll do more 2 users, i have to 12 users ans at same time its play atleast 4 or 5 smothly then its great... worries about cpu useges like 98 in one or 2 users,

 

i am planing for best way to cpu cooling and some more rap add like 8 or 16 gb rame i am not sure its help ?

Link to comment
Share on other sites

I think it was mentioned that its most energy efficient to run for less time at 100% utilization than longer 50% utilization. In which case it makes sense to try and transcode as fast as possible if there are free clock cycles available.

 

What I dont know is what happens if 4 people are transcoding at the same time. Is it:

                 A.  25% CPU split 4 ways

or              B. 100% for one person and the rest of the people get studdering

 

I'm sure someone has tested this, what happens?

Link to comment
Share on other sites

Koleckai Silvestri

Ultimately it depends on the cores in the CPU and how well FFMPEG utilizes them. I never really pay attention myself. My family usually has 2-3 people watching at various times. The server is using an i5 2500K CPU with 4 cores. The primary clients are Roku 3 devices and connected via Gigabit Ethernet and set at the highest bit rate of 20 Mbps. Most television episodes take 5-10 minutes to transcode. Movies take about 20 minutes for DVDs and 30-40 minutes for Bluray. Secondary clients are usually laptops using the web client. No one has ever complained about stuttering or buffering issues. 

 

I am of the mind to get the transcode done as quickly as possible and move on. That does provide a little overlap so multiple things are happening sequentially instead of simultaneously. Everyone is different though.

Edited by Koleckai Silvestri
Link to comment
Share on other sites

Koleckai Silvestri

In the server dashboard you can go to Playback -> Transcoding and select from four different profiles. Maybe one will fit your needs.

Link to comment
Share on other sites

Don't know if its a real fix or if its a placebo but I just changed my ffmpeg that is installed with MB with the official latest version from ffmpeg here and so far I haven't seen the process go over 75% on my Pentium G3220, not a fast processor but it gets the job done. I installed the 64bit version IDK what version MB uses so maybe that is the reason it is working better. Maybe the devs can chime in, the date on the previous version was 3 months older than the one from ffmpeg.

Link to comment
Share on other sites

Bunnyhunter

Don't know if its a real fix or if its a placebo but I just changed my ffmpeg that is installed with MB with the official latest version from ffmpeg here and so far I haven't seen the process go over 75% on my Pentium G3220, not a fast processor but it gets the job done. I installed the 64bit version IDK what version MB uses so maybe that is the reason it is working better. Maybe the devs can chime in, the date on the previous version was 3 months older than the one from ffmpeg.

 

how to replace the ffmpeg? where can i find the installed one?

Link to comment
Share on other sites

how to replace the ffmpeg? where can i find the installed one?

 

In the install folder.

 

C:\Users\username\AppData\Roaming\MediaBrowser-Server\ffmpeg\20150110

Edited by Happy2Play
  • Like 1
Link to comment
Share on other sites

didn't make any difference for me

Strange because I was having the same issue where roku thumbnail plugin was taking 100% all the time and so was watching avi files, since changing ive seen a 25% less cpu usage. Maybe it has something to do with having less cores if you are using a more than dual core system that is.

 

I am still getting a hanging ffmpeg process though, I have to close it manually after watching a few avi contained shows. Anyway to get MB to a elevated rights so it can force close the ffmpeg process on its own?

Link to comment
Share on other sites

hi, even i am also cheking this issue, i m trying to find out what i can do best i ll post it, i have same big issue about this coz we are 12 user which is going to use and see movies today i did 3 user and work great same time, i am doing users slowly mean after use some day, i ll do more 2 users, i have to 12 users ans at same time its play atleast 4 or 5 smothly then its great... worries about cpu useges like 98 in one or 2 users,

 

i am planing for best way to cpu cooling and some more rap add like 8 or 16 gb rame i am not sure its help ?

 

More RAM is only going to help if you don't have enough (i.e. you are having to write chunks of memory to and from disk)

Faster RAM helps (and remember faster RAM is a combination of clock speed and timings (https://en.wikipedia.org/wiki/CAS_latency)

Faster CPUs (more core, more L2 cache) obviously helps

Cooling helps, since the more thermal headroom you provide, the more Intel's Turbo will clock the cpu higher (up to a point)

It will come down to bang for your buck though - the performance improvement per dollar/pound/euro will depend on existing hardware, but upgrading your CPU is probably the first place to start

Link to comment
Share on other sites

Throttling is going to probably have to be a realty at some point.

 

For power desktop systems this is less likely going to be a issue but for lower power systems or nas devices a lack of throttling is like going to be a major issue.

 

Running all out when the device is also trying to do something else  can of course cause no ends of playback headaches but  can cause issues in the device itself.

A example being your nas device doing maintenance or the like but it gets interrupted of corrupted do to the cpu load.

 

This is of course less likely on newer hardware like my freenas box with a AMD A8-5600K APU.

Something as simple as a max cpu usage  of 75% by default  should still allow for stutter free playback on newer hardware.

For lower powered hardware whose sole purpose is to do this the option to turn off the limit should be there.

 

In the short term this could likely work tell a more dynamic system is put into place.

Link to comment
Share on other sites

  • 3 months later...

I have also changed my ffmpeg to the official 64 bit. And I have seen a 20-30% improvement during peak use.

Link to comment
Share on other sites

  • 4 weeks later...

I tried replacing with the latest build, restarted Emby server and tried again but it still maxes out all 4 cores during transcoding (AMD A8-3870 APU 3.0GHz w/ 16GB RAM).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...