看板 FB_smp 關於我們 聯絡資訊
Brooks Davis wrote: > You're both right. Optimal performance is achieved by optimizing the > way Terry described, at that's a direction we need to consider assuming > hyperthreading stays around, however, when you don't do any of those > things, Intel lets you pretend you have two CPUs on one die. Performance > is not identical (if nothing else the two CPUs share memory bandwidth > and the P4 is seriously bandwidth hungry), but it just works. The "40%" number is: o The high end of what you can expect o Not achievable without those techniques > When you > think about it, Intel had to go with that approach for all the reasions > AMD emulates the Intel SMP programming model on the Athlon. Simply put, > they have to support NT 4, Win2K, and XP without modification. Heck, > I'd be slightly suprised if Windows.net supports Hyperthreading nativly. Windows does not have the necessary affinity support in their scheduler; if you read the PDF whose reference I posted, you will wee that that is the case. The only OS with the affinity support is "upcoming Linux 7.1" at the time of the publication of the PDF -- in other words, Red Hat Linux 7.1. Even so, their affinity is broken. You simply can not put affinity into a scheduler, and solve the problem with a single run queue. In the non-uniform load case (the common case for UNIX systems running more than a single process -- e.g. "cron" runs every second), you will experience starvation deadlock, as the scheduler "prefers" the threads in the current thread groupm and starves out everything else. > Of course, since they show up as two CPUs each, you can't run NT Server > on a dual Xeon box and I think you need Datacenter for a quad so it's > not nearly as much of a win for Windows users. :-) It's not much of a win in Windows anyway. See The PDF. Without the heroic measures I listed, you will be lucky to get 18%. Adding a second real CPU will give you closer to 90-95%. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message