Hyperthreading on the MTL

Hyperthreading on the MTL

As you're probably aware the current implementation of the MTL supports 32 cores and 64 threads, this means that the MTL server is Hyperthreaded or Simultaneous Multithreaded (SMT) aware.

So the obvious question is; how does one specify, saywhen an application is executed, if thread(s) should bescheduledon physical or logical core(s)?

This is easily accomplished by using the Linux* taskset command, e.g.

$ taskset c 0-15

This will specify that the application should run only on the first 16 CPUs, i.e. CPU/thread affinity. This means (on a 64 thread SMT system) that the will be scheduled on ONLY the physical cores.

$ taskset c 0,32

This will specify (on a 64 thread SMT system), that the application should run on both the 1st physical andthe 1st logical core.

Please see: man taskset for more details

publicaciones de 2 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.

Hello all,

By the way,RHEL 5.4 inthe labdoes have quite good OS scheduler but anyway I've got perfomance gain using 'taskset' command from 5% for 2 threads to 7%for32 threads for my test case.


Inicie sesión para dejar un comentario.