Skip to content Skip to sidebar Skip to footer

How to set speed to 100%/60fps with PPSSPP and graphic terminology

Most games do not run smoothly and require PPSSPP settings. A gaming setup that produces good graphics and sound quality also requires good machine/hardware performance, but not all devices have the same great engine. Below is a description of the PPSSPP settings (taken from the PPSSPP forum).

Disable Interpreter/JIT (Dynarec): A translator in computer science is a computer program that carries out, or executes, instructions written in a programming language. Interpreters are a class of transcoding algorithms that are very slow among most debugging algorithms, but work on all types of CPU architectures.

Dynalec (JIT) / Activate “JIT (Dynalec)”: stands for Dynamic Recompiler. Also known as JIT (just-in-time compiler). The idea is to recompile parts of the program while it’s running (in this case converting MIPS to PSP machines). Much faster than the interpreter and default recommended for supported architectures (x86 and ARM).

buffered rendering: The PSP can access anywhere in VRAM and use it as a scanout buffer (what you see on screen) or as a texture. Many games use this to apply special effects or simply run 30fps (which requires showing the same buffer twice). We simulate this by assigning an OpenGL FBO to each PSP framebuffer location.

speed hack, not all games can be sped up, and some features may introduce graphical artifacts or screen flickering. Another effect of disabling this option is that you can no longer perform 2x supersampling.

hardware conversion: Use a vertex shader to run vertex T&L shapes on the GPU instead of the CPU device. There are slight differences in implementation and speed depends on GPU performance.

linear filtering: Useful filter to smooth the image. Essentially forces bilinear filtering on all graphics. Artifacts can occur, but the HUD and 2D are also smoothed.

Simple 2x SSAA: Super Simple Sampling Anti-Aliasing Algorithm 2x. Reduces image aliasing, which requires a relatively powerful GPU, especially at high resolutions. Disable if delays occur. This setting requires buffered rendering to be enabled.

Use VBO / Draw using VBO Streaming: Another way to send dynamic vertex data to the GPU. There really isn’t much of a speedup.

vertex cache: optimisation. This makes loading vertices faster in the order of the next vertex scene. Some geometry changes may be lost. This can cause vertex edges to disappear. If you experience strange graphical glitches, disable it.

Frame Skip / Frame Skip (Beta): Enabling frameskip may not improve performance. When enabled, graphics artifacts and screen flickering may occur even with buffered rendering enabled. frameskip is useful when performance is limited by the GPU or GPU emulation. If your performance is limited by CPU emulation / HLE, it probably won’t help you anyway. So it depends not only on your hardware, but also on your game.

use machine media: These all control whether the HLE function returns -1 or tries to work. If your game doesn’t call any sceMpeg * functions, your choice has no effect.

Some games may be suitable for this option.

Fast Memory (dynarec, unstable) / Fastmem (possibly unstable): More or less passes some checks, assuming you’re accessing the game directly. So speed it up a bit. But when the game accesses invalid memory, the whole emu crashes.

mipmapping: If disabled, you may see more detail, but your game may be slower.