go-spacemesh icon indicating copy to clipboard operation
go-spacemesh copied to clipboard

Go-spacemesh is not able to use more than 64 threads windows 11 pro for workstations

Open full789 opened this issue 2 years ago • 0 comments

Hello, I'm using amd epyc 7763 cpu and i observed when initalizing/starting new nodes 64threads are pegged to 100% rest are not used https://i.imgur.com/nyCNzhr.png activity on other threads comes from other processes If you have more than 64 threads windows is splitting the cpu into groups of 64threads each. My cpu has 128 threads so 2 groups in total. By looking at core affinities and program behavior spacemesh is only using 1 group 0 or 1 never both at the same time. It is a very big problem and performance loss. Currently I'm running with smt off so the app can properly utilize the whole cpu and don't overprovision threads. it's kinda annoying for example im starting new node and other node has done smeshing and now it's reading the disk. The read speed drops to around 170MB/S from 280MB/S because cores on the same group as this node are pegged to 100%. Explanation by Microsoft https://learn.microsoft.com/en-us/windows/win32/procthread/processor-groups TL;DR basically app should use all available cpu groups automatically

full789 avatar Dec 19 '23 23:12 full789