|
|
Log in / Subscribe / Register

Completing and merging core scheduling

Completing and merging core scheduling

Posted May 14, 2020 15:57 UTC (Thu) by jtaylor (guest, #91739)
Parent article: Completing and merging core scheduling

> A CPU-intensive benchmark based on Linpack showed core-scheduling performance that was slightly better than mainline, while turning off SMT incurs a 90% performance hit.

This is very surprising benchmark result. I would not have assumed SMT on or off makes any significant difference for a linpack benchmark.

Typically well written linear algebra programs utilize all relevant components of the cpu constantly with very little idle time. As I understand it SMT does not increase the number of floating point units of the physical cpu it only allows them to be used by another thread if they are idle which should not be the case for most numerical code.

Poorly written code or operations lower than BLAS level 3 may of course be blocked on memory loads but if that is the case you SMT or not should also not make much difference either as it does not double your memory bandwidth (and linpack should not be poorly written).

In my experience SMT for numerical programs give almost zero performance improvements. In most cases it decreases performance when the program assumes a logical core is a physical core and starts too many workers leading to cache trashing.


to post comments

Completing and merging core scheduling

Posted May 14, 2020 20:23 UTC (Thu) by jdesfossez (subscriber, #123831) [Link]

You are correct that linpack alone doesn't have this issue when the system is not overcommitted (and actually benefit from smt off). However, in this case, it is running concurrently with 96 1-vcpu noise VMs on the same NUMA node (3:1 overcommit that becomes 6:1 with smt off). I clarified this above for the MySQL benchmark, but the linpack benchmark was running in the same configuration.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds