bluetooth cpu utilization

by » Tue, 17 Feb 2009 22:57:28 GMT

Sponsored Links
 When using bluetooth (bluez) to play audio mp3 file on G1, i observed
that cpu utilization(from top command) is very high. The mediaserver
process takes 30% of cpu. Bluez should also consume significant amount
of cpu since the l2cap is in the kernel.

The cpu frequency is 384Mhz, powerful enough. I'm wondering if this
30% is accurate or not. Is it too high?

Also can anybody clarify any better tool to test cpu utilization? and
how to measure the cpu utilization for l2cap kernel socket?



bluetooth cpu utilization

by Nick Pelly » Tue, 17 Feb 2009 23:39:23 GMT

 Yes we have CPU usage of around 30-40% by mediaserver when playing back MP3
over Bluetooth. Note that we do SBC encoding in the mediaserver. What kind
of numbers were you expecting?
The cpu usage in the kernel side shouldn't be too bad. It just slaps on some
L2CAP headers, and the uart transfer uses DMA.


On Tue, Feb 17, 2009 at 2:57 PM, <



Sponsored Links

bluetooth cpu utilization

by » Wed, 18 Feb 2009 00:59:48 GMT

 Just wondering if the 30~40% cpu utilization was considered in the
android design. This is a large number if other applications could run

Do you have tools(more accurate than top) that could be used to test
cpu utilization?




bluetooth cpu utilization

by Nick Pelly » Wed, 18 Feb 2009 01:24:34 GMT

 On Tue, Feb 17, 2009 at 4:59 PM,




bluetooth cpu utilization

by Sidharth Malhotra » Fri, 06 Mar 2009 04:49:36 GMT

 Hi Nick,

You may remember I had some difficulty in bringing up the Bluetooth UI
on Android. I have passed that stage now! I am able to connect to
headset/handsfree devices.

But, I am still looking for a procedure to check A2DP from the UI. Can
you list down that procedure? By the way, do I really need a song file
in a sdcard to do all this. Because, I get this message that "No song
in sdcard"!!

I think I am almost there..and dying to listen to a nice song on my
stereo headset!




Other Threads

1. GLSurfaceView onPause blocked in Froyo

I am using OpenGL to do some rendering and whenever my rendering gets
paused I call onPause of GLSurfaceView and later when I resume
onResume of GLSurfaceView. This was working fine till I upgraded my
Nexus One to Froyo today. After that the thread calling onPause seems
to be blocked in that API. Anyone has any idea why this is happening?
Is there anything I need to change for this to work on Froyo?


2. Bottom of one LinearLayout being hidden by other LinearLayout?

Hi Mike,

It appears you may be running out of room. RelativeLayout is drawing
your first LinearLayout and then placing the other on top. My
understanding is that Relative Layout (and FrameLayout) maintain a Z-
ordering of children essentially each child is on a layer above the
previous and will obscure previous children unless you tell it to do
otherwise. You got lucky with your portrait layout.

You could consider trying the following :

1/ Declare your button bar linear layout aligning it with the parent

2/ Declare your other LinearLayout next aligning it's top with the
parent and bottom with the button bar.

3/ make this second linear layout scrollable with

The idea is that your top linear layout will scroll if there is
insufficient room and your layout will be more flexible to cope with
more devices.

If this doesn't work try a ScrollView.

Don't let any of this put you off RelativeLayout. They are extremely
powerful and help to reduce the depth/levels of your view hierarchy.
In fact, you might consider using a second relative layout which would
allow you to get rid of all those nested LinearLayouts with one
Relative Layout. They are trickier but definitely worth it.

Best Regards,



3. Communication b/w SurfaceFlinger & SurfaceComposerClient

4. How to debug dalvik

5. Submit Life Improvement Apps and win Cash Prizes!!!

6. Submit Entertainment Apps and win Cash!!!

7. Trying to install the latest android SDK