11-12-2012, 09:46 AM
11-12-2012, 07:11 PM
I have experienced it twilight princess also, i was getting 5fps in hyrule field but vps was 60 which led to perfect audio despite slow speed.
11-12-2012, 08:42 PM
Nv and Zee530, its great it happens for you even on default settings,it just means you should have less sound problems 
It never happens for me with default settings,i get either 1:1 ratio or 1:2 ratio.
My suggestion here is basically making an option which will remove the ratio.

It never happens for me with default settings,i get either 1:1 ratio or 1:2 ratio.
My suggestion here is basically making an option which will remove the ratio.
11-13-2012, 07:14 AM
Quote:its great it happens for you even on default settings,it just means you should have less sound problems
It only happens in certain situations and it does not help resolve audio issues at all.
Quote:My suggestion here is basically making an option which will remove the ratio.
Please reread these:
Quote:The game contains sync code that compensates for a slower graphics update.
Quote:VPS > FPS means that the GPU can't process the amount of frame render request sent by the CPU, i.e. you're GPU-thread bound (a faster GPU will help here but is not a panacea because the GPU thread is also a fair bit CPU dependent)
Quote:EDIT: To elaborate a bit more on the second case: Like skid said, the game code takes care of this case and what most console games end up doing is "slow-motion". It would technically be possible to make the game logic dependent on the frame rate, but console games usually run at full FPS anyway so they're hardcoded for a fixed frame rate.
Quote:What I am talking here is "desynchronizing" two threads in a way, ( skid explained that true desynchronizing is imposible since we would get a black screen )
So you want the devs to desync them even though you just stated that it would break every game?
Quote:Basically letting the game code take care of sync issues intead forcibly slowing down jit/jitil recomplier.
Now I'm confused. Do you want to remove the sync code and break every game or leave it in? To my knowledge the only thing forcibly slowing down the recompiler besides syncing is the framelimiter.
Quote:Now instead only allowing it to be 30/60 or 29/58 or 28/56 etc... allowing to for example be 29/60 20/60 15/60 etc..you get the point
Dolphin does whatever the game wants it to do. Doing anything else usually causes the game to break.
11-13-2012, 07:44 AM
NV, I made two screenshoots, I thought everything is clear ?
I want games to run like in first screenshoot, and I dont want games to run like in second screenshot.
Its pretty clear...I dont know why are you confused.
Removing sync code ( the one I am talking about here ) will not break any game. I was not having any problems playing SMG2 at 34 FPS and 111 VPS.
Its clear FPS and VPS in this case are not in either 1:1 or 1:2 ratio.
Nor did I have problems with any other game I tested when ratio is removed.
I am not sure what exactly skid meant when he said that removing sync code would cause black screen. It obviously doesn't.
Maybe still,even when FPS and VPS values are not linked,some kind of synchronizing is still going on in the background, posible by game itself ( this is what skid suggested ).
I dont really care about this, nor is that what I am talking about here.
No it doesnt. VPS are not supposed to be lowered,just because FPS is lowered. VPS is supposed to always be 60.
I want games to run like in first screenshoot, and I dont want games to run like in second screenshot.
Its pretty clear...I dont know why are you confused.
(11-13-2012, 07:14 AM)NaturalViolence Wrote: [ -> ]Now I'm confused. Do you want to remove the sync code and break every game or leave it in? To my knowledge the only thing forcibly slowing down the recompiler besides syncing is the framelimiter.
Removing sync code ( the one I am talking about here ) will not break any game. I was not having any problems playing SMG2 at 34 FPS and 111 VPS.
Its clear FPS and VPS in this case are not in either 1:1 or 1:2 ratio.
Nor did I have problems with any other game I tested when ratio is removed.
I am not sure what exactly skid meant when he said that removing sync code would cause black screen. It obviously doesn't.
Maybe still,even when FPS and VPS values are not linked,some kind of synchronizing is still going on in the background, posible by game itself ( this is what skid suggested ).
I dont really care about this, nor is that what I am talking about here.
(11-13-2012, 07:14 AM)NaturalViolence Wrote: [ -> ]Dolphin does whatever the game wants it to do. Doing anything else usually causes the game to break.
No it doesnt. VPS are not supposed to be lowered,just because FPS is lowered. VPS is supposed to always be 60.
11-13-2012, 04:35 PM
(11-13-2012, 07:44 AM)rpglord Wrote: [ -> ]Removing sync code ( the one I am talking about here ) will not break any game. I was not having any problems playing SMG2 at 34 FPS and 111 VPS.
skid specifically said nothing is out of sync. The reason why you don't have any problems (black screens) is due to the fact that the CPU and GPU are still syncing properly, even with Accurate VBeam Emulation turned on/Idle Skipping Disabled, thanks to the game's sync code. Enabling Accurate VBeam Emulation/disabling Idle Skipping does seem to let the emulated CPU send a lot of frame render requests (i.e. 111 vs 34) and run at or above fullspeed. This is the behavior you want, since it also seems to affect audio quality. Eliminating the synchronization between the CPU and GPU won't do that at all. You want whatever Accurate VBeam Emulation/disable Idle Skipping is doing behind the scenes.
(11-13-2012, 07:44 AM)rpglord Wrote: [ -> ]I am not sure what exactly skid meant when he said that removing sync code would cause black screen. It obviously doesn't.
Perhaps I'm being redundant in pointing this out again, but the reason why you haven't experienced any black screens is that you haven't removed the game's sync code at all. Accurate VBeam Emulation/Disable Idle Skipping is doing something with the emulated CPU that allows it to send an inordinate amount of frame render requests, and even lets it run at greater than 100%, and this affects the audio quality (with LLE audio for example). Whatever is happening here (fwiw, I still don't remember ever hearing a thorough explanation about this from a dev) that's what you're after.
(11-13-2012, 07:44 AM)rpglord Wrote: [ -> ]VPS is supposed to always be 60.
Not for PAL games :p
11-13-2012, 05:49 PM
I guess I'll just dispense with the normal WoT of corrections since Shonumi just summed up half of it. Instead I have two questions for you rpglord.
1. Is the game actually running any faster? Does it feel/look faster? I had a talk with neobrain about this today and he remains unconvinced because apparently the vps is not necessarily a good way to measure gamespeed but it's the method dolphin uses none the less.
2. I'm not sure if you realize this but your vps/fps is still running at a fixed ratio, 3:1 to be exact. Does this ratio remain constant if vps or fps goes up/down? If the ratio changes than does it ever go outside, 4:1, 3:1, 2:1, or 1:1? In other words do you ever get something like 2.56:1?
I'll just add this one correction:
It IS supposed to happen. That's the correct behavior. The game code is supposed to automatically lower vps when fps goes down.
1. Is the game actually running any faster? Does it feel/look faster? I had a talk with neobrain about this today and he remains unconvinced because apparently the vps is not necessarily a good way to measure gamespeed but it's the method dolphin uses none the less.
2. I'm not sure if you realize this but your vps/fps is still running at a fixed ratio, 3:1 to be exact. Does this ratio remain constant if vps or fps goes up/down? If the ratio changes than does it ever go outside, 4:1, 3:1, 2:1, or 1:1? In other words do you ever get something like 2.56:1?
I'll just add this one correction:
Quote:No it doesnt. VPS are not supposed to be lowered,just because FPS is lowered. VPS is supposed to always be 60.
It IS supposed to happen. That's the correct behavior. The game code is supposed to automatically lower vps when fps goes down.
11-13-2012, 09:04 PM
(11-13-2012, 04:35 PM)Shonumi Wrote: [ -> ]skid specifically said nothing is out of sync. The reason why you don't have any problems (black screens) is due to the fact that the CPU and GPU are still syncing properly, even with Accurate VBeam Emulation turned on/Idle Skipping Disabled, thanks to the game's sync code. Enabling Accurate VBeam Emulation/disabling Idle Skipping does seem to let the emulated CPU send a lot of frame render requests (i.e. 111 vs 34) and run at or above fullspeed. This is the behavior you want, since it also seems to affect audio quality. Eliminating the synchronization between the CPU and GPU won't do that at all. You want whatever Accurate VBeam Emulation/disable Idle Skipping is doing behind the scenes.
Exactly. I think it would be beneficial if dolphin would let emulated cpu always run at fullspeed. ( as long as hardware where dolphin is run can actually emulate jit at 60 VPS ofc ).
Slowing down JIT or JITIL speed below 60, even when hardware can deliver 60 or more, is what I am suggesting should be changed.
(11-13-2012, 05:49 PM)NaturalViolence Wrote: [ -> ]1. Is the game actually running any faster? Does it feel/look faster? I had a talk with neobrain about this today and he remains unconvinced because apparently the vps is not necessarily a good way to measure gamespeed but it's the method dolphin uses none the less.
Game is not running faster, its running at about half the speed, because thats what gpu thread can deliver, with IR and AA increased.
However, DSP LLE is running above fullspeed. If I were to enable framelimit, it wouldnt be 34/111 it would be 34/60 and DSP LLE would run at normal speed without any issues ( skipping etc ).
However,with default settings, DSP LLE wouldn't run at fullspeed, and it would stutter.
(11-13-2012, 05:49 PM)NaturalViolence Wrote: [ -> ]2. I'm not sure if you realize this but your vps/fps is still running at a fixed ratio, 3:1 to be exact. Does this ratio remain constant if vps or fps goes up/down? If the ratio changes than does it ever go outside, 4:1, 3:1, 2:1, or 1:1? In other words do you ever get something like 2.56:1?
No, there is no any constant ratio between FPS and VPS, they are completely independent from each other.
When I increase IR to 4x for example,I get ratio of 5.5 instead of 3.
What decides FPS and VPS values is the actually speed at which jit is emulated for VPS and actually speed at which gpu is emulated for FPS.
With default settings, speed at which gpu is emulated decides both FPS and VPS values.
(11-13-2012, 05:49 PM)NaturalViolence Wrote: [ -> ]It IS supposed to happen. That's the correct behavior. The game code is supposed to automatically lower vps when fps goes down.
Well then I suggest that part of game code is ignored
Because based on my testing, it wont hurt anything ( cause black screen ) but can be beneficial.11-14-2012, 02:48 PM
Quote:Game is not running faster, its running at about half the speed, because thats what gpu thread can deliver, with IR and AA increased.
So just to be perfectly clear is is running "in slow-motion" even though the vps is well above 60. Is that correct?
Quote:However, DSP LLE is running above fullspeed. If I were to enable framelimit, it wouldnt be 34/111 it would be 34/60 and DSP LLE would run at normal speed without any issues ( skipping etc ).
However,with default settings, DSP LLE wouldn't run at fullspeed, and it would stutter.
How are you measuring DSP emulation speed?
Quote:Well then I suggest that part of game code is ignored Because based on my testing, it wont hurt anything ( cause black screen ) but can be beneficial.
What I personally think is that either the vps is being reported incorrectly when those settings are used or the information is being misrepresented (as in 60 vps without these settings does not have the same effect as 60 vps with these settings, that's sloppy writing but I really can't think of a better way to word that, hopefully you'll know what I meant to say).
I doubt that you have successfully broken the games throttling logic.
What behavior does each of the following produce?
1. Idle skipping off vbeam on
2. Idle skipping on vbeam on
3. Idle skipping off vbeam off
11-14-2012, 08:03 PM
(11-14-2012, 02:48 PM)NaturalViolence Wrote: [ -> ]So just to be perfectly clear is is running "in slow-motion" even though the vps is well above 60. Is that correct?
Yes, that is correct.
(11-14-2012, 02:48 PM)NaturalViolence Wrote: [ -> ]How are you measuring DSP emulation speed?
Because of the way it sounds. For LLE :
-If its running above fullspeed, it will sound faster then it should and it will have a crackling noise attached to it.
-If its running at fullspeed, it will sound normal.
-If its running below fullspeed, it wil stutter / skip. ( we all know this behaviour, and its completely different then when running above fullspeed, difference is easily recognisable ).
(11-14-2012, 02:48 PM)NaturalViolence Wrote: [ -> ]What I personally think is that either the vps is being reported incorrectly when those settings are used or the information is being misrepresented (as in 60 vps without these settings does not have the same effect as 60 vps with these settings, that's sloppy writing but I really can't think of a better way to word that, hopefully you'll know what I meant to say).
I dont think vps is beeing reported incorrectly because of DSP LLE speed and way it sounds.
There is no reason, and I dont think its even posible, for DSP LLE to run faster when VPS is at or below fullspeed.
Also, skid said that counter is not broken.
I am not sure what you mean with other part. 60 VPS will have exactly same effect with or without these settings, problem is when VPS is below 60, these settings get it back up to 60.
(11-14-2012, 02:48 PM)NaturalViolence Wrote: [ -> ]I doubt that you have successfully broken the games throttling logic.
What behavior does each of the following produce?
1. Idle skipping off vbeam on
2. Idle skipping on vbeam on
3. Idle skipping off vbeam off
It is posible that these settings overide games throttling logic, this is emulator after all, stuff dont always work as they should

Its very interesting question you asked, about what exactly each settings does, they are both capable of producing this effect on their own, but its usually best to combine them :
1. This is the setting which disables throtling always ( I dont want to use word synchronizing anymore because apperantly its incorrect usage of the word in this scenario ).
2. Enabling only vbeam usually doesnt disable VPS throttling on its own, but does sometimes in some games. For example, it doesnt do anything in SMG2 but provides slight speedup, FPS and VPS will still have same value.
3. Same can be said for only disabling idle skipping, doesnt do anything usually, but can sometimes. Strangest result is in SMG2, it seems to disable VPS throttling, but not in all parts of the game, and not as much as together with vbeam, in SMG2 I got 63 VPS instead of 111 at that exactly same place I already tested.
I already tried testing each settings seperately, and results vary very much and no clear consclusion can be made, except that these settings should be used together for best effect