[Bug Report] Frame Limiter Glicth
#1
# PCSX2 version: Official Beta 0.9.7 r3113
# CPU options: all default
# Plugins used:
GSdx 3068 (hardware, dx9) with 1440x1080 (MSVC 15.00, SSE41) 0.1.16 [gsdx-sse2]
Spu2-X r3117 1.4.0

This bug is really extrange. In some parts of some games, I get 40~45fps when I should get 50fps (PAL) with frame limiter in normal mode. But if I turn off the limiter, the fps goes to 66-70fps.

I put here an example game: FFXII PAL
But it happens in almost all games.

Its a GSDX DX9 bug. With DX10/11 the limiter work perfect.


Mi specs:
- Q6600 (2.4GHz)
- 4GB RAM 666Mhz
- ATI 5570
- W7 x64


Attached Files Thumbnail(s)
       
Reply

Sponsored links

#2
I suppose the "catch up" code in the framelimiter needs a recode. Because there is not working OK in some cases.

Code:
    // If the framerate drops too low, reset the expected value.  This avoids
    // excessive amounts of "fast forward" syndrome which would occur if we
    // tried to catch up too much.

    if( sDeltaTime > m_iTicks*8 ) // Maybe this should be 16 or 32
    {
        m_iStart = iEnd - m_iTicks;
        return;
    }
Code:
    if( sDeltaTime > m_iTicks*8 ) // Maybe this should be 16 or 32
Reply
#3
Are you using any speed hack? which ones? worth notice is neither EE or GS are overloaded when it happens.

@DXeros, yes, still I have a hunch than high VU cycle stealing is supplying false lectures to it. Good opportunity to observe the behavior from Valkyrie profile II that presents a inverse problem here, I'll set the VU cycle stealing to 2 and see what happens with the frame limiter on and off.
Imagination is where we are truly real
Reply
#4
The only speed hack I use are the EE "INIC Spin Detection" and "Wait Loop Detection".
I always use 1x Cycle rate in VU and EE.

I have not done "lots" of test, but with one test without SpeedHacks it did happen too. The difference was only 47-49fps -> 52-55fps, that is the max speed the game reached without hacks.
MMmmm, just I did a test with DX10/11 and the bug is not present.
Maybe is some GSdx DX9 related bug.
Reply
#5
Dammit.
Just found another place where with DX10/11 the bug is still there.
It must be a bug in the framelimiter for sure.
Reply
#6
(07-01-2010, 06:56 PM)DXeros Wrote: Dammit.
Just found another place where with DX10/11 the bug is still there.
It must be a bug in the framelimiter for sure.

Got what I expected here with the Valkyrie Profile, with the VU cycle stealing on the FPS goes above 80 and the FPS works as expected, I mean with the expected timing errors too.

In your case it may just the reported CPU is under what the game demands and you'll get a huge gain in performance if setting the VU cycle stealing to 1 in that game without major problems, try it because the main bottleneck in your case is not the video card but the CPU that is begging for a relief.
Imagination is where we are truly real
Reply
#7
(07-01-2010, 06:08 PM)DXeros Wrote: This bug is really extrange. In some parts of some games, I get 40~45fps when I should get 50fps (PAL) with frame limiter in normal mode. But if I turn off the limiter, the fps goes to 66-70fps.

You're describing what Vsync causes, try forcing Vsync off from both the emulator and your graphic card's control panel or any other third party applications that might force it. Try also disabling Aero.

DX10 is usually faster so it's kinda expected for it to not have that behavior so much.

Doesn't look like a real bug report so I'm moving it for now.
Core i5 3570k -- Geforce GTX 670  --  Windows 7 x64
Reply
#8
Thanks for the help.
It is really a pain to have 60+fps and play at 40fps Tongue

EDIT: Yep. Vsync problem. Now Solved.
Reply
#9
Right people. Everyone that posted here, remember that weird FPS behavior is like ALWAYS speedhacks or enabled vsync Wink
Reply




Users browsing this thread: 1 Guest(s)