Skip to content

Commit

Permalink
SPU: Power consumption reduction when using SPU inaccurate reservations
Browse files Browse the repository at this point in the history
  • Loading branch information
elad335 committed Sep 12, 2022
1 parent 572a2a0 commit 01649ab
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions rpcs3/Emu/Cell/SPUThread.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4336,6 +4336,12 @@ s64 spu_thread::get_ch_value(u32 ch)
return true;
});

if (raddr - spurs_addr <= 0x80 && !g_cfg.core.spu_accurate_reservations && mask1 == SPU_EVENT_LR)
{
thread_ctrl::wait_on(vm::reservation_notifier(raddr), rtime, -128);
continue;
}

vm::reservation_notifier(raddr).wait(rtime, -128, atomic_wait_timeout{80'000});
}
else
Expand Down

0 comments on commit 01649ab

Please sign in to comment.