Open HLalumiere opened 2 years ago
+1
Hey!
Thanks for the idea. We will look into it!
From: HLalumiere @.***> Sent: Sunday, November 28, 2021 1:18:19 PM To: WyvernTKC/cpuminer-gr-avx2 Cc: Subscribed Subject: [WyvernTKC/cpuminer-gr-avx2] Add some core leveling logic when running with less threads (Issue #141)
It would be useful to add some core leveling logic to the miner, so that if you are running for example on 14 threads on a 16 threads CPU, it's not just the one core that remains completely unused all the time. After ending one thread's work, spawn another thread on a different core. Randomize affinity regularly in other words. That would allow hot cores to cool down, and cool cores to boost higher initially, as well as spread the wear and the heat around more. I think it should allow higher performance and cooler temps, especially on Ryzen or Threadripper... Thanks!
PS, XMRig got nothing on you, still the best cpu miner for gr!
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/WyvernTKC/cpuminer-gr-avx2/issues/141, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ASXNF3ZBN4Y4LZ7Z3YEP643UOGNPXANCNFSM5I4ZSYKA. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
GR is very cache context dependent and it might lead degraded performance. The no contex swich where 1 core is mining should be quite long (in CPU time scale ofc) that it would heat it up to almost max anyway. And switching from core to core with every hash is not optimal due to lost cache context. Miner still selects single threads from cores first, so to see any "real' benefit like you mention, you would have to use like less than half the available threads in the first place.
It would be useful to add some core leveling logic to the miner, so that if you are running for example on 14 threads on a 16 threads CPU, it's not just the one core that remains completely unused all the time. After ending one thread's work, spawn another thread on a different core. Randomize affinity regularly in other words. That would allow hot cores to cool down, and cool cores to boost higher initially, as well as spread the wear and the heat around more. I think it should allow higher performance and cooler temps, especially on Ryzen or Threadripper... Thanks!
PS, XMRig got nothing on you, still the best cpu miner for gr!