Date: Wed, 12 Nov 2003 14:28:25 -0500 (EST) From: Daniel Ellard <ellard@eecs.harvard.edu> To: freebsd-hackers@freebsd.org Subject: Confused about HyperThreading and Performance Message-ID: <20031112103358.S11644@bowser.eecs.harvard.edu>
next in thread | raw e-mail | index | archive | help
Can someone point me at some non-marketing documentation about hyperthreading on the latest Intel chips? I'm seeing some strange performance measurements and I would like to figure out what they mean. My systems have the following CPU: CPU: Intel(R) Xeon(TM) CPU 1.80GHz (1799.81-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf27 Stepping = 7 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> They are running FreeBSD 4.8-RELEASE-p13. I'm running an application that pumps a lot of data quickly over a gigabit NIC (an Alteon AceNIC 1000baseT Gigabit Ethernet, using the ti driver). The network uses normal ethernet frames (MTU=1500) instead of jumbo frames, so there are lots of interrupts. In this case, the system is mostly reading data from the network, in case that makes a difference. The application is multi-threaded, using pthreads. When I run a kernel using the default configuration (no SMP, no APIC), the application takes an average of 8.45 seconds (wall-clock time) to run, and this number is consistent from run to run. When I run a kernel built with either SMP or SMP+APIC, it takes an average of 13.25 seconds, and this number is also quite consistent. (It's not the Alteon; using the Intel Pro/1000 XT server adapter with the em driver gives a similar difference, although the intel NIC is slower.) Interestingly, the CPU utilization for the default kernel is about 75-80%, while for the APIC kernel it is over 95%. My guess would be that something is spinning on a lock in the APIC kernel, but that's just a hunch. My questions: 1. Any idea why the performance plummets from 8.45 seconds to 13.25? 2. Is the situation any better in FreeBSD 5.1 (or 4.9)? I know in 4.9 APIC is turned on by default, but if this is the result than I won't be upgrading to 4.9 any time soon! Thanks, -Dan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031112103358.S11644>