mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-02-22 03:40:30 +00:00
Linux: Change default Sleep Timers accuracy to host
- This doesn't change existing configs - Also sets the host_min_quantum to the true value - Restores lost TODO: comment
This commit is contained in:
parent
2171ffdab2
commit
1a9e06d3c6
@ -252,12 +252,13 @@ public:
|
|||||||
remaining = usec - passed;
|
remaining = usec - passed;
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
// NOTE: Assumption that timer initialization has succeeded
|
// NOTE: Assumption that timer initialization has succeeded
|
||||||
u64 host_min_quantum = is_usleep && remaining <= 1000 ? 16 : 50;
|
u64 host_min_quantum = is_usleep && remaining <= 1000 ? 10 : 50;
|
||||||
#else
|
#else
|
||||||
// Host scheduler quantum for windows (worst case)
|
// Host scheduler quantum for windows (worst case)
|
||||||
// NOTE: On ps3 this function has very high accuracy
|
// NOTE: On ps3 this function has very high accuracy
|
||||||
constexpr u64 host_min_quantum = 500;
|
constexpr u64 host_min_quantum = 500;
|
||||||
#endif
|
#endif
|
||||||
|
// TODO: Tune for other non windows operating sytems
|
||||||
|
|
||||||
if (g_cfg.core.sleep_timers_accuracy < (is_usleep ? sleep_timers_accuracy_level::_usleep : sleep_timers_accuracy_level::_all_timers))
|
if (g_cfg.core.sleep_timers_accuracy < (is_usleep ? sleep_timers_accuracy_level::_usleep : sleep_timers_accuracy_level::_all_timers))
|
||||||
{
|
{
|
||||||
|
@ -419,7 +419,12 @@ struct cfg_root : cfg::node
|
|||||||
cfg::_bool hle_lwmutex{this, "HLE lwmutex"}; // Force alternative lwmutex/lwcond implementation
|
cfg::_bool hle_lwmutex{this, "HLE lwmutex"}; // Force alternative lwmutex/lwcond implementation
|
||||||
|
|
||||||
cfg::_int<10, 1000> clocks_scale{this, "Clocks scale", 100}; // Changing this from 100 (percentage) may affect game speed in unexpected ways
|
cfg::_int<10, 1000> clocks_scale{this, "Clocks scale", 100}; // Changing this from 100 (percentage) may affect game speed in unexpected ways
|
||||||
cfg::_enum<sleep_timers_accuracy_level> sleep_timers_accuracy{this, "Sleep Timers Accuracy", sleep_timers_accuracy_level::_usleep};
|
cfg::_enum<sleep_timers_accuracy_level> sleep_timers_accuracy{this, "Sleep Timers Accuracy",
|
||||||
|
#ifdef __linux__
|
||||||
|
sleep_timers_accuracy_level::_as_host};
|
||||||
|
#else
|
||||||
|
sleep_timers_accuracy_level::_usleep};
|
||||||
|
#endif
|
||||||
} core{this};
|
} core{this};
|
||||||
|
|
||||||
struct node_vfs : cfg::node
|
struct node_vfs : cfg::node
|
||||||
|
Loading…
x
Reference in New Issue
Block a user