More green. CPU sleeps when fifo HiWaterMark reached now. Showing more obviously when GPU become the bottleneck. Again, if it hurts perf -> GPU needs improvement where CPU load drop. I need to check some fifo stuff. TODO: test if HiWM are less reached with or without sending the whole fifoReadWriteDistance.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1867 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
32ef02c959
commit
ed3281290d
|
@ -372,6 +372,8 @@ void Write16(const u16 _Value, const u32 _Address)
|
||||||
*/
|
*/
|
||||||
LOG(COMMANDPROCESSOR, "*********************** GXSetGPFifo very soon? ***********************");
|
LOG(COMMANDPROCESSOR, "*********************** GXSetGPFifo very soon? ***********************");
|
||||||
u32 ct=0;
|
u32 ct=0;
|
||||||
|
// (mb2) We don't sleep here since it could be a perf issue for super monkey ball (yup only this game IIRC)
|
||||||
|
// Touching that game is a no-go so I don't want to take the risk :p
|
||||||
while (fifo.bFF_GPReadEnable && fifo.CPReadWriteDistance > 0 )
|
while (fifo.bFF_GPReadEnable && fifo.CPReadWriteDistance > 0 )
|
||||||
ct++;
|
ct++;
|
||||||
if (ct) {LOG(COMMANDPROCESSOR, "(Write16): %lu cycles for nothing :[ ", ct);}
|
if (ct) {LOG(COMMANDPROCESSOR, "(Write16): %lu cycles for nothing :[ ", ct);}
|
||||||
|
@ -603,10 +605,9 @@ void STACKALIGN GatherPipeBursted()
|
||||||
while (!(fifo.bFF_BPEnable && fifo.bFF_Breakpoint) && fifo.CPReadWriteDistance > fifo.CPLoWatermark)
|
while (!(fifo.bFF_BPEnable && fifo.bFF_Breakpoint) && fifo.CPReadWriteDistance > fifo.CPLoWatermark)
|
||||||
{
|
{
|
||||||
ct++;
|
ct++;
|
||||||
// dunno if others threads (like the audio thread) really need a forced context switch here
|
Common::SleepCurrentThread(1);
|
||||||
//Common::SleepCurrentThread(1);
|
|
||||||
}
|
}
|
||||||
if (ct) {LOG(COMMANDPROCESSOR, "(GatherPipeBursted): %lu cycles for nothing :[", ct);}
|
if (ct) {LOG(COMMANDPROCESSOR, "(GatherPipeBursted): %lu ms for nothing :[", ct);}
|
||||||
/**/
|
/**/
|
||||||
}
|
}
|
||||||
// check if we are in sync
|
// check if we are in sync
|
||||||
|
|
Loading…
Reference in New Issue