Author Topic: HTC one FPS  (Read 31421 times)

Offline Grantious

  • bit
  • Posts: 8
    • View Profile
HTC one FPS
« on: May 11, 2013, 09:06:00 PM »
Hey guys, i've been reading the forum and i've found that there are issues with the HTC one galaxy s3 s4 ect ect, but i'm wondering if there has been any progress in fixing these issues, the resolution build helped a little, most games are playable with the frame skip set at no more than 5, little skippy but what can you do, but it'd be nice to turn that down a tad :P, Also with majora's mask the glide64 plugin did fix a lot of the flashing but it was unplayable slow, but i suppose that's progress :P

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: HTC one FPS
« Reply #1 on: May 13, 2013, 10:22:50 PM »
There are a couple of things that are holding back progress on this bug.  The main issue is that we need to get lots of logcat outputs from testers to be able to rule out different theories.  A combination of factors (not just a low number of testers) has made getting these logs very difficult, and progress on the issue has thus been at a standstill.

The first roadblock comes from the fact that Android has recently changed so that one app can no longer read the logcat output from another.  This means we can no longer have folks use the simple aLogcat method for collecting logs for us to read.  In combination with the low number of testers means it is unlikely any have a tester with one of these devices who also has enough development experience to work with the Android SDK to read logcat output.  Clearly, an alternative is necessary.

That alternative to aLogcat is reading the logs from the app itself.  For this purpose we are using Acra.  It is great for detecting crashes, but it is at its core a crash-reporting system.  Meaning it activates when there is a crash.  To collect the logs we are after we must simulate a crash, so that the chunk of log output before the simulated crash is sent along with the report.  This function for simulating a crash is activated through an option in the Advanced settings menu.

The problem with that is there is another issue we have been referring to as the "Activity Stack Double-Pop" (ASDP) bug.  This was caused by the way SDL 1.3 shut down, causing two activities on the stack to close rather than just the top one.  The workaround for this bug was to force-close the game activity by calling System.exit(0) to bypass the normal shutdown sequence.  This has the unfortunate side effect of also killing all logcat output from that Activity from being picked up when a crash test is activated afterwards from the advanced menu.

The upgrade to SDL 2.0 has provided a light at the end of the tunnel.  There is still one more problem to work out, but hopefully it won't be too much longer before testers will actually be able to provide the log output we need to begin ruling things out and hopefully zero in on a solution.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: HTC one FPS
« Reply #2 on: May 14, 2013, 11:47:48 AM »
Good synopsis of the issues.

Just a reminder, if we're desperate for logcat data in the short-term, the fix-asdp branch will allow you to collect in-game data through acra by submitting a test crash.  I.e. the logcat isn't lost when the emulator shuts down and returns you to the menu.  That branch isn't ready for release (it effectively post-pones the hard-crash until the next time you try to launch the emulator, which would confuse most users) but it would work perfectly well with informed testers.
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: HTC one FPS
« Reply #3 on: May 18, 2013, 08:11:26 PM »
Here is a Test Build of that fix-asdp branch littleguy mentioned.

You will need to uninstall any previous tests.  Also, there is a bug in this build which will let you only run a game once (second run will crash, and you may have to force-stop the app or reboot the phone if it keeps crashing after that).  Here are the steps I'd like you to run:

1) Uninstall any previous tests and install this one
2) Enable crash reporting in Advanced settings, and enter your user name
3) Start Mario 64 (wait for some game graphics to show up)
4) Quit and quickly go back to the advanced settings and press Test to send the report
5) Post here with your username you used when you are done, so I can look up the report

I mention doing step 4 quickly, because the logs tend to fill up fast, so the useful piece of the log might not show up in the crash report if other messages flood the log before you can press Test.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline mikethebigo

  • byte
  • *
  • Posts: 16
    • View Profile
Re: HTC one FPS
« Reply #4 on: May 18, 2013, 08:51:04 PM »
Paul,

I'd like to help with testing however I can, I'd love for this to get fixed.  Just switched to a AT&T Galaxy S4 so I can be your Adreno 320 guinea pig.


Just sent you a test report, let me know if there's anything else I can do.

Also, would you happen to know if Moga Pro support is on the horizon?

Thanks!
-Mike

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: HTC one FPS
« Reply #5 on: May 18, 2013, 09:00:05 PM »
Excellent, we finally got one  ;D  Posting the useful bit here so we can find it easily later:

(Galaxy S4)
Code: [Select]
131 I/GameSurface(12907): Config[0]: BS16 R5 G6 B5 A0 D16 S0 AM0 CC|NONE RT71 NR0 NVT0 SB0 Sa0 ST1445
132 I/GameSurface(12907): Config[1]: BS16 R5 G6 B5 A0 D24 S8 AM0 CC|NONE RT71 NR0 NVT0 SB0 Sa0 ST1445
133 I/GameSurface(12907): Config[2]: BS16 R5 G6 B5 A0 D16 S0 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa2 ST1445
134 I/GameSurface(12907): Config[3]: BS16 R5 G6 B5 A0 D24 S8 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa2 ST1445
135 I/GameSurface(12907): Config[4]: BS16 R5 G6 B5 A0 D16 S0 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa4 ST1445
136 I/GameSurface(12907): Config[5]: BS16 R5 G6 B5 A0 D24 S8 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa4 ST1445
137 I/GameSurface(12907): Config[6]: BS24 R8 G8 B8 A0 D16 S0 AM0 CC|NONE RT71 NR0 NVT0 SB0 Sa0 ST1413
138 I/GameSurface(12907): Config[7]: BS24 R8 G8 B8 A0 D24 S8 AM0 CC|NONE RT71 NR0 NVT0 SB0 Sa0 ST1413
139 I/GameSurface(12907): Config[8]: BS24 R8 G8 B8 A0 D16 S0 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa2 ST1413
140 I/GameSurface(12907): Config[9]: BS24 R8 G8 B8 A0 D24 S8 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa2 ST1413
141 I/GameSurface(12907): Config[10]: BS24 R8 G8 B8 A0 D16 S0 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa4 ST1413
142 I/GameSurface(12907): Config[11]: BS24 R8 G8 B8 A0 D24 S8 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa4 ST1413
143 I/GameSurface(12907): Config[12]: BS32 R8 G8 B8 A8 D16 S0 AM0 CC|NONE RT71 NR0 NVT0 SB0 Sa0 ST1509
144 I/GameSurface(12907): Config[13]: BS32 R8 G8 B8 A8 D24 S8 AM0 CC|NONE RT71 NR0 NVT0 SB0 Sa0 ST1509
145 I/GameSurface(12907): Config[14]: BS32 R8 G8 B8 A8 D16 S0 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa2 ST1509
146 I/GameSurface(12907): Config[15]: BS32 R8 G8 B8 A8 D24 S8 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa2 ST1509
147 I/GameSurface(12907): Config[16]: BS32 R8 G8 B8 A8 D16 S0 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa4 ST1509
148 I/GameSurface(12907): Config[17]: BS32 R8 G8 B8 A8 D24 S8 AM0 CC12369 RT71 NR0 NVT0 SB1 Sa4 ST1509
149 I/GameSurface(12907): Using Config[0]
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: HTC one FPS
« Reply #6 on: May 18, 2013, 09:00:16 PM »
Re: Moga Pro - I'll do my best.  Do you have any info on it?  If you own one, please check out this FAQ and post there and I'll see what I can do.
http://www.paulscode.com/forum/index.php?topic=877.0
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: HTC one FPS
« Reply #7 on: May 18, 2013, 09:02:37 PM »
@mikethebigo - Do you see any change in FPS when you enable RGBA8888 mode (Settings->Video)
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline mikethebigo

  • byte
  • *
  • Posts: 16
    • View Profile
Re: HTC one FPS
« Reply #8 on: May 18, 2013, 09:11:15 PM »
It seems like there is slight improvement however the lag is definitely still there.

And thanks for the link to the controller FAQ - it had all the info I needed!

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: HTC one FPS
« Reply #9 on: May 18, 2013, 09:34:38 PM »
I'm going to go out on a limb and guess that these new high-end devices would prefer to use 24-bit depth buffer (and RGBA8888).  They may be using partial software emulation to achieve 16-bit depth buffer.  I can't remember if we tested that theory already.  If not, it would be easy to make a one-off test build that just extends this condition check to find the first config with 24-bit.

Edit: 24 bit depth may throw a wrinkle into the polygon offset stuff, but we could cross that bridge if we get there.
« Last Edit: May 18, 2013, 09:36:52 PM by littleguy »
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: HTC one FPS
« Reply #10 on: May 18, 2013, 10:01:47 PM »
Here is a second Test Build with that logic in place (finds the first match with caveat EGL_NONE, depth 24, and RGBA8888).  Let me know if it runs any faster, and also please repeat the above crash report steps so I can see which config it picked (if the logic worked)
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted

Offline mikethebigo

  • byte
  • *
  • Posts: 16
    • View Profile
Re: HTC one FPS
« Reply #11 on: May 18, 2013, 10:16:44 PM »
Not a very significant difference.  Mario runs only slightly laggy, other games like smash bros still really laggy.  Sent another test report.

Offline littleguy

  • Moderator
  • double
  • *****
  • Posts: 1945
    • View Profile
Re: HTC one FPS
« Reply #12 on: May 18, 2013, 10:24:02 PM »
Is it measurably faster,.or might it just be your imagination? I'm not trying to sound rude -- just trying to verify if we're on to something real :)
2012 Nexus 7, rooted stock Lollipop
Samsung Galaxy Victory, rooted stock Jelly Bean
Xperia PLAY, stock Gingerbread
OUYA, retail version

Offline mikethebigo

  • byte
  • *
  • Posts: 16
    • View Profile
Re: HTC one FPS
« Reply #13 on: May 18, 2013, 10:36:43 PM »
I'd say mostly imagination, honestly it seems the same. (and no worries about sounding rude haha), you guys are doing something for me here!

Offline Paul

  • Administrator
  • double
  • *****
  • Posts: 3495
  • Developer
    • View Profile
    • PaulsCode.Com
Re: HTC one FPS
« Reply #14 on: May 19, 2013, 09:51:45 AM »
I cant seem to find the second crash report.  I find two reports in the queue with your username, but they both say in the logcat "Using Config[0]", which means they must both be from the first test.  I'd like to see which config it picked in the second test to make sure the logic is working.

Could you run those steps again?  But first, to be sure the correct one is installed and set up:

1) Uninstall the test app you have installed now
2) Reinstall the second test from the link above
3) Go to Advanced settings and reenable crash reporting and enter your username

Then run through the steps of starting Mario64 then quitting and going back to Advanced to click Test.
Device: Samsung Galaxy Nexus i515
CPU: TI OMAP4460, 1.2 GHz (dual core, ARM Cortex-A9)
GPU: PowerVR SGX540, 307 MHz
RAM: 1 GB
Resolution: 720 x 1280
Rom: omni-4.4.4-20141014-toro-FML KitKat 4.4.4, rooted

Device: Eee PC 1015PEM
CPU: Intel Atom N550, 1.5 GHz (dual core, x86)
GPU: Intel GMA 3150, 200 MHz (dual core)
RAM: 2GB
Resolution: 1024 x 600
Rom: android-x86-4.3-20130725 Jelly Bean 4.3, rooted