Apologies for blowing up the thread. Got some benchmarks with these new Ryzen scheduler patches. (available via my build script, see profile if interested).
I also added some GRUB changes, sysctl conf updates, and slightly tightened up the memory timings (but no other BIOS changes),
Just hit 8.0 geometric mean on pts/osbench. Not too shabby. All tests below are with mitigations=off. The 5.879 score was what I got on a default, fresh Ubuntu 21.10 installation with mitigations=off, 5.13.0-22 generic kernel, none scheduler, and schedutil as the governor.
All the changes are kernel/software based except for the tighter memory timings which are just a small part of it (can see the Memory Allocations test for the improvement there.). Get to compiling, everyone. Lots of untapped performance out there. For free.
https://openbenchmarking.org/result/...27&sgm=1&ppt=D
GRUB changes:
99-sysctl.conf additions:
Environment variables (via .pam_environment):
Small note: I previous had RADV_DEBUG=llvm and that cost me 20 FPS in Shadow of the Tomb Raider benchmarks. So I definitely recommend removing that if you have that set.
Please also review the above, don't just copy and paste, but I think there's some good stuff there. Feel free to share anything you've got also. Who cares what thread it's in. More information the better. Cheers.
I also added some GRUB changes, sysctl conf updates, and slightly tightened up the memory timings (but no other BIOS changes),
Just hit 8.0 geometric mean on pts/osbench. Not too shabby. All tests below are with mitigations=off. The 5.879 score was what I got on a default, fresh Ubuntu 21.10 installation with mitigations=off, 5.13.0-22 generic kernel, none scheduler, and schedutil as the governor.
All the changes are kernel/software based except for the tighter memory timings which are just a small part of it (can see the Memory Allocations test for the improvement there.). Get to compiling, everyone. Lots of untapped performance out there. For free.
https://openbenchmarking.org/result/...27&sgm=1&ppt=D
GRUB changes:
GRUB_CMDLINE_LINUX_DEFAULT="quiet mitigations=off amdgpu.freesync_video=1 nosoftlockup pkill_on_warn=1 psi=0 audit=0 mce=ignore_ce ipv6.disable=1 hugepagesz=1G hugepages=1 default_hugepagesz=1G"
vm.stat_interval = 10
vm.dirty_ratio = 10
vm.dirty_background_ratio = 3
vm.dirty_ratio = 10
vm.dirty_background_ratio = 3
XZ_DEFAULTS="-T 16"
CONCURRENCY_LEVEL=16
ZINK_DESCRIPTORS=lazy
AMD_VULKAN_ICD=RADV
RADV_PERFTEST=rt
RADEONSI_ENABLE_NIR=true
MESA_DISK_CACHE_SINGLE_FILE=1
TEARFREE_DISCARD=true
THREAD_SUBMIT=true
WINEFSYNC=1
WINEFSYNC_SPINCOUNT=100
WINEDEBUG=-all,fixme-all
WINE_FULLSCREEN_INTEGER_SCALING=1
CFFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -malign-data=abi -fno-semantic-interposition -ftree-vectorize -fno-tree-loop-vectorize"
FFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -malign-data=abi -fno-semantic-interposition -ftree-vectorize -fno-tree-loop-vectorize"
CXXFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -fno-semantic-interposition -ffat-lto-objects -fno-trapping-math -fvisibility-inlines-hidden -fno-tree-loop-vectorize"
CFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -fno-semantic-interposition -ffat-lto-objects -fno-trapping-math -fno-tree-loop-vectorize"
CONCURRENCY_LEVEL=16
ZINK_DESCRIPTORS=lazy
AMD_VULKAN_ICD=RADV
RADV_PERFTEST=rt
RADEONSI_ENABLE_NIR=true
MESA_DISK_CACHE_SINGLE_FILE=1
TEARFREE_DISCARD=true
THREAD_SUBMIT=true
WINEFSYNC=1
WINEFSYNC_SPINCOUNT=100
WINEDEBUG=-all,fixme-all
WINE_FULLSCREEN_INTEGER_SCALING=1
CFFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -malign-data=abi -fno-semantic-interposition -ftree-vectorize -fno-tree-loop-vectorize"
FFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -malign-data=abi -fno-semantic-interposition -ftree-vectorize -fno-tree-loop-vectorize"
CXXFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -fno-semantic-interposition -ffat-lto-objects -fno-trapping-math -fvisibility-inlines-hidden -fno-tree-loop-vectorize"
CFLAGS="-O3 -march=znver3 -mtune=znver3 -pipe -feliminate-unused-debug-types -fexceptions -fstack-protector --param=ssp-buffer-size=32 -m64 -fasynchronous-unwind-tables -ftree-loop-distribute-patterns -fno-semantic-interposition -ffat-lto-objects -fno-trapping-math -fno-tree-loop-vectorize"
Please also review the above, don't just copy and paste, but I think there's some good stuff there. Feel free to share anything you've got also. Who cares what thread it's in. More information the better. Cheers.
Comment