Related
Okay, let's try not to get this thread cluttered up with off-topic speculation like the last one. Starting with what we know already:
There is a ~30 frames per second cap on 2D and 3D rendering. This can be established both visually (play Doodle Jump) and through a benchmark.
If you boot a Nexus One 2.2 ROM, the animation seems to run at 60FPS for a while. This, however, is not totally certain.
This seems to be a software cap, not a hard cap. However, an HTC product representative says otherwise. Jury's still out, apparently.
There is speculation that the cap might be due to the HDMI out on the graphics chip.
Kernel source is being released "soon".
There is touch sensing lag, but this seems to be unrelated.
This issue affects all EVO hardware builds and all EVO ROMs currently.
HTC claims that the cap is by design to improve battery life.
If there is anything else that you have to add that has reasonable evidence backing it up, please do.
EDITED BY TOASTCFH:
Issue of 30fps has been resolved on the devices with Epson pannels through the work done on the kernel reverse engineered kernel source provided in the thread below. for more information and source code for the fix/fixes. also a update.zip can be found on the OP for Fresh 0.3 containing a boot.img containing the kernel compiled with the fps fix.
{KERNEL-SOURCE} GoDmOdE-EVO-2.6.29 {Make Shift Kernel}
enjoy
END OF EDIT
Correct me if I'm wrong but while running fps2d, aren't there slight flashes where the fps jumps over 30? That in and of itself should prove that the cap isn't hardware based.
Krandor311 said:
Correct me if I'm wrong but while running fps2d, aren't there slight flashes where the fps jumps over 30? That in and of itself should prove that the cap isn't hardware based.
Click to expand...
Click to collapse
Very true! I'm not versed very well in the actual mechanics of the hardware, but that does sound like a good sign.
well, a good idea to see if it's a hardware cap or whether it's with the kernel is to try using toast's ported incredible kernel? since the incredible doesn't have the 30fps issue, and assuming it's software(kernel) based, then we shoudln't have that problem.
someone willing to try? sorry, i can't do this on my evo at the moment
I would try if I had the kernel made for me in zip format to flash. Since I have one of the I/O devices I would be able to try but I dont know how to make the kernel to flash.
This thread is gonna get merged...
timgt said:
I would try if I had the kernel made for me in zip format to flash. Since I have one of the I/O devices I would be able to try but I dont know how to make the kernel to flash.
Click to expand...
Click to collapse
Try one of the overclock builds. They are using toast's source. I want to think this has been tried before.
EDIT:
Seems it was tried on these builds:
RvU Rom: On android central
AOSP Rom: Avalaunch's AOSP Rom
FroYo Rom : Avalaunch's FroYo Rom
http://forum.xda-developers.com/showpost.php?p=6769032&postcount=88
Vinny75 said:
Try one of the overclock builds. They are using toast's source. I want to think this has been tried before.
Click to expand...
Click to collapse
I'm pretty sure it has and still has the same issues the board files for the evo are in there though not the incredibles
I don't think it is firmware. The RUU for the EVO and Incredible both contain the same tp_amtel224_16ab.img which may be the firmware for the Amtel 224 touchscreen controller. (http://forum.xda-developers.com/showthread.php?t=704640)
From ffolkes
i've been working on this all day. literally. about 9 hours straight.
this is what i've found. changing the mddi clk_rate to anything but 384000000 results in it getting set to 117965000 according to dmesg. now 384/20 = 19.2 which is precisely the frequency of TCXO. seems a bit odd. it's also exactly half of the other clock defined, GLOBAL_PLL at 768mhz. PLL1 (core) is also 768. another clock is defined, AXI at 128mhz, that acronym is mentioned in the video/gpu drivers. not sure if that's related to that clock, or just some video thing i'm not familiar with and completely unrelated.
changing PMDH_CLK (in devices.c) to OFF | MINMAX or just MINMAX *AND* changing the mddi freq to anything higher than 384000000 results in dmesg saying mddi was set to 235930000 (instead of 117965000) but i still get the same 30fps id get if it was at 384000000. so when you think about it, this means mddi can't be capping it, otherwise i'd see a difference between 235930000 and 384000000. but they're exactly the same fps. it HAS to be happening elsewhere.
i've also found removing the adreno200 drivers from /system/lib/egl results in a silky smooth sprint boot animation, the gui flickers crazily, but fps2d still shows 29. perhaps this is what people were seeing with the froyo boot animation looking smooth.
you know, this 29fps thing is very specific...ntsc is 29.97fps. coincidence? i really don't think so. fps2d always averages out to 29, not 30.
i also tried removing all the hdmi code in the board files, that didn't change anything.
i find it very unlikely this is hardware limited though. the gpu is on die with the cpu, so unless htc had qualcomm make them a custom chip, it's all software controlled. there's nothing to suggest the gpu has its own crystal on the pcb. i mean, if we can completely control the cpu frequency via software, the same stands to reason with the gpu.
if it was something hdmi hardware related, it should be able to be disabled in the kernel and the evo wouldn't even know it was there, just like with the sensors that don't work.
it appears the evo uses a SIL9022A for hdmi, which makes no mention of requiring any change to the lcd frame rate. (http://www.siliconimage.com/products...t.aspx?pid=150)
Click to expand...
Click to collapse
from http://forum.xda-developers.com/showpost.php?p=6854074&postcount=664
I did a little experiment to see if the restriction was in user-space or the kernel:
- First I set up my machine like I described in the "Getting a wider set of development tools on the phone" thread
- Then I wrote a little program (attached) that suspends the phone compositing manager and wrote to the frame buffer device directly.
The conclusion: Even when writing straight to /dev/graphics/fb0, talking straight to the kernel, there's a 30fps limit.
halfline said:
I did a little experiment to see if the restriction was in user-space or the kernel:
- First I set up my machine like I described in the "Getting a wider set of development tools on the phone" thread
- Then I wrote a little program (attached) that suspends the phone compositing manager and wrote to the frame buffer device directly.
The conclusion: Even when writing straight to /dev/graphics/fb0, talking straight to the kernel, there's a 30fps limit.
Click to expand...
Click to collapse
So does this hint that it's a board driver issue and not a hardware issue? Is the fps being sent to fb0 already at 30fps? Sorry, just trying to understand. Been working on this issue for days too.
AssassinsLament said:
So does this hint that it's a board driver issue and not a hardware issue? Is the fps being sent to fb0 already at 30fps? Sorry, just trying to understand. Been working on this issue for days too.
Click to expand...
Click to collapse
I think it would be very strange if it were a hardware issue, but this test unfortunately doesn't help answer that question.
As far as I can tell, the way drawing works on the phone is... Every app communicates with this "system_server" compositor process. That compositor is what sends the drawing to the framebuffer device. The individual apps use shared memory to share what they want drawn with the compositor.
The question I was trying to answer was. Is the system_server compositor limiting the framerate, or is it the kernel? My program takes the compositor out of the picture, and just does some very fast drawing straight to the framebuffer device as quickly as possible. It measures the framerate at which the drawing is getting processed by the kernel. If I let it run for a while the output is like:
30 frames in last second, 29.7 average fps, total time 102 seconds
which leads me to believe it's definitely not the compositor (or say userspace libraries) imposing the 30fps framerate.
halfline said:
I think it would be very strange if it were a hardware issue, but this test unfortunately doesn't help answer that question.
As far as I can tell, the way drawing works on the phone is... Every app communicates with this "system_server" compositor process. That compositor is what sends the drawing to the framebuffer device. The individual apps use shared memory to share what they want drawn with the compositor.
The question I was trying to answer was. Is the system_server compositor limiting the framerate, or is it the kernel? My program takes the compositor out of the picture, and just does some very fast drawing straight to the framebuffer device as quickly as possible. It measures the framerate at which the drawing is getting processed by the kernel. If I let it run for a while the output is like:
30 frames in last second, 29.7 average fps, total time 102 seconds
which leads me to believe it's definitely not the compositor (or say userspace libraries) imposing the 30fps framerate.
Click to expand...
Click to collapse
Ok, thanks. Here is what I've tried so far:
I've taken the full stock HTC Incredible source (similar device), and just put in 9 board supersonic files into it, changed the makefile to compile those supersonic specific files and the kernel boots and everything is fine, but its still capped at 30fps. The HTC Incredible does not have the 30fps issue, so it's 1) code that I can't find in those 9 board supersonic files, or 2) Hardware capped.
That's my best thoughts for now on it
I think it has to do with the htc lock screen. The lockscreen is difficult to remove in custom roms (i haven't seen anybody do it yet) and when you run fps2d with the screen off you get 60 fps (or like 57)
Hey... you guys do know that720p LCD HDTVs display at 30Hz right? Newer ones do 240 and whatnot, but if you have an LCD monitor that's high def (like our evos), play with the refresh rate... just saying
Tilde88 said:
Hey... you guys do know that720p LCD HDTVs display at 30Hz right? Newer ones do 240 and whatnot, but if you have an LCD monitor that's high def (like our evos), play with the refresh rate... just saying
Click to expand...
Click to collapse
I don't think any one here knows that. At least anyone that has done their homework.
-Roger
hibby50 said:
when you run fps2d with the screen off you get 60 fps (or like 57)
Click to expand...
Click to collapse
If that is true, wouldn't this be evidence that it is not hardware capped?
roghaj said:
I don't think any one here knows that. At least anyone that has done their homework.
-Roger
Click to expand...
Click to collapse
I don't know what thats supposed to mean so ill ignore it...
How about trying the straight to kernel test on avalaunchs' froyo v8 with the OC revision flashed? seems like something different... custom kernel, overclocked, and the cameras not working could be a plus for the benchmark... hopefully hdmi is dead too....
Does anyone know if the hd2 has this issue doesn't it have the exact same screen and alot of the same hardware as the evo just different OS
As there has been much discussion about this I thought I'd start a thread and try and get this worked out properly.
http://www.phoronix.com/scan.php?page=article&item=linux_2637_video&num=1
This 200 line patch is a subject of debate on here, some people claiming it will make a difference, some claiming it won't. Personally I don't think it will. So lets put this to bed.
A backport of this patch is available here -:
http://mirror.couttstech.com/android/bravo/kernel/taskgroup-2.6.38-backport-2.6.32.patch
Any kernel devs willing to try this are most welcome
I have built a kernel with this patch applied, that is available here -:
http://mirror.couttstech.com/[email protected]_CMBattFix_AUTOGROUP_CFQ.zip
Now, this kernel works fine for me, however, some people have reported blank screen problems. I have recompiled and re-uploaded, so if anyone could test that would be great.
Currently I am getting between 1500 and just under 1600 in quadrant with this kernel. I get slightly higher with a BFS/BFQ version on the same kernel. It does feel smooth, but so does the BFS version.
So if anyone can help test this, it would be appreciated.
*****NOTE***** I do not accept any responsibility for any damage this kernel may cause to your device.
I guess one can't see any big difference, because this patch is about Linux Desktop Machines. Their hardware and system architecture is just too different to really compare it. It might have a real effect on a desktop.
I tried your kernel. When the screen is off. I turn it on and it hang .The top of the screen have a white line and i can't do anything. back to the other kernel is ok.
Why do you think your bench score should increase?! As i understood it the patch only increases the responsivness under heavy load. So to test it, one should get the cpu to 100% load and then see if other apps/screen transition/etc are more responsive.
Well even if this patch helps then I wonder if this is still needed. I don't compile stuff or encode videos in background on my phone ;-) . Can't really think off many situations when I would have a heavy cpu load in background. Or do you compile stuff on your phone with 64 jobs while watching some vids (like in the vid of the article)?
What cpu gobernor are you using? With smartass i get a black screen, may be with other there isnt problem.
Br.
Sent from my HTC Desire
yukkio said:
What cpu gobernor are you using? With smartass i get a black screen, may be with other there isnt problem.
Br.
Sent from my HTC Desire
Click to expand...
Click to collapse
Interactive
I've been running autogroup kernel all day no with no problems.
Just changed back to BFS
melethron said:
Why do you think your bench score should increase?! As i understood it the patch only increases the responsivness under heavy load. So to test it, one should get the cpu to 100% load and then see if other apps/screen transition/etc are more responsive.
Well even if this patch helps then I wonder if this is still needed. I don't compile stuff or encode videos in background on my phone ;-) . Can't really think off many situations when I would have a heavy cpu load in background. Or do you compile stuff on your phone with 64 jobs while watching some vids (like in the vid of the article)?
Click to expand...
Click to collapse
I don't think bench should increase, and agree with everything you have said, this patch should make no difference. But some are adament that it does, hence this thread
The problem is (if I understood the patch right) that the automated taskgroup thing is based on tty. Android don't use a tty so first we need something like that Implement automated per session task groups. That should behave better (need to test it but I think it will). Maybe this is the problem and it solves the blank screen problem.
Benee said:
The problem is (if I understood the patch right) that the automated taskgroup thing is based on tty. Android don't use a tty so first we need something like that Implement automated per session task groups. That should behave better (need to test it but I think it will). Maybe this is the problem and it solves the blank screen problem.
Click to expand...
Click to collapse
Ah, excellent, I'll have a good look at that. Thanks!
Not sure about the black screen problem as I don't experience it.
Sent from my HTC Desire using XDA App
coutts99 said:
Interactive
I've been running autogroup kernel all day no with no problems.
Just changed back to BFS
Click to expand...
Click to collapse
May be the problem is the cpu governor. I will probe with interactive.
Br.
Edit: same thing, black windows.
Is it your desire slcd or amoled? Mine amoled.
Sent from my HTC Desire
yukkio said:
May be the problem is the cpu governor. I will probe with interactive.
Br.
Edit: same thing, black windows.
Is it your desire slcd or amoled? Mine amoled.
Sent from my HTC Desire
Click to expand...
Click to collapse
I'm also getting the black screen issue, a white strip at the top, and a bunch of green pixels at the bottom, but the phone is still funtioning, because when i press the volume buttons the phone responds with an audio tone and when i keep on pressing the volume down button the phone vibrates signaling vibrate only...
So I'm considering getting the Skyrocket and I currently have an Atrix but I'm worried about the screen resolution on the Skyrocket since it's 800X480. Will this make a big difference coming from Atrix (540X960)? I also heard about screen burn in on the Skyrocket, how true is this?
Everything is pretty big, i used to hate it but i got used to the resolution and now its fine. you can always change it too. 180-200 looks really nice.
And i don't notice any burn in, but when my whole screen turns black i notice faint marks... they aren't really a problem and it has never affected me when the screen is showing something.
OFWGKTADGAF said:
Everything is pretty big, i used to hate it but i got used to the resolution and now its fine. you can always change it too. 180-200 looks really nice.
And i don't notice any burn in, but when my whole screen turns black i notice faint marks... they aren't really a problem and it has never affected me when the screen is showing something.
Click to expand...
Click to collapse
I hate it when everything is big and takes up half the screen. I don't have this problem with the Atrix and this is the only thing that's preventing me from getting the Skyrocket.
190-210 that's what I use with skyics
Sent from my SAMSUNG-SGH-I727 using xda premium
Root it, set dpi to 180, boom sexier than a nexus screen
Sent from my ASUS Transformer Pad TF300T using XDA Premium HD app
Knowing that I can change the dpi is very good but what about screen burn in? This seems to happen over a few months from what I have read. How many pepper have this problem?
Atrix_Owner said:
Knowing that I can change the dpi is very good but what about screen burn in? This seems to happen over a few months from what I have read. How many pepper have this problem?
Click to expand...
Click to collapse
I haven't seen one mention of it around here
If you Google "sgs2 screen burn in" or "super amoled plus burn in" you will that a lot of people have this problem. The only reason why I'm asking is because one of my friends said they degrade very quickly over short period of time.
Atrix_Owner said:
If you Google "sgs2 screen burn in" or "super amoled plus burn in" you will that a lot of people have this problem.
Click to expand...
Click to collapse
I am speaking about members here, I haven't seen any problems. I guess stay with the atrix, man.
xcrazydx said:
I am speaking about members here, I haven't seen any problems. I guess stay with the atrix, man.
Click to expand...
Click to collapse
I hate the atrix, it's way too small and it overheats like crazy and has a crappy camera. Does the skyrocket overheat at stock speed?
Atrix_Owner said:
I hate the atrix, it's way too small and it overheats like crazy and has a crappy camera. Does the skyrocket overheat at stock speed?
Click to expand...
Click to collapse
Oh, well if you hate the atrix, nevermind. No the rocket does not overheat. Most of the time I run it underclocked, though. But when I run games and stuff I am usually OC to over 1700mhz. I run more for battery life than intensive games most of the time. It gets warm if you're running the charger and playing games or running gps.
xcrazydx said:
Oh, well if you hate the atrix, nevermind. No the rocket does not overheat. Most of the time I run it underclocked, though. But when I run games and stuff I am usually OC to over 1700mhz. I run more for battery life than intensive games most of the time. It gets warm if you're running the charger and playing games or running gps.
Click to expand...
Click to collapse
I'm a similar user like you, I tend to run my phone more for battery life than for games. I'm interested in what you like and dislike about the Skyrocket?
Thanks!
Atrix_Owner said:
I'm a similar user like you, I tend to run my phone more for battery life than for games. I'm interested in what you like and dislike about the Skyrocket?
Thanks!
Click to expand...
Click to collapse
I guess I should mention the "screen lines" issue. If you turn the brightness way down some have vertical lines. Some have it worse than others. Mine is very faint.
There's not much I dislike about it. I am patiently waiting for A final build of AOKP, CM9. We have very good dev support, not as much as the international gs2, but I am pleased with our forum.
Some can't seem to get very good battery life, but I run 24 hours+ no problem with over 5 hours screen on time. This all comes down to your ability to tweak custom kernels and how you let apps run.
GPS is good, bluetooth could be better but I don't use it, speaker phone is good, battery is great for me, music playback apparently doesn't cut for "audiophiles" but I'm perfectly happy with it. Thats all I got for now
I must not be thinking of the same "screen burn in" I've had my skyrocket since release and its always had the artifacts when the screen is totally black. There not that noticeable. I haven't noticed any burn in though.
Sent from my SAMSUNG-SGH-I727 using xda premium
My phone is rooted running SKY ICS latest, how do you adjust the DPI?
bfleischman said:
My phone is rooted running SKY ICS latest, how do you adjust the DPI?
Click to expand...
Click to collapse
Also wondering what the options are. I tried lcd density Pro to 200 and had to restore.
Sent from my SAMSUNG-SGH-I727 using Tapatalk 2
bfleischman said:
My phone is rooted running SKY ICS latest, how do you adjust the DPI?
Click to expand...
Click to collapse
lnfound said:
Also wondering what the options are. I tried lcd density Pro to 200 and had to restore.
Sent from my SAMSUNG-SGH-I727 using Tapatalk 2
Click to expand...
Click to collapse
I use Rom Toolbox and never have any problems... Don't forget to use plagueboys Google Play fix from his thread:
http://forum.xda-developers.com/showthread.php?t=1639213
Gets rid of the Market Incompatibility issues...
rkub said:
I use Rom Toolbox and never have any problems... Don't forget to use plagueboys Google Play fix from his thread:
http://forum.xda-developers.com/showthread.php?t=1639213
Gets rid of the Market Incompatibility issues...
Click to expand...
Click to collapse
190 didn't work too well, couldn't see half my apps. 200 is awesome though, exactly what I wanted the phone to look like. The huge icons really bothered me. However, Play Store, gmail, both load just fine without any issues. Do I even need to do any market fix?
lnfound said:
190 didn't work too well, couldn't see half my apps. 200 is awesome though, exactly what I wanted the phone to look like. The huge icons really bothered me. However, Play Store, gmail, both load just fine without any issues. Do I even need to do any market fix?
Click to expand...
Click to collapse
The market fix it for incompatibility issues. You'll notice this later when you're trying to update apps...
As many of you are most likely aware, the Quarks have a 1440p display. This resolution is higher than the standard 1080p a few years ago.
This creates lots of battery drain and CPU and GPU strain as the device must drive all of those pixels. Our devices can do it with relative ease, however I seek a way to downgrade the resolution to 1080p. This would help battery life as well as performance.
It's possible on an LG G3, so I was wondering if it is on Quark.
Any ideas?
http://forum.xda-developers.com/droid-turbo/help/root-try-to-change-res-to-1080p-t3080313
Answer for the Quark. Yeah, it's over in the Droid Turbo forum, but was posted when we were all one big forum.
ChazzMatt said:
http://forum.xda-developers.com/droid-turbo/help/root-try-to-change-res-to-1080p-t3080313
Answer for the Quark. Yeah, it's over in the Droid Turbo forum, but was posted when we were all one big forum.
Click to expand...
Click to collapse
That seems to only work on a per app basis. I guess that's the only solution.
Thanks; are there any other ideas?
Latiken said:
That seems to only work on a per app basis. I guess that's the only solution.
Thanks; are there any other ideas?
Click to expand...
Click to collapse
Yes, I found this solution some time ago, when I was looking to save battery. But let me tell you that I haven't noticed any improvement. Anyway, you need a rooted device, install a terminal emulator app, and type:
su
wm size 720X1280
Click to expand...
Click to collapse
You will also need to change screen density, you can change it with this command:
wm density xxx
Click to expand...
Click to collapse
With "xxx" being the wanted screen density, I have tested with 300 and 280.
To restore original values, you have to type:
su
wm size 1440x2560
wm density 560
Click to expand...
Click to collapse
Hope that helps.
Enviado desde mi Moto MAXX mediante Tapatalk
And? Battery drain is better with 1080p?
Latiken said:
That seems to only work on a per app basis. I guess that's the only solution.
Thanks; are there any other ideas?
Click to expand...
Click to collapse
The only app I had scaling issues with is the moto display screen. No matter what DPI I set I could not get it to look correct (or unlock from it, had to hit power to get to the normal unlock screen) at 1920x1080. Also, the DPI editor in that app did nothing and you MUST change the DPI when going to a lower res. I always use the build.prop editor in ROM toolbox to change DPI. I had a good experience with it personally but I like the convenience of picking up my phone and swiping to unlock without having to hit the power button. Could've been placebo but the phone did seem a touch snappier and I broke 8hr SoT a few times when running a lower res. I assume that can be chalked up to using less power in any rendering tasks. I do probably average around 7hr SoT on stock res.
In short, if you like not having to hit the power button to unlock your phone, changing res isn't for you. If you don't mind I say it's worth a test run at the least as it is easy to undo.
Thanks for the information guys; gonna be trying this out over the next few days.
Polarisfff said:
And? Battery drain is better with 1080p?
Click to expand...
Click to collapse
Theoretically, yes. I need to test out the battery life as well as performance before I can make a conclusion, though.
Will lowering the voltages improve battery life? If so, how can I go about doing it? I don't really need so much power since I rarely game and all I do is stream media and normal web-browsing.
fist steps are to root and install a custom kernel, if available..the use a kernel modifying program and make your changes that way..
I think you can't since kernel is closed source for our device, might be able with custom ROM. The thing is you don't really want to. Processor has 4 small cores for simple tasks and power saving, it only uses big cores on heavy use. The manufacturer has alredy given you the best option and if the phone is working fine why mess with it? For extra 30 min battery life? It's just not worth it. If you wanna try custom roms buy some older device or Nexus and try it out. Huawei just works from the box.
Without a custom kernel it's impossible. We should get sources soon so just wait
But yeah. Underclocking should improve battery life..
Edit: Sources are up!
ante0 said:
Without a custom kernel it's impossible. We should get sources soon so just wait
But yeah. Underclocking should improve battery life..
Edit: Sources are up!
Click to expand...
Click to collapse
Sources for?
Jaimesco12 said:
Sources for?
Click to expand...
Click to collapse
Mate 9 Kernel source.
ante0 said:
Mate 9 Kernel source.
Click to expand...
Click to collapse
Is there a thread about this or where did you find out? That's awesome news
Jaimesco12 said:
Is there a thread about this or where did you find out? That's awesome news
Click to expand...
Click to collapse
I just checked Huawei open source download site and noticed MHA at the top
arminbih said:
I think you can't since kernel is closed source for our device, might be able with custom ROM. The thing is you don't really want to. Processor has 4 small cores for simple tasks and power saving, it only uses big cores on heavy use. The manufacturer has alredy given you the best option and if the phone is working fine why mess with it? For extra 30 min battery life? It's just not worth it. If you wanna try custom roms buy some older device or Nexus and try it out. Huawei just works from the box.
Click to expand...
Click to collapse
Makes sense. Thank you! I'm still happy with the device. I was just curious as to how/if it was possible and if there were really any benefits. But yeah, for 30 minutes? Might as well just turn on (Ultra) Power Saving mode.