Re: hyperthreading performance with dbt-2 on 2.6.0-test11

From: Nick Piggin
Date: Mon Dec 08 2003 - 20:00:46 EST




markw@xxxxxxxx wrote:

Hello, I have some data with hyperthreading I wanted to share.

I've seen about a 15% performance decrease in performance on a 4-way
Xeon system when I enable hyperthreading for my DBT-2 workload. I also
gave Ingo's test11-C1 patch that someone pointed me to a try and only
saw a 12% decrease. Has anyone found this to be common with any specific
workloads?

I'm not really sure what to look for, but I do see some changes in the
readprofile data, which I've copied in part below. It appears that the
count of schedule, __make_request, and try_to_wake_up are the only
functions at the top of the profile that are significantly different.
The links I have posted also have pointers to oprofile data as well as
annotated assembly source output, if that interests anyone. If I can
provide any other details, let me know.


Hi Mark,
It could be cache contention which I think is typically the reason
hyperthreading can hurt performance. Its basically impossible for
the scheduler to correct this automatically (access to performance
counters might make it slightly less impossible).

Probably the CPU hotplug interface would enable a tool to effectively
turn HT on or off and it would be up to an administrator to tune
performance.

You could try my scheduler patchset if you like. I have recently got
HT support working (its against test11, you need to turn CONFIG_SMT
on), although if Ingo's patch doesn't help much, mine probably won't
either.

Attachment: w26p21.gz
Description: Unix tar archive