xbmc.bin idling at 100% CPU usage

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Snippo Offline
Senior Member
Posts: 116
Joined: Dec 2011
Reputation: 4
Post: #11
(2012-04-06 19:48)wsnipex Wrote:  if you have dirty region rendering enabled, v-sync on and still get very high cpu load(in my case 100% on 1 core) you can try downgrading the ati driver to 11.12 or 11.11. so far this issue has only been reported with ati hd 4000 series and catalyst >12.2, possibly it also affects other ati hardware. Worth a shot, if you are out of ideas. If you try it, plz report back with results.

I had the same problem as nouniques. xbmc.bin kept using 100% cpu when it idles, even after enabling v-sync and dirty regions. I just tried your suggestion and I can confirm that it works Smile. I downgraded to fglrx 8.850 (Catalyst 11.5) and everything works fine again now.
find quote
nouniques Offline
Junior Member
Posts: 2
Joined: Apr 2012
Reputation: 0
Post: #12
Thanks for letting us know Snippo.

I decided to investigate further when Ubuntu 12.04 will be released, then I'll reinstall everything anyway. I'm a bit short on time at the moment, so thought if something goes wrong while downgrading, and I would need to reinstall OS, I would rather install to newer version.
It's not a big issue for me, because nothing stutters or anything performance wise, only problem is raising temperature of CPU, because it's fanless at the moment. Plus fingers crossed AMD would do something better with their drivers in a mean time.
find quote
geekmiki Offline
Junior Member
Posts: 26
Joined: Aug 2009
Reputation: 0
Post: #13
Same problem here with the CPU idling at 100% but wih some differences.

XBMC 11 "Eden", running on Ubuntu 10.04
Asrock ION HD330

Upon startup everything is fine, CPU is idling at approx. 10%, once I launch a video file the CPU jumps to 100% and stays like that for the rest of the session.
As nouniques mentioned, this does not compromise performance (even with 1080p), but my Asrock 330 gets extremely warm...

I have tried:
-adding dirty regions
-changing skin (I used Night, but tried with stock Confluence)
-Downgraded NVidia drivers from 295.40 to 275.43
-Deactivated the common plugin cache add-on
-V-sync is enabled

Has anyone managed to solve this issue completely? Is it reported as an Eden bug?
(This post was last modified: 2012-04-17 10:31 by geekmiki.)
find quote
FernetMenta Offline
Team-XBMC Member
Posts: 1,709
Joined: Jul 2010
Reputation: 37
Location: Munich
Post: #14
So we have this issue on ATI and NVidia systems. Some say that upgrading the OS cured it, other have downgraded Catalayst. I can't reproduce this on any of my systems. Might be due to the fact, that they are all setup the same way, basically a standard installation of Ubuntu 11.10 (64bit) with these characteristics: completely removed pulseaudio, I run XMBC either in window manager gnome-classic (no effect) or Fluxbox.

Does anybody observe this issue having:

- fresh installation of XMBC
- skin confluence
- no additional add-ons
- pulse audio removed
- no 3D window manager

If not, start reverting to your original configuration one by one.
(This post was last modified: 2012-04-17 12:25 by FernetMenta.)
find quote
turbopsi Offline
Junior Member
Posts: 4
Joined: Aug 2010
Reputation: 0
Post: #15
I can confirm the same issue. XBMCbuntu 11.0 out of the box, no other add-ons etc.
ION330 Mobo.

CPU is fine until a video is played. After that one core is at a constant 100% when idle.
find quote
rumburake Offline
Junior Member
Posts: 2
Joined: May 2012
Reputation: 0
Post: #16
Hi!

I have the same problem.

I have XBMC 11.0 git20120423 from Ubuntu 12.04 precise/universe repo running on an Asrock ION330, NVidia drivers 295.40-0ubuntu1.

I appiled the advancedsettings.xml in this thread.
I have v-sync only when playing video - not in GUI.
I have disabled "adapt refresh rate to match video".
I also run in windowed or fullscreen mode or even minimized.
I also have "blank" screensaver, 3 min.

I have ~44% CPU in idle.

The loop I see in strace is:

Code:
clock_gettime(CLOCK_MONOTONIC, {163919, 502462986}) = 0
clock_gettime(CLOCK_MONOTONIC, {163919, 502691026}) = 0
clock_gettime(CLOCK_MONOTONIC, {163919, 502904026}) = 0
time(NULL)                              = 1337091987
clock_gettime(CLOCK_MONOTONIC, {163919, 503318026}) = 0
clock_gettime(CLOCK_MONOTONIC, {163919, 503515226}) = 0
recv(8, 0x9080f70, 4096, 0)             = -1 EAGAIN (Resource temporarily unavailable)
select(9, [8], NULL, NULL, {0, 0})      = 0 (Timeout)
time(NULL)                              = 1337091987
time(NULL)                              = 1337091987
nanosleep({0, 1000000}, 0xbf95b648)     = 0

I am very intrigued about how can I find out what is this socket supposed to be? It is always invalid.

I can't see any other process connected to it. Only a few threads from this only xbmc.bin process.

BTW, I had this problem for at least one year, including version XBMC v10 and older Ubuntu versions such as 10.04.

What could it be?
find quote
G10CHY Offline
Junior Member
Posts: 15
Joined: Oct 2009
Reputation: 0
Post: #17
I am having the same issues. XBMC will not idle below 50% Sad

Any solutions?
find quote
rumburake Offline
Junior Member
Posts: 2
Joined: May 2012
Reputation: 0
Post: #18
XBMC was designed to continuously refresh the image, like an XBox game as it was originally software made for XBox. There are some optimized settings to reduce unnecessary refreshes such as when the UI is idle, but, as they may cause problems on various GPUs, they aren't set as default.

Try this:

Code:
$ cat .xbmc/userdata/advancedsettings.xml
<advancedsettings>
<gui>
        <algorithmdirtyregions>2</algorithmdirtyregions>
        <nofliptimeout>0</nofliptimeout>
</gui>
</advancedsettings>

With this I get ~13%CPU on an ASRock ION 330. Without them it would be ~87% or more...

Try tuning those params as well, there is a wiki page here: http://wiki.xbmc.org/index.php?title=Dirty_regions

Please come back and share what worked best for you, and what hardware are you using.
find quote
G10CHY Offline
Junior Member
Posts: 15
Joined: Oct 2009
Reputation: 0
Post: #19
I have tried both

<advancedsettings>
<gui>
<algorithmdirtyregions>1</algorithmdirtyregions>
<nofliptimeout>0</nofliptimeout>
</gui>
</advancedsettings>

and

<advancedsettings>
<gui>
<algorithmdirtyregions>2</algorithmdirtyregions>
<nofliptimeout>0</nofliptimeout>
</gui>
</advancedsettings>

with both making no difference at all to CPU usage at idle Sad
find quote
Martijn Offline
Team-XBMC
Posts: 7,787
Joined: Jul 2011
Reputation: 115
Location: Dawn of time
Post: #20
Make sure it's loaded by checking the log. It's impossible that it doesn't make a difference

Always read the XBMC online-manual, FAQ and search the forums before posting.
Do NOT e-mail Team-XBMC members asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting, make sure you read this first


For your mediacenter artwork go to
[Image: fanarttv.png]
find quote