4 cores and 8 threads

Michael Butash michael at butash.net
Wed Sep 7 22:19:16 MST 2016


This is a common recommendation really with hpc applications, 
particularly when doing higher-bandwidth operations, such as networking 
at 10-100gb interfaces. Hyperthreading arbitrator in the kernel is like 
a buffer, the L1-2 cache (I think), that fills as the cpu backs up.  
When full, the arbitrator can't pass to the cpu, sits in buffer, and 
eventually gets there (hopefully).  This is BAD when you are doing very 
latency sensitive crunching.

Likewise, things like irq balancing are generally disabled for the same 
reason to keep hardware like ethernet and drive hba's stable and 
low-latency.  You try to design to the cpu workload, memory, pci 
bandwidth, ethernet hardware, etc, to not *need* buffers, at least when 
a dev understands such things, which is generally few and far between.

-mb


On 09/07/2016 01:27 PM, Kevin Fries wrote:
>
> I once worked for a company doing ground water modeling for mining 
> operations.  The program did a large series of fourier transformation 
> to model the water levels over time... No Hyperthreading!!!
>
> Most web servers, mail servers, database servers (depending on your 
> number of indexes), are perfectly fine with hyperthreading turned on.
>
> Kevin
>



More information about the PLUG-discuss mailing list