I do not know much about computer architecture, but some Intel processors have hyper-threading technology, which can apparently improve parallelization for applications that take advantage of it. In a processor with hyper-threading technology, the number of threads is usually twice the number of cores -- whereas in a processor without hyper-threading, the number of threads is equal to the number of cores.
Does Mathematica take advantage of hyper-threading?
My old (2007) desktop computer has an old Intel Core2 processor with 2 cores that does not support hyper-threading. So the processor has 2 threads and 2 cores. If I execute $ProcessorCount
in Mathematica, it gives the output 2
.
However, some new processors (i.e., Intel i7 series) support hyper-threading. For example, Intel's website says that the i7-4790 has 8 threads and 4 cores. If I were to execute $ProcessorCount
on such a system, would the output be 4
or 8
?
$ProcessorCount
gives4
! :( $\endgroup$$ProcessorCount
gives4
, the number of physical processors. $\endgroup$