Re: Hypertherading

From: Jeff Roberson <jroberson_at_jroberson.net>
Date: Thu, 7 May 2009 03:15:56 -1000 (HST)
On Thu, 7 May 2009, Olivier SMEDTS wrote:

> 2009/5/7 Barney Cordoba <barney_cordoba_at_yahoo.com>:
>>
>>
>>
>>
>> --- On Wed, 5/6/09, pluknet <pluknet_at_gmail.com> wrote:
>>
>>> From: pluknet <pluknet_at_gmail.com>
>>> Subject: Re: Hypertherading
>>> To: "Barney Cordoba" <barney_cordoba_at_yahoo.com>
>>> Cc: "Current_at_freebsd.org" <Current_at_freebsd.org>
>>> Date: Wednesday, May 6, 2009, 10:55 PM
>>> 2009/5/7 Barney Cordoba <barney_cordoba_at_yahoo.com>:
>>>>
>>>> I just got a shiny new nehalem box and it comes up
>>> with 16 processors with dual quads installed. Is there any
>>> benefit or should hyperthreading be disabled?
>
> There can be some benefit if the scheduler is aware of the topoly of
> CPUs and Hyperthreading (shared cache). I don't know how SCHED_ULE
> handles this on -CURRENT. If it doesn't see any difference between CPU
> cores and "HT" cores, you should disable HT in BIOS.

ULE is topology aware and most machines are probed properly.  ULE will 
prefer not to use hyperthreaded cores if there is available time on an 
unloaded core.  ULE will also freely share threads among hyperthreaded 
neighbors.

I have found the hyperthreaded cores on nehalem to be significantly 
improved over the older version.  On one packet forwarding test a 50% 
improvement was seen by enabling htt cores.  I believe this is because the 
amount of memory bandwidth and is sufficient to support these cores where 
it was not before.

Depending on how populated your memories are you may have less memory 
bandwidth and see less good results.  You can always safely disable these 
cores by using cpuset to modify the default group, group 1, and experiment 
at run-time.

Thanks,
Jeff

>
>>>>
>>>
>>> Hi. There is a measurable win if hyperthreading is enabled
>>> [1].
>>> You can switch it off via machdep.hyperthreading_enabled
>>> loader tunable.
>>>
>>> [1]
>>> http://lists.freebsd.org/pipermail/freebsd-stable/2009-January/047460.html
>>>
>>
>> I wouldn't call varying the number of jobs a very good test
>> of hyperthreading. I'd want to see the exact same test with
>> hyperthreading enabled and disabled. Its pretty naive
>> to assume that running 16 jobs causes them to all be run on
>> a different cpu.
>>
>> Barney
>>
>>
>>
>> _______________________________________________
>> freebsd-current_at_freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-current
>> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>>
>
>
>
> -- 
> Olivier Smedts                                                 _
>                                        ASCII ribbon campaign ( )
> e-mail: olivier_at_gid0.org        - against HTML email & vCards  X
> www: http://www.gid0.org    - against proprietary attachments / \
>
>  "Il y a seulement 10 sortes de gens dans le monde :
>  ceux qui comprennent le binaire,
>  et ceux qui ne le comprennent pas."
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>
Received on Thu May 07 2009 - 11:13:12 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:47 UTC