Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Nexus 7 (2012 version) not powerful enough?
03-02-2015, 05:43 AM (This post was last modified: 03-02-2015 05:43 AM by the_randomizer.)
Post: #1
Nexus 7 (2012 version) not powerful enough?
So, I recently installed PPSSPP 1.0.0 on my Nexus 7 1st gen, the hardware specs are as follows:

CPU: ARM Cortex-A9 Nvidia Tegra 3 T30L 1.2 GHz quad-core (1.3 GHz single-core mode) 1MB L2 cache
RAM: 1 GB DDR3
GPU: 416 MHz twelve-core Nvidia GeForce ULP
Android version: 4.1.2 for the sake of Wii remote support, 4.2+ breaks it

So, these are the specs in my Nexus 7 tablet, however, upon loading a simple 2D/3D game like Star Ocean, a very disturbing issue occurred, i.e when moving around in towns. The framerate dips significantly when I move around (when the screen moves), however if I stay still, it goes back up to 60 fps. This does not bode well, and as such, I am absolutely 100% convinced that not only is the game too much for my tablet, but my tablet cannot handle PSP emulation, nor will it ever be able to run any PSP games, regardless of the fact it meets more than the minimum requirements.

I don't know if there's anything I can do to boost the speed, or that I'm simply SOL and will never be able to play any PSP game ever again on this tablet. Any suggestions?

Star Ocean shouldn't be that demanding of a game, the fact there's slowdown as I move on a 2D map with prerendered backgrounds disturbs me.

CPU - Intel Core i5 3570 3.4/3.8 GHz (Turbo Boost)
GPU - MSI GeForce GTX 660 2 GB GDDR5
RAM - 8 GB DDR3 SDRAM 1333
OS - Windows 7 Pro 64-bit
HDD - 1 TB Western Digital 7200 RPM
Find all posts by this user
Quote this message in a reply
03-02-2015, 06:40 AM (This post was last modified: 03-02-2015 06:42 AM by [Unknown].)
Post: #2
RE: Nexus 7 (2012 version) not powerful enough?
Star Ocean will run best on Tegra 3 at a lower render resolution. It does some tricky things with stencil buffers that make it not very efficient to emulate.

It's not always best to assume that a game that is mostly 2D ought to run super duper fast.

Star Ocean is imho not very playable without this stencil buffer handling, which is exponentially expensive with higher render resolutions. Most other games (even demanding ones like God of War) never do these tricks, and therefore are not impacted by this issue. It took a good bit of work to get Star Ocean to be playable.

However, you will get full speed if you disable stencil testing (in speed hacks), although characters will always be in front of things and some other graphical glitches will occur.

-[Unknown]
Find all posts by this user
Quote this message in a reply
03-02-2015, 02:51 PM
Post: #3
RE: Nexus 7 (2012 version) not powerful enough?
(03-02-2015 06:40 AM)[Unknown] Wrote:  Star Ocean will run best on Tegra 3 at a lower render resolution. It does some tricky things with stencil buffers that make it not very efficient to emulate.

It's not always best to assume that a game that is mostly 2D ought to run super duper fast.

Star Ocean is imho not very playable without this stencil buffer handling, which is exponentially expensive with higher render resolutions. Most other games (even demanding ones like God of War) never do these tricks, and therefore are not impacted by this issue. It took a good bit of work to get Star Ocean to be playable.

However, you will get full speed if you disable stencil testing (in speed hacks), although characters will always be in front of things and some other graphical glitches will occur.

-[Unknown]


Damn, that's what I was afraid of, so really, either I have objects with proper layering, or I disable stencil buffering, get faster framerates, but at a cost of corrupted layering. I know it took a good amount to get it into a playable state, and I appreciate all the work your team has done. That being said, I simply believe that my tablet is s**t and simply will never be able to play any game at fast speeds without sacrificing graphical accuracy and making the games in an unplayable state as far as graphics go...ugh. Sad So, besides disabling that, do I just need to change the emulation settings for every game I run? See, this is what I was afraid of, truth be told, and as far as the N7 tablet goes, I can't exactly, heh, return it or trade it in, as I was the one who asked for it for Christmas, and the 2nd gen model is twice the price the 1st gen was on sale.

So in essence, I either disable stencil buffering and get faster speeds, or, I keep it on and get screwed with the framerate? Damn, double damn Sad *sigh* It seems that there will never be any games on the N7 that will run full speed. Man...

CPU - Intel Core i5 3570 3.4/3.8 GHz (Turbo Boost)
GPU - MSI GeForce GTX 660 2 GB GDDR5
RAM - 8 GB DDR3 SDRAM 1333
OS - Windows 7 Pro 64-bit
HDD - 1 TB Western Digital 7200 RPM
Find all posts by this user
Quote this message in a reply
03-03-2015, 12:59 AM
Post: #4
RE: Nexus 7 (2012 version) not powerful enough?
I'm actually surprised if you can't get little or no stutter at 1x PSP in that game.

It is possible to set specific settings for each game, although doing that is not really my preference. There's a button in the pause menu for it. This allows not changing settings each time you play a different game.

To be more specific, whenever you pan the screen (it's not actually moving that causes it, it's the screen panning), the game writes brand new stencil values to its stencil buffer, on the PSP (it is actually just the same values as before but panned as you move - unfortunately, even knowing this doesn't really help us.)

PSP games can do this; they can write directly to the stencil buffer and it's fast. Modern GPUs, however, allow no such thing. Instead, the stencil buffer can be interacted with in certain, very fixed ways.

This means we end up having to upload to the stencil buffer 8 separate times. Each pass makes the stencil buffer progressively more accurate, until the 8th when it's finally accurate enough to use. What's more, because we are setting only *some* stencil values (the ones the game uploaded), we most likely trigger the GPU's "slow path". GPUs don't like the word "some".

We've actually already optimized this some. It was really bad before at > 1x PSP, so we figured out a trick: when you use 2x PSP or higher, we create a temporary buffer at 1x, and upload the stencil values there (since the game is only uploading 1x anyway.) Then, we tell the GPU to scale that up to 1x and copy it to the actual stencil buffer (we only do this when the GPU supports that, and Tegra 3 does actually support that afaik.)

Nevertheless, it still does a lot more work than just doing 1x. This is why 1x PSP will still be faster.

There may be other tricks we can use, so "never" is a strong word to use. Maybe that tablet will be able to run Star Ocean better in PPSSPP 2.0.1. But right now, we haven't come up with any better ideas.

-[Unknown]
Find all posts by this user
Quote this message in a reply
03-03-2015, 04:54 AM
Post: #5
RE: Nexus 7 (2012 version) not powerful enough?
Truth be told, I don't know what I said what I said, some games simply do very odd things with the PSP hardware for reasons that may not be known for some time. That, and I tend to be unnecessarily negative when I see games run slow on what should be a fairly powerful tablet, you know? Is there a setting I can use to take advantage of the GPU, to take some of the load off with stencil buffering? Star Ocean 2 seems to run pretty much perfectly, but that's comparing apples to oranges, so I know that not all games will have the same issues, I guess I just needed some clarification is all Big Grin Generally speaking, should I just leave all the settings to default for all the games I run on the Nexus 7?

CPU - Intel Core i5 3570 3.4/3.8 GHz (Turbo Boost)
GPU - MSI GeForce GTX 660 2 GB GDDR5
RAM - 8 GB DDR3 SDRAM 1333
OS - Windows 7 Pro 64-bit
HDD - 1 TB Western Digital 7200 RPM
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump: