News for hackers. Stuff that matters.
Re:How about some Android graphics true facts? by mrich on Sunday December 04, 2011 @09:02AM (#3310678)
Apple makes compromises, too. On the original iPad scrolling can be really laggy (probably only after installing a couple of apps, so you won't notice it in the store).

Meanwhile, the current generation of dual core Android phones have hardly any lag issues anymore.

Re:How about some Android graphics true facts? by mgkimsal on Sunday December 04, 2011 @09:22AM (#3310716)
Somewhat agreed. It can be laggy, but on mine it rarely is (but it does happen). However, it's never consistently choppy when scrolling.

So... laggy sometimes, but still smooth scrolling.

Every Android device I've tried (just tried a couple tablets at a Best Buy this week) have been consistently laggy (response times to swipes) and choppy scrolling.

Re:How about some Android graphics true facts? by Synaesthesia on Sunday December 04, 2011 @01:56PM (#3311387)
Actually the first time I used an iPad I was blown away by the smoothness of scrolling in web pages, and it still holds up really well today IMO
Re:How about some Android graphics true facts? by mrich on Sunday December 04, 2011 @04:30PM (#3311880)
Yes, because the scrolling is very well supported by hardware. But you will notice the slowness when you are zooming in/out of pages (the font smoothing takes about half a second). But Apple got it right compared to Android, and you are right that even today the iPad holds up well, considering its hardware (reminds me of the C64 which was able to smoothscroll because of hardware support, while the PC didn't manage it at that time)
Re:How about some Android graphics true facts? by foobarbazetc on Sunday December 04, 2011 @06:25PM (#3312252)
The number of apps you have installed has no significance what so ever on scrolling.

Just FYI.

Re:How about some Android graphics true facts? by orijing on Sunday December 04, 2011 @08:37PM (#3312581)
I think he means the number of apps running in the background. For example, if you have the Groupon app making constant push notifications to you, that's expensive.
Re:How about some Android graphics true facts? by robmcm on Monday December 05, 2011 @06:18AM (#3314145)
Also worth noting that the iPads in the Apple stores are normally stuffed with apps for people to try, rather than just plain installs.
Re:How about some Android graphics true facts? by beatle on Sunday December 04, 2011 @02:38PM (#3311533)
Garbage collection in Android is another performance bottleneck. ICS "fixes" this by allowing the garbage collector to run on a different thread but imo that's a kludge.
Re:How about some Android graphics true facts? by babebridou on Sunday December 04, 2011 @03:27PM (#3311694)
You're beating a dead horse alright, but it's the wrong one.

Garbage collection has never had anything to do with poor UI performances, and everything to do with making poor code stutter. When the GC starts hitting your framerate, it means you are creating far too many objects and far too frequently. Before ICS, android implemented the incremental GC that runs more often but for "negligible" sub-1ms lengths.

If you absolutely need 60fps, make sure the GC never gets to do any work and start monitoring your own memory through buffers, just like you would in any other language.

Re:How about some Android graphics true facts? by beatle on Sunday December 04, 2011 @05:55PM (#3312167)
Users don't distinguish between poor UI performance and"code stutters". The "negligble" sub-1ms stutters are a real problem in practice. and it's not just limited to poor code. Sometimes, no matter what you'll see GC being called, there's no way around it. There are background threads that are doing all sorts of things, which very well might be getting GC'd. Theres also a lot of things you can't reasonably avoid, like allocations from Iterators, etc. There are literally thousands of forum and blog posts discussing this online.

Garbage Collection very slow on Android with latest stable line http://groups.google.com/group/v8-users/browse_thread/thread...

How can I avoid garbage collection delays in Java games http://stackoverflow.com/questions/2484079/how-can-i-avoid-g...

Avoiding garbage collection for smooth 2d animations Options

http://groups.google.com/group/android-developers/browse_thr...

Image tiling on Android, garbage collector slows down http://stackoverflow.com/questions/7916021/image-tiling-on-a...

Re:How about some Android graphics true facts? by babebridou on Monday December 05, 2011 @05:52AM (#3314087)
Poor choice of words on my part. It's not "poor code" but "inadequate code". The Android graphics API is, overall, inadequate for avoiding GCs at all costs. Java on the other hand, is not necessarily inadequate. The issues with GC and the Bitmap class are a good example: Bitmaps aren't designed to work at the lowest & fastest level but at the highest and easiest level.

Nothing beats primitives and buffers - the performance gap between the two methods is huge, that's true, but it's not a showstopper.

I don't recall gcs in other processes hurting my apps performances though. With that said, if I'm going to write a game, I'll make sure none of the threads in my process will trigger a GC past the loading/splash screen. This means no instanciations of any additional iterators, collections, Strings... The overhead of allocations is almost as bad for the framerate as the GC anyway.