Emulator Issues #2034
closedDual Core causes desync between CPU-GPU (disable dual core, everything is fine)
Added by Autoran1 almost 15 years ago.
0%
Description
New limiter works mostly fine but, in SMS i've got problem in slower
areas,
SMS fullspeed=30fps and 60fps, but this areas produce only 20fps with
60VPS it runs and fills slower
when i turn limiter to 80-90VPS for example i've got my fullspped back,
same situation for Mario Galaxy, fullspeed for this game 60fps, sometimes
game runs with fps=vps, sometimes to get my true fps and speed i need to
turn limiter to 90-100vps
Maybe some synchronization needed in this games, please take a look
Updated by Valentin.Meriel almost 15 years ago
I saw the same problem with NSMB Wii. But the problem appears only with EFB to RAM.
Updated by ayuanx almost 15 years ago
To be more precise, you should try OpenGL, which is more creditable than DX9.
Updated by Valentin.Meriel almost 15 years ago
For example :
No Audio Throttle.
OGL with EFB to RAM:
On framelimit = 60 or auto :
NSMB on start screen : 20 fps 60 vps 100% speed.
NSMB on menu and in game : 30 fps 60 vps 100% speed.
On framelimit = 120 :
NSMB on start screen : ~35 fps ~105 vps ~170% speed.
NSMB on menu : ~55 fps ~120 vps ~200% speed.
NSMB in game : ~40 fps ~120 vps ~200% speed.
On framelimit = Off :
NSMB on start screen : ~35 fps ~105 vps ~180% speed.
NSMB on menu : ~85 fps ~257 vps ~430% speed.
NSMB in game : ~60 fps ~170 vps ~290% speed.
DX9 with EFB to RAM:
On framelimit = 60 or auto :
NSMB on start screen : 20 fps 60 vps 100% speed.
NSMB on menu and in game : 30 fps 60 vps 100% speed.
On framelimit = 120 :
NSMB on start screen : ~40 fps ~105 vps ~170% speed.
NSMB on menu : ~60 fps ~120 vps ~200% speed.
NSMB in game : ~60 fps ~120 vps ~200% speed.
On framelimit = Off :
NSMB on start screen : ~46 fps ~140 vps ~220% speed.
NSMB on menu : ~120 fps ~260 vps ~430% speed.
NSMB in game : ~75 fps ~170 vps ~260% speed.
OGL and DX9 with EFB to Gl: hace normal speed.
My PC Intel core2duo E8500 @4Ghz, 4Go Ram and Nvidia 8800Gt 512Mo.
Updated by Autoran1 almost 15 years ago
ayuanx, OGL is too slow itself to see any differences especially in SMG
Updated by ayuanx almost 15 years ago
That is the point. When you are only drawing half of the frames, of course you are
fast. But if you want to draw all the frames...
Updated by Valentin.Meriel almost 15 years ago
Is this a real bug ? And can be corrected ?
Updated by Autoran1 almost 15 years ago
What do you mean by "When you are only drawing half of the frames, of course you are
fast"
Updated by ayuanx almost 15 years ago
I mean the problem is not related with the Limiter at all, it is a problem of desync
between CPU and GPU. That's all.
Updated by ayuanx almost 15 years ago
No, I can't solve the sync problem at the moment.
Updated by Autoran1 almost 15 years ago
ayuanx, ok i thought from the start about desync, but it's became noticeable only
with your framelimiter, so thats why i called issue this way
Updated by ayuanx almost 15 years ago
c'mon, it is not MY framelimiter. And you should set it to off if you don't need it :)
Updated by marcosvitali almost 15 years ago
ayuanx: Could you play NSMB after you frame limiter and before. The difference is after
you have a micro slowdowns. I dont understand why? but for me NSMB is unplayable :(. If
I desactive de frame limiter I have a 300% o more in game :S. I don't know but
something stange happens. Please, could you test it? Thanks
Updated by ayuanx almost 15 years ago
You don't have to bother with FrameLimiter, just uncheck "dual core" and then play
NSMB, you will see. That slowdown is caused by CPU-GPU sync, and has nothing to do
with framelimiter.
Updated by kevinx0404 almost 15 years ago
since speed does NOT equal vps, would it be possible for the % counter to be linked
to the fps? or at least make the framelimiter limit fps and not vps.
Updated by ayuanx almost 15 years ago
kevinx0404, that is wrong, VPS == CPU speed, FPS == GPU speed
on real hadware they match with each other, but we don't yet on Dolphin, and that is
the problem.
When you limit FPS not VPS, this is what you will get: Issue 1918
Updated by ayuanx almost 15 years ago
If you don't believe me, read this:
http://code.google.com/p/dolphin-emu/issues/detail?id=1050&can=1&q=gamespeed#c15
Updated by gerald.lumbroso almost 15 years ago
in new super mario I have very low fps. My specs E8200, 4go DDR2, ati 4890 1go. How
do you obtain 60fps ?
Updated by ayuanx almost 15 years ago
Issue 2082 has been merged into this issue.
Updated by ebirnie almost 15 years ago
why was the way the framelimit worked previously changed anyways? what exactly did it
fix? because it obviously introduced some problems.
Updated by ayuanx almost 15 years ago
Issue 2105 has been merged into this issue.
Updated by ayuanx almost 15 years ago
Issue 2142 has been merged into this issue.
Updated by ayuanx almost 15 years ago
Issue 2134 has been merged into this issue.
Updated by kevinx0404 almost 15 years ago
single core mode doesn't even work for me.
Updated by cacofff almost 15 years ago
Does anyone remember the watchdog? It was a simple control over the FIFO's
synchronisation.
Dolphin right now behaves exactly like it did when setting the WD to 15.
It is in some sort a way to allow some games to run faster since their cpu thread
doesn't wait for the video thread to finish.
Of course, first party games like marios and zeldas DO wait for the video thread to
finish a frame borking the VPS counter.
In short, even if you do it omega's style (full fifo synch), your mario games won't
run faster than 1 or 2 fps than before. Of course, the other wii games will become
slower for those who don't have a high-end gfx card.
Updated by cacofff almost 15 years ago
And about the framelimiter, that, it think, is a separate issue.
Things have been changed over and over since Iulius implemented it.
Updated by ayuanx almost 15 years ago
Issue 1625 has been merged into this issue.
Updated by ayuanx almost 15 years ago
OK, I've done more tests, and the results show that you even don't have to disable
Dual Core. Disabling Idle Skipping is enough to make CPU-GPU synced.
Here is an expamle:
A.
Dual Core: On
Idle Skipping: On
Frame Limiter: Auto
FPS: 30 VPS: 60 (Desync'd)
B.
Dual Core: On
Idle Skipping: Off
Frame Limiter: Auto
FPS: 40 VPS: 40 (Sync'd)
Updated by Nasser.Khelloufi over 14 years ago
ayuanx, dont work, in any release, FPS and VPS (Desync'd)