http://bugs.winehq.org/show_bug.cgi?id=59027
--- Comment #4 from FoX virtuousfox@gmail.com --- Also it appears that kernel scheduling tuning affects fps significantly, likely due to latency of thread switching. I've noticed that on last run boost from taskset was too low, it appeared that tuned silently failed to apply the profile on boot. After forcing it, it returned to previously stated values.
I suspect that these settings influence fps when constrained by taskset up to 50-60% of difference: [cpu] load_threshold=0.33 latency_low=1 latency_high=999 pm_qos_resume_latency_us=200 governor=schedutil energy_perf_bias=performance energy_performance_preference=performance sampling_down_factor=3 min_perf_pct=63 [sysfs] /sys/kernel/debug/sched/min_granularity_ns=2000 /sys/kernel/debug/sched/idle_min_granularity_ns=1000000 /sys/kernel/debug/sched/latency_ns=500000 /sys/kernel/debug/sched/wakeup_granularity_ns=1000 /sys/kernel/debug/sched/tunable_scaling=0 /sys/kernel/debug/sched/migration_cost_ns=4000 /sys/kernel/debug/sched/nr_migrate=1 /sys/devices/system/cpu/cpufreq/schedutil/rate_limit_us=50 /sys/block/nvme*n*/queue/scheduler=kyber /sys/block/nvme*n*/queue/nr_requests=512 /sys/block/nvme*n*/queue/max_sectors_kb=2048 /sys/block/nvme*n*/queue/read_ahead_kb=16384 /sys/block/nvme*n*/queue/rq_affinity=2 [sysctl] kernel.sched_autogroup_enabled=0 kernel.sched_cfs_bandwidth_slice_us=1000 kernel.sched_deadline_period_max_us=100000 kernel.sched_deadline_period_min_us=1000 kernel.sched_rt_runtime_us=500000 kernel.sched_rt_period_us=1000000 kernel.sched_rr_timeslice_ms=2 kernel.sched_util_clamp_max=1000 kernel.sched_util_clamp_min=850 kernel.sched_util_clamp_min_rt_default=975 vm.admin_reserve_kbytes=262144 vm.compaction_proactiveness=9 vm.dirty_ratio=24 vm.dirty_background_ratio=16 vm.vfs_cache_pressure=133 vm.swappiness=66 vm.page-cluster=1 vm.watermark_scale_factor=333
My kernel is built with: CONFIG_PREEMPT_LAZY=y CONFIG_PREEMPT_RT=y