About Multi-cores and Multi-tasking

About Multi-cores and Multi-tasking

Oleg Goldshmidt pub at goldshmidt.org
Wed Apr 21 13:57:44 IDT 2010


On Wed, Apr 21, 2010 at 12:53 PM, Gilboa Davara <gilboad at gmail.com> wrote:

> In my experience (running a kernel based packet inspection software), HT
> on Xeon 55xx yields around 15-20% performance benefit. (YMMV, of-course)

YMMV is the operative term here.

Shachar is right: the main problem with HT is increased cache
contention for unrelated processes (causing "cache thrashing"). This
may degrade performance for memory-intensive applications. This is the
principal reason why many people switched HT off.

Shimi's "belief" that performance was degraded for a single process is
likely due to the same reason. There is no such thing as a single
process in a general purpose system. One may be "interesting", but it
still may occasionally be evicted from cache by an "uninteresting" one
that no one notices.

If your workload does not lead to this kind of problem chances are HT
can be beneficial.

Side note: apart from HT there was also "superthreading" once. That
aimed at reducing memory latency - different threads were interleaved
in the CPU's pipeline (but only one thread per stage) - but had no
instruction-level parallelism. IIRC, it did not look as multi-CPU to
the OS (HT did).

Can you even buy a computer with just one CPU/core today?

-- 
Oleg Goldshmidt | oleg at goldshmidt.org



More information about the Linux-il mailing list