[mdlug] Dual Core with Hyper Threading

Ingles, Raymond Raymond.Ingles at compuware.com
Wed May 9 09:26:32 EDT 2007


> From: Aaron Kulkis

> But fortunately, the Unix model (of which Linux is an implementation)
> is fully able to grow with improved hardware with little notice for
> the user... or even admins for that matter.

 Well, yes. And Unix had the concept of multitasking and asynchronous
operation from the get-go, which helps when moving to multiple CPUs.

 However, it's not *quite* that simple. Taking good advantage of
parallel processing takes conscious attention and design, at least on
the application level. Some problems are easy to parallelize, but others
are much harder. (The canonical example is trying to get a baby in one
month using nine women...)

 And some programs can 'get away with' un-thread-safe practices on a
single-processor system, but can break badly when run on an SMP system.
Effectively they don't bother 'protecting' sections of code from
interference by other threads/processes/whatever. When there aren't any
other processes running at the same time, no biggie. But if they are
run on a multiprocessing system, Bad Things can happen.

 A few of the standard Unix and ANSI C functions essentially "assumed"
one CPU in this manner. E.g. ctime(), getlogin(), the original concept of
"errno", etc. See here:

 http://www.unix.org/whitepapers/reentrant.html

 That being said, the conversion to 'reentrant' code is essentially
complete for Linux and has been for years. The same for the conversion
to 64-bit processing (something Windows is still having trouble with).

 Your point is basically correct, of course, but I figured a little
expansion and clarification couldn't hurt. :->

 Sincerely,

 Ray Ingles                                           (313) 227-2317

 "It is as useless to argue with those who have renounced the use of
 reason as to administer medication to the dead." - Thomas Jefferson

The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it. 



More information about the mdlug mailing list