Frame limiter + vsync issue
#1
If I disable framelimiter I get something like 300FPS, so my hardware is plenty good.

For some reason, the frame limiter just kinda decides 40 or 50 is the best place to be. If I toggle F4, then it goes back up to 60FPS for a while... but will eventually fall back to limiting arounf 40-50.

I just disabled vsync and although it's only been 5 minutes, the problem seems to have gone away.

Vsync is kinda buggy through and through. If it is on, then this happens. If dynamic toggle is on, the toggle triggers on false positives and disrupts smooth audio playback (eg the limiter is doing a bad job and allows the framerate to go below the vsync toggle threshold).

Any solutions to this?
Reply

Sponsored links

#2
i dont use vsync in pcsx2 settings as vsync is already on regardless if you on vista/win7/win8 cause of aero unless you disable aero or specify disable desktop composition per program. And i pretty sure GSDX fullscreen isnt really True Fullscreen. Its actual Windows fullscreen (window with no borders) so have vsync from aero and vsync in pcsx2 is just gona cause issues. I willing to bet if you disable aero and or desktop composition then the internal pcsx2 vsync will work fine
Reply
#3
If you play European (PAL Games) Then 50 fps is 100%, for NTSC (US) it's 60 fps.
Reply
#4
(03-23-2013, 02:40 AM)Link68759 Wrote: If I disable framelimiter I get something like 300FPS, so my hardware is plenty good.

For some reason, the frame limiter just kinda decides 40 or 50 is the best place to be. If I toggle F4, then it goes back up to 60FPS for a while... but will eventually fall back to limiting arounf 40-50.

I just disabled vsync and although it's only been 5 minutes, the problem seems to have gone away.

Vsync is kinda buggy through and through. If it is on, then this happens. If dynamic toggle is on, the toggle triggers on false positives and disrupts smooth audio playback (eg the limiter is doing a bad job and allows the framerate to go below the vsync toggle threshold).

Any solutions to this?

As stated already on above posts, PCSX2 emulates a gaming console which is tied with the country's TV standard. European PAL is fixated at 50 FPS (the TV refresh) while NTSC is fixated in 60 FPS. Anything below or above the standard is bad news.

Now may be a problem if you are to use Vsync, it is almost always 60 FPS on most nowadays monitors and effectively clamps the FPS to that value. To make things worse Vsync has troubles when the FPS does not reach the monitor's refresh rate nominal value. That's because it forces the new frame to start at same time the next screen swept start and then may put the frame in wait state, reducing it yet more (sometimes reducing FPS as much as half the refresh rate).

By principle PAL games already falls on the above issue for the game runs at 50 FPS, The frame limiter introduces some extra oddness in that scenery and from this we can advance some intuitive measures.

First, avoid using Vsync with the emulator, preferably create a profile for PCSX2 in your GPU driver control panel and make sure it's off in there, no adaptive or such things, just put it OFF.

Then, since running above the standard is BAD news, keep the framelimiter on. If the game is falling bellow the correct FPS in this case that is because the machine is not being able to keep the emulation at enough speed. In this case you may need to resource to Speedhacks if still not using them.

Remember, each PS2 game is different on how much demanding it is on the emulator (as it is on PS2 itself also), still more complex saying how much it is demanding on the emulator because the emulation is not perfect and some features on the game may be specially hard on it or the emulator just doesn't react nicely to some "weird" (or just less known) implementations from the game's developers code.

Besides, in a same game the load might and will change depending on what is going on at the time. Sometimes on the same place, just by rotating the camera the game may go from delicious 60 FPS to something outrageously crawling.

Weaving all together, try anything and everything you can to keep the FPS steady at 60 FPS (or 50 FPS for PAL). If some PCSX2 config feature is harming the experience, disable it at once, on the other hand don't think twice before activating the necessary ones.

Edit: Sometimes I don't understand why people don't write angry letters to car manufacturers complaining they could not pull their home uphill with their 1.0 compacts.
(this is a general comment not related to this thread specifically).
Imagination is where we are truly real
Reply
#5
as stated earlier if you on vista/win7/win8 and your using Aero Vsync is already on. Which is why almost no game played in windows should be tearing. If you turn off aero and or Desktop composition in the games shortcuts properties. IT will effective disable vsync and those games that run in windows mode will start tearing.

With turning on vsync in pcsx2 you effective have another vsync trying to run on top of the aero already having vsync enabled. which is causing more issues. atlest this how i see and why i stopped using pcsx2 vsync on all my pc's that use vista or higher with aero.

Absolute no game I played in windows mode, while I have aero and or desktop composition enabled has any tearing. and pcsx2 and or gsdx run windows fullscreen with no boarders it not a true fullscreen if it was true fullscreen when tabing out to desktop it would not be instant and it is and as far as i know only windowed fullscreen is an instant tab to desktop.

Leave vsync off in pcxs2 unless your running XP or lower or running vista or higher with aero/desktop composition on as vsync is already enabled for any in windowed mode.
Reply
#6
That's an interesting point, although I can't say I'm expert in the subject I understand Aero uses double buffering method to fill the second buffer while is presenting the first, and then toggles between them. That alone allow for most part there is always a full buffer to be entered at same time the screen swept.

recent video drivers may use tripple buffering to do similar. Under Aero one could rely on it alone to keep the sync, without it or on fullscreen is given choice to use the driver's Vsync or let it for the application to provide it or decide the driver must do it or force it off. Each case has pros and cons, what makes less sense is having many components trying to do the Vsyn.

Lack of Vsync is not warranty of tearing albeit not granting it will not occur, of course. The best result is that where the user takes a conscious decision on how to use Vsync, if is going to use it at all.
Imagination is where we are truly real
Reply
#7
I can't say I ever remember seeing tearing, I just had it on because I know my machine can handle it and I never had problems before.

For the record, windows 8 does not actually have aero which is a very specific thing, but it does have desktop composition/dwm, which is what I think you are all referring to.

The game is NTSC.

As I explained in my first post, it is *not* a performance related slowdown. The game is persona 4, and in an entirely static scene the FPS could be at 60, then drop down and sit at 40 even though nothing has changed (for example, it's waiting for me to press X to continue a conversation). It's stuck at 40, but if I disable the limiter, it'll jump up to 300, then when I turn the limiter on again it'll go back to 60 for a bit.... so no, it's not a demand/performance thing. Must be a weird issue with the limiter....

However...

I've played with it off for probably an hour and the problem has gone away on my desktop, which raises the question.... why did this never happen on my laptop, also running windows 8, where I also have Vsync on? Now that I think about it, I used AVX on my laptop and SSE4 on my desktop. What exactly is the difference? I read somewhere that AVX is software only, and using SSE4 on my desktop I had some visual bugs, the limiter issue, and some crashes- none of which happened under my laptop. Is AVX more accurate?

edit- I'll do some more testing in a moment, but I think that even if vsync is related, the problem is isolated to the GS SSE4 plugin.
Reply
#8
People was following your lead and talking about how Vsync at more than one place + framelimiter could lead to problems... that was "your" assumption the problem is there. Still nothing was said about the other configs. This is a demanding game, are you using speedhacks? if so, which and how much?

Better yet, give us complete specs on your machine so we can proceed trying to understand what may be causing the problem. Stating (supposing) the hardware is plenty good because it can get 300 FPS unloaded does not tell much, it may be good indeed but tell us what it is really.

Edit: You may have hit something that could lead to a better understanding of what may be causes of problems for the emulator in this specific game that if isolated and reproducible could lead to some kind of patch or even better solution.
Imagination is where we are truly real
Reply
#9
I am using nothing but default settings, except for MVTU (which I have enabled) on both my laptop and desktop. I understand that you are apprehensive about my statement that this is an issue with the speed limiter and not a slowdown due to performance but I promise you... in a *completely static*, looping scene (such as in dialog, with me not advancing the dialog) the frame rate will settle to 40, and in the same exact place I can turn off the limiter and get well above 200fps. I first noticed this when I was running around a dungeon and the framerate mysteriously dropped and stays dropped, but yet disabling the frame limiter lets me run around at hyper speed...

Here is a quick overview of my base specs. If you want me to generate a thorough report using hwinfo I shall... it doesn't seem to work over remote desktop so I can't do it immediately.

Desktop
i7-2700k (3.5GHz quad core)
16GB RAM
2x GTX680 (SLI)
Settings:
Default settings except for listed below
MVTU enabled
4:3, wait for vsync on refresh
GS:sse4-r5350, DX11 hardware, 6x native res, texture filtering, AA1 checked (though it says software only).
Fullscreen window size:1080p

Laptop
i7-3630QM (2.4GHz quad core)
8GB RAM
650M GT
Settings
Default settings except for listed below
MVTU enabled
4:3, wait for vsync on refresh
GS:avx-r5350, DX11 hardware, 3x native res, texture filtering
Fullscreen window size:1366x768


On my desktop there were occasional graphical glitches and the frame limiter issue. The limiter issue went away after I disabled vsync.

On my laptop, there were zero graphical glitches, everything is perfect, vsync is on and I have no issues with the frame limiter. Also my laptop is the weaker machine and I can still get 200fps (at 3x internal resolution).

So it seems to me the [un]common denominator here is the GS plugin.... It seems AVX is more generally accurate, and sse4 is having issues with vsync (or possibly, double vsync). Also SSE4 crashed for me several times while creating save states :/, that almost never happens on my laptop.

Persona4 doesn't seem to be particularly demanding... only rarely when there is a lot of fog. Even my laptop can still pump out 70FPS with 3x res during such scenes...
Reply
#10
(03-23-2013, 10:08 PM)Link68759 Wrote: I am using nothing but default settings, except for MVTU (which I have enabled) on both my laptop and desktop. I understand that you are apprehensive about my statement that this is an issue with the speed limiter and not a slowdown due to performance but I promise you... in a *completely static*, looping scene (such as in dialog, with me not advancing the dialog) the frame rate will settle to 40, and in the same exact place I can turn off the limiter and get well above 200fps. I first noticed this when I was running around a dungeon and the framerate mysteriously dropped and stays dropped, but yet disabling the frame limiter lets me run around at hyper speed...

Here is a quick overview of my base specs. If you want me to generate a thorough report using hwinfo I shall... it doesn't seem to work over remote desktop so I can't do it immediately.

Desktop
i7-2700k (3.5GHz quad core)
16GB RAM
2x GTX680 (SLI)
Settings:
Default settings except for listed below
MVTU enabled
4:3, wait for vsync on refresh
GS:sse4-r5350, DX11 hardware, 6x native res, texture filtering, AA1 checked (though it says software only).
Fullscreen window size:1080p

Laptop
i7-3630QM (2.4GHz quad core)
8GB RAM
650M GT
Settings
Default settings except for listed below
MVTU enabled
4:3, wait for vsync on refresh
GS:avx-r5350, DX11 hardware, 3x native res, texture filtering
Fullscreen window size:1366x768


On my desktop there were occasional graphical glitches and the frame limiter issue. The limiter issue went away after I disabled vsync.

On my laptop, there were zero graphical glitches, everything is perfect, vsync is on and I have no issues with the frame limiter. Also my laptop is the weaker machine and I can still get 200fps (at 3x internal resolution).

So it seems to me the [un]common denominator here is the GS plugin.... It seems AVX is more generally accurate, and sse4 is having issues with vsync (or possibly, double vsync). Also SSE4 crashed for me several times while creating save states :/, that almost never happens on my laptop.

Persona4 doesn't seem to be particularly demanding... only rarely when there is a lot of fog. Even my laptop can still pump out 70FPS with 3x res during such scenes...

nice computer, im sure it great for games made for pc, but when it come to emulation and more specificly pcsx2 there is no cpu out there atm that can run every game at full speed atlest not yet especial at 6x native res and seeing you where running it at 3x on laptop as opposed to 6x on desktop, of coarse the laptop gona perform better. drop it to 3x or 4x.
Reply




Users browsing this thread: 1 Guest(s)