Hyperthreading
David Schultz
das at FreeBSD.ORG
Sat Jun 28 02:42:15 PDT 2003
On Fri, Jun 27, 2003, Brooks Davis wrote:
> On Fri, Jun 27, 2003 at 06:39:12PM -0500, Glenn Johnson wrote:
> > Thanks. I had read the smp manual page. I know _how_ to enable HTT; I
> > was wondering whether I _should_ enable it. It seems the answer is that
> > it is not beneficial in its current state because the scheduler does not
> > yet differentiate between physical and logical processors.
>
> It's more complicated then that. For many users, it's true that HTT is
> not useful due to the scheduling issues, but for some applications where
> you keep all the CPUs busy, it does help. Somewhat suprisingly,
> SETI at Home performs better with HTT enabled then without. The individual
> workunits take longer to process, but the overall throughput is better
> (4 workunits every 6hrs instead of 2 workunits every 4hrs).
Hyperthreading will generally give you better thoughput because
you get better utilization of the hardware; when one functional
unit would normally be idle due to a pipeline bubble, the other
logical CPU may be able to provide work for it. On the other
hand, as you observe, latency is worse. In particular, if you're
running a web browser on one processor, it's competing for
resources with your SETI at Home client on the other processor, even
though the SETI at Home client is niced.
More information about the freebsd-current
mailing list