[Samsung Galaxy Nexus] Shidell:
Thanks [MENTION=4986658]freshgiammi[/MENTION] :) I've done some extensive testing, so I hope that this helps us determine where the problem is. [MENTION=2633638]Ziyan[/MENTION], [MENTION=2838735]aosp[/MENTION], [MENTION=4531957]musical_chairs[/MENTION], [MENTION=3927368]poo706[/MENTION], [MENTION=4015637]rkpeterson[/MENTION], [MENTION=3390093]MWisBest[/MENTION], [MENTION=4243088]BigBrother1984[/MENTION], [MENTION=3307660]something15525[/MENTION] I'm hoping you might be able to lend a hand as well.

I created this thread based on the Galaxy Nexus tending to overheat when Navigating. However, I've found another discrepancy--live wallpaper performance with the Google Now Launcher. When using the GNL with the Phase Beam wallpaper, sometimes the GNex can draw it just fine; it's smooth, no (or few) dropped frames--it looks and works great. However, with other ROMs, it's very janky, stuttering and performing poorly.

(Note that GNL with a static picture works fine.)

I suspect that there might be a GPU driver issue, or perhaps a configuration issue, in some ROMs that's causing this behavior. Perhaps a certain GPU driver is used in some ROMs, and not others, causing the problem? Perhaps there is a config file with GPU settings where one has specific features enabled, others do not, and it results in poor performance in certain rendering cases?

I wonder if it might be related to overheating on the Galaxy Nexus when Navigating, watching video, playing games--items that tax the GPU. If it is such an issue, though, it might also mean extra work is being performed to compensate, and that would mean extra heat and battery use.

Here are two YouTube links displaying the behavior in question. First is Factory Stock 4.3--I wasn't able to directly record the screen (as that feature wasn't introduced with ADB until 4.4), but hopefully it's clear enough to see that it's smooth. (There is one hiccup when the cards are loading, but that's it.) The second video shows the same test, but running on CM11 M8--it's very choppy and lags behind input, and it's extremely noticeable in person.

I tried to capture video from OmniROM, but received this error while using ADB:

D:\Android\sdk\platform-tools>adb shell screenrecord /sdcard/omni44.mp4
WARN: Unable to set device connection state for audio submix IN
WARN: Unable to set device connection state for audio submix OUT
Unable to instantiate audio source (error -1)!

Factory 4.3

CM11 M8

I've conducted some tests on a spare Galaxy Nexus, and wiped my own personal model, to be sure that the behavior is the same on both devices--to ensure I don't have a damaged GPU or some other weird hardware issue that might be responsible.

Results:

Factory 4.2.1 - OK

Factory 4.3 - OK

LiquidSmooth LS-KK-v3.2-2014-09-03 - OK

Paranoid Android 4.6 Beta 1 - OK

OmniROM 4.4.4 - 20140905 Nightly - FAIL

CM10.2 RC 1 - FAIL

CM11 M8 - FAIL

Further, I extracted the kernel zImage from Factory 4.2.1 and 4.3, and flashed it into CM11 M8 just to see if the kernel alone made any difference. The 4.2.1 kernel wouldn't boot; 4.3 booted up properly, but the lag/choppiness persisted, which seems to indicate that the problem is not kernel related.

What should I investigate next? Clearly LiquidSmooth and ParanoidAndroid are getting smooth GPU performance, which I expect is also what's causing Navigation to cause my phone to overheat (but I can't prove that, unless we can solve this issue and then I can test with a fix and determine if it's the cause or not.)

Could a config file be at fault? A difference in drivers being used?