What we should think about:

"VideoFifo_CheckEFBAccess()" & "VideoFifo_CheckSwapRequest()" should be moved to a more suitable place than inside function "Fifo_EnterLoop()", which wastes considerable amount of CPU time (exhausting one core completely even when paused) and also makes VPS inaccurate.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4778 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
ayuanx 2010-01-03 18:58:50 +00:00
parent a3c258cf9c
commit e80078dc3c

View File

@ -210,7 +210,12 @@ void Fifo_EnterLoop(const SVideoInitialize &video_initialize)
}
CommandProcessor::SetFifoIdleFromVideoPlugin();
fifo_run_event.MsgWait();
// "VideoFifo_CheckEFBAccess()" & "VideoFifo_CheckSwapRequest()" should be
// moved to a more suitable place than inside function "Fifo_EnterLoop()"
if (g_ActiveConfig.bEFBAccessEnable || g_ActiveConfig.bUseXFB)
Common::YieldCPU();
else
fifo_run_event.MsgWait();
}
}