Re: Excessive GC_EXTERNAL_ALLOC in list views on large screens

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Excessive GC_EXTERNAL_ALLOC in list views on large screens

Álvaro M
I know it's been a while since this has posted.... but I am having pretty much the same problem!
I ported android gingerbread to a quite large screen device and I can see the same errors when I open an application with a list (eg: the settings application).
Looking at DDMS it looks like the problem is the same. 
Did you find a way to fix this? Is there a property or something else I can set in my system to fix this? 
Many thanks,

-Alvaro


On Wednesday, June 15, 2011 12:06:50 AM UTC+2, Brandon Bennett (nemith) wrote:
I have a larger screen device and in list views there are a lot of
GC_EXTERNAL_ALLOC that dalvik runs (and pauses) making almost any
ListView very slow and jerky.  It's also freeing less than 1K per GC!

D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 85ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 70ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 67ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 43ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 41ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 39ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 34ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 33ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 37ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 33ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 34ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 35ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 34ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 33ms


Is there a way to track down what could be causing this?  I don't have
any large bitmaps in the ListView (or any images at all really)

Using the method profiling in DDMS it seems that startGC is being
called after AbsListView.dispatchDraw->View.getDrawingCache-
>View.buildDrawingCache->Bitmap.createBitmap->Bitmap.nativeCreate, but
I cannot see anything out of the ordinary there.

Thanks,

Brandon

--
You received this message because you are subscribed to the Google Groups "android-platform" group.
To view this discussion on the web visit https://groups.google.com/d/msg/android-platform/-/yy0nvz8-_j8J.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/android-platform?hl=en.
Reply | Threaded
Open this post in threaded view
|

Re: Excessive GC_EXTERNAL_ALLOC in list views on large screens

KaPiL.rIcKy
Hi
Are you using SDK version <= GB ?
APAIK Bitmap Pixal Memory is moved to Java Layer in HoneyComb onwards. And i guess this GC message is for external memory itself for Bitmap data.

1.My suggestion is to check if you are creating some objects again and again, if so try reusing them.
2.Listview may have some background drawable its own, so this message may b because of this.
3.I hope you are using cached view instead of creating again in getView and using the tag facility to create view holder.

Hope it may help.
On Mon, Dec 3, 2012 at 3:24 AM, Álvaro M <[hidden email]> wrote:
I know it's been a while since this has posted.... but I am having pretty much the same problem!
I ported android gingerbread to a quite large screen device and I can see the same errors when I open an application with a list (eg: the settings application).
Looking at DDMS it looks like the problem is the same. 
Did you find a way to fix this? Is there a property or something else I can set in my system to fix this? 
Many thanks,

-Alvaro


On Wednesday, June 15, 2011 12:06:50 AM UTC+2, Brandon Bennett (nemith) wrote:
I have a larger screen device and in list views there are a lot of
GC_EXTERNAL_ALLOC that dalvik runs (and pauses) making almost any
ListView very slow and jerky.  It's also freeing less than 1K per GC!

D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 85ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 70ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 67ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 43ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 41ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 39ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 34ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 33ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 37ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 33ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 34ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 35ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 34ms
D/dalvikvm( 1667): GC_EXTERNAL_ALLOC freed <1K, 54% free 3465K/7431K,
external 2316K/2399K, paused 33ms


Is there a way to track down what could be causing this?  I don't have
any large bitmaps in the ListView (or any images at all really)

Using the method profiling in DDMS it seems that startGC is being
called after AbsListView.dispatchDraw->View.getDrawingCache-
>View.buildDrawingCache->Bitmap.createBitmap->Bitmap.nativeCreate, but
I cannot see anything out of the ordinary there.

Thanks,

Brandon

--
You received this message because you are subscribed to the Google Groups "android-platform" group.
To view this discussion on the web visit https://groups.google.com/d/msg/android-platform/-/yy0nvz8-_j8J.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/android-platform?hl=en.



--

~~~~~~~~~~~~~~~~~~~~~~~~~~
Thanks and regards
Kapil Kumar
~~~~~~~~~~~~~~~~~~~~~~~~~~

--
You received this message because you are subscribed to the Google Groups "android-platform" group.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/android-platform?hl=en.