use more than one core?
#1
Hello,

I have been playing back some video streams with xbmc. I turned on the debug logging from the settings screen. This causes print outs to appear on the video showing the CPU usage among other thins.

The print out looks like this on my tablet that has a dual core chip from Marvel:

CPU: CPU0: 0.0% CPU1:0.0% (CPU-XBMC 74.16%)

It is somewhat confusing but it looks like xbmc is only using one of the cpu cores. Is there a way to configure xbmc to use both cores?

It also seems that xbmc detects both cores but does not correctly determine which of the cores it is running on. Is that the expected behavior?

Thanks,
rdg
Reply
#2
reporting of cpu percent is broke for arm/android and no one cares enough to fix it right now.
Reply
#3
Is it just a reporting issue? Does xbmc use more than one core on arm/android?

Thanks,
rdg
Reply
#4
"reporting of cpu percent is broke for arm/android and no one cares enough to fix it right now." I did say 'reporting' Smile
Reply
#5
(2013-12-19, 02:09)davilla Wrote: reporting of cpu percent is broke for arm/android and no one cares enough to fix it right now.
For me is strange if bug is finded repored and no fixed.
I think good way developed is first fix bug next create new version xbmc like gothan and work on him.
In other way new versions xbmc gived next bugs to fixed becouse is added new or change code and is very hard fixed all.
Reply
#6
(2013-12-19, 23:36)cezar Wrote:
(2013-12-19, 02:09)davilla Wrote: reporting of cpu percent is broke for arm/android and no one cares enough to fix it right now.
For me is strange if bug is finded repored and no fixed.
I think good way developed is first fix bug next create new version xbmc like gothan and work on him.
In other way new versions xbmc gived next bugs to fixed becouse is added new or change code and is very hard fixed all.

Feel free to fix it
This is a low low low priority bug that has absolutely no added value so no one cares.
Other things are more important
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#7
(2013-12-19, 23:44)Martijn Wrote:
(2013-12-19, 23:36)cezar Wrote:
(2013-12-19, 02:09)davilla Wrote: reporting of cpu percent is broke for arm/android and no one cares enough to fix it right now.
For me is strange if bug is finded repored and no fixed.
I think good way developed is first fix bug next create new version xbmc like gothan and work on him.
In other way new versions xbmc gived next bugs to fixed becouse is added new or change code and is very hard fixed all.

Feel free to fix it
This is a low low low priority bug that has absolutely no added value so no one cares.
Other things are more important
Yes is low priority bug but i think you know one bug in code made next bug in added code; If some person will be can made adonn based on this info no will be can made. All skins no will be perfeckt becouse developers this skin no know whot place mast reserved to show this info.

Ofcourse this only example this bug but whot with others finded in frodo ? and no will be fixed gothan .....
Xbmc is open source and all fixed whot can but i think in profesional managed .projeckt mast be manager who see all and gived work to his developers.. Developers mast work on all suported platforms and gived near in 100% all function on all platform .
Reply
#8
Dream on dude - this is our hobby - hobbies are never and won't be ever bug free.

Beside that - it depends on the used xbmc version and video codec if multiple cores are used (this is same for all platforms). Are we talking about real problems here? Or are we just talking about nothing?
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#9
Here's the history, it was working, then someone broke it fixing something else. Sometimes I get tired of fixing things over and over so I just ignore it for now. Personally, I'd rip all CPU percent monitoring code out as useless eye candy. You want to know the CPU usage, ssh in and run top.
Reply
#10
Memphiz,

I am interested to determine if and when multiple cores are used. I am also interested in when hardware acceleration is used. As I am new to the code base, I don't know exactly where to look. I can tell from the debug logs that XBMC recognizes that the Marvel chip on the Galaxy Tab 3 has NEON support.

I have observed that for some 1080p streams the Samsung player that came pre installed on my Galaxy Tab 3 plays them back. XBMC exits when trying to play these streams. I am trying to find out what kind of hardware XBMC is using for these streams.

I posted because I found the debug display confusing.

davilla, thanks for the suggestion about using top. I will look into this as I have not run top on my Android device to date.

-rdg
Reply
#11
davilla,

I tried running top over adb with the following command while playing back a 1080p stream encoded with H264.

Code:
adb shell top -m 10 -d 1 > ~/Logs/top-log.txt

I saw the max CPU utilization go as high as 79% on the dual core Marvel. The full text file I created is: http://pastebin.com/rYFTQkqt

Code:
PID PR CPU% S  #THR     VSS     RSS PCY UID      Name
3358  1  79% S    26 650816K  86604K  fg u0_a145  org.xbmc.xbmc

This video is very choppy and the audio plays back. What I notice is that the CPU used by XBMC during playback is very close to or above 50%. I interpret this to mean that XBMC is fully utilizing one of the two cores while playing back.

Would you agree with that interpretation?

-rdg
Reply
#12
No Smile

If video is choppy, all bets are off as XBMC is most likely spending time seeking to catch up with sw decoding. Android does not have multi-threading like x86 so two cores is two cores. That won't help you much at all when doing sw decode.

You want and need hw decoding on arm, that's the only way dual-cores can handle HD content. A quad-core like odroid or oyua can do 720p in sw, but not 1080p. A Tegra T4 might be able to handle it, it has A15's instead of A7's. T4 is double plus goody Smile

So your choice for hw decode is libstagefright or mediacodec. If XBMC exits when trying to play these streams, then you need to provide the output of logcat so devs can see why xbmc is crashing and possibly fix it.
Reply

Logout Mark Read Team Forum Stats Members Help
use more than one core?0