Ask Slashdot: Is SMP worth it?
Here's another question from the ubiquitous
Clan Anonymous Coward! I usually don't do
AC posts, but the question was rather
interesting enough:
"Dual socket 7 motherboards are pretty cheap
now, and P200 and P233 processors are way
under $100. So would buying a dual p233
system be better than a single PII 450?
I would be dual booting Linux and NT."
What issues do you have to worry about when
dealing with SMP (motherboards, memory, heat)?
What SMP issues are there with PIIs as well?
it's cool!
Chech if the programs you're going to use work with dual.
And its pretty cool. Red Hat SMP is the way to go Man!
The word you are looking for is "regardless" -- without regard for. The "ir" prefix would negate that.
I hate being picky, but that one really gets on my nerves.
I'm running 2 p2-333's @375MHz in a supermicro p6dls... damn it's cool. best part i like is 2min 30sec kernel compiles
I've been having kernel fork(): cannot allocate memory errors with 2.2 and my dual box(its a server) ...i see that there are minor fork() updates in 2.2.3 wonder if that fixes my problem..dual is good..we dont need it but it gives that extra boost incase something takes up an unexpected large amount of processing time..its good for making kernels fast..but not much else can run properly with make -j ..i tried BitchX and it screwed the compile when i used -j within 5 seconds of launching make. if you run a server..and have the cash..go for dual..if its a real pain to get the system going right forget about it..for us up until yesterday everything our dual p2-233 does was done on a p100 for the past 6 months..
If you want to get into SMP cheaply and still get great performance, try one of the dual Celeron mods out there.
I think SMP is well worth it. You cant get a the same power as you would from a single chip.. its just the nature of the computer you arnt going to keep both chips loaded all the time. But SMP has some great features. For on its harder to crash. Often when programs crash they get stuck in some tight loop well on chip is on the loop. The other is sitting there ready to kill the process thats spinning out of control. Another great feature is that you can do things that are very CPU intensive in such a way as not to bog the system.. IE I can compile a kernel and not notice any thing in Xwindows.. or rip a CD into MP3. My SMP machine is a dual PII 300 with 256 Megs of ram. The board is a micronics spitfire witch I HIGHLY recomend. its got just about everything you could want. Dual slot 1, agp, AIC7890 scsi controler with 2 interfaces.. USB, OPL3 sound card.. only thing its missing is a network card. The yamaha sound chip sucked so I slapped a sound blaster in it.. now the machine really rocks. Im not reall sure if the smoothness of the machine isnt all the ram.. but when I bought the ram it was about ~1$ a Meg. The board cant address more than 512Megs of SDRAM, (1GB or simms) but I went for the faster stuff. In my opionon the extra chip makes the work station just un stopable.. and is a must for any kind of serious server. I think the real question should be is a Quad PPro 200 better than a Dual PII 450.
I would think the quad would be better.. but hey even if its not the Geek factor is 10+ on a quad machine!
Granted, for standard desktop use I can't see much point to SMP. But if you're using your Linux box as a web server (and ain't that the point? :) SMP is almost as good as doubling your clock-rate. Last time I checked Apache had a whole bunch of simultaneous processes going.
I don't know anyone who has tried Linux SMP, but
those who have tried NT SMP have found it non
optimal. Then again, they haven't run MY code on
the machines, which would love an SMP box.
Where to get Dual Celeron Mods?
When running applications that thread across both processors equally, you can expect the effective overall speed to be n*1.80 where n=# of processors.
This makes all sorts of assumptions about implementation efficiency, algorithm parallelizability, etc. but in general, you get 80% the speed of the second processor in a dual system.
In other words, a dual 233Mhz Pentium II will 'seem' like a single 420Mhz Pentium II (with the older architecture). My recommendation is the single 450Mhz Pentium II for that reason - plus, you'll be working with a newer processor design that runs cooler, uses less electricity, etc. and you always have the option to upgrade to a second processor if you buy a dual board.
You idiots are all forgetting beos...
Will Linux or NT automatically take advantage of the extra CPU? Or is it an application issue?
well :)
as far as I know
there are no dual Celeron stuff
unless you do some hardware tweaking yourself...
that does work
I've seen it
and it works very well
but it's some work..
True... but Malda allows such crappy grammar and spelling in the articles on here that something like "irregardless" just seems to fit in nicely...
Fuck BeOS!
I'm tired of hearing about it.
Take it and shove it!
Not forgetting, ignoring.
That is, there is only one process active at a time.
Now having an SMP box means you can continue to
use the box for other things and perhaps not even
notice the build going on since it's only tying
up one CPU
The first thing to bear in mind is that even if you only in fact have one processor, having it run in "SMP mode" and do all the extra locking etc. can exact a performance penalty of as much as 5%. So even on perfectly parallelizable tasks with zero contention (for locks, for CPU/memory bus, for I/O, ...) you can't really expect a 2-CPU SMP to give twice the performance of a single processor running a non-SMP version of the same code.
In this particular case there are other issues as well. I'll get to those after I've read the other replies.
Either Sun or SGI was advertising 80% scalability
in their SMP systems. That means that those systems were benchmarking 80% the # of procs. In an ideal SMP, X processors would yield X*1 the performance of a single processor. These guys were saying they got (X*1) * 0.8, which is pretty sweet..
Probably cache + memory bandwidth helping a _lot_..
I don't entirely disagree with what you just said, but I think it may be a little misleading without additional clarification. The only significant difference between multi-process and multi-thread is the automatic sharing of memory (which can be done in multi-process using SysV shared memory segments). Therefore, performance will only differ between the two if the multi-threaded version is sharing memory while the multi-process version is using message-passing...which does happen and even for good reason sometimes no matter how silly it sounds. In general, the two are pretty much equivalent wrt SMP.
On NT the gain is going to be around 30% depending. I assume that if you're dual booting your not using NT Server & SQL or Exchange and just using NTW. You'll see a good kick but it's not linear, and probably not worth it. Compiles in VB & C are alot faster though. (Dual PII 266)
A few days after I installed RH 5.2 I recompiled a new kernel for SMP and got a big kick - closer to 70% gain. The Gimp flys through scripts now. Compiles burn.
Bottom line - Like they said, if you're doing graphics, compiles, etc. it might be a plan. Otherwise just buy a Super7 board and an AMDK6400 or something. I highly recomend the Asus P2B, not alot of slots but a very fast. (And Asus tells you exactly how to overclock it in the manual! Very cool company).
Personally, I will not buy any more PII's/PIII's - due to the serial number scandal and because, compared to AMD they're WAY overpriced for oh so cloase to the same performance. Now if some astute manufacturer would build a dual Super7 board - Then we'd be in business.
Otherwise you are no faster than my single overclocked PII/375.
Ok, with the Intel P-II's you must have the processors that were produced within a certain time frame. The best way to do this is to get the right stepping number, this stepping number will be on the processor itself. It will not work correctly, (if at all), if you do not have this.
My SMP box is currently dual P-II 333, with 30gigs of space on it. Everything is Intel, the chasis, cpus, server motherboard (NX440BX), hell even the ethernet card is.
--azop because I'm to lazy to login.
curt@bluecherry.net
There's a lot more to making a processor SMP-capable than just adapting socket/slot interfaces. If you want to experiment with non-coherent memory models, fine, but Intel deliberately left the coherency stuff out of the Celeron to reduce cost and avoid competing with their own higher-end processors.
Well it works better than linux and there are less ignorant bigots such as your self in the BeOS world
ir re gard less
adj., adv.
REGARDLESS: a nonstandard or humorous usage
According to Websters it is a word and is synonymous with regardless.
BeOS? Ewwww....
Only 50% or less CPU scaling? Wow, that sucks. I mean, no offense, I know that DEC was into SMP before just about everyone else (even before Encore, one of my own prior employers) and had to invent by trial and error much of the technology these kids totally take for granted, but I didn't know it was ever that bad.
Fortunately, the state of the art has advanced considerably since then...largely thanks to DEC.
Because AMD uses a different SMP protocol than Intel and Linux doesn't support the AMD SMP protocol yet. (Soon I hope)
I meant P5A - P2B is the PII board
If you're a developer, it's the way to go because it's the future. All the apps I write I try to write with threading and parallelism in mind, unfortunately there are a lot of apps where it doesn't apply but there are a plenty where it does and they should scale over multiple processors if you do it right. (unless you're using multithreading as an abstraction to make other problems easier to solve but even then it shouldn't hurt performance.)
If you're just a user and want a faster system it's probably not worth the money unless you want some kind of bragging rights. From a user's perspective, it takes linux' already silky smooth multitasking and makes it even smoother and snappier, but that's generally about all you'll notice with most apps.
I have a Tyan Tiger motherboard and I'm very happy with it, it's as speedy as anything out there (non-overclocked, I've got too much expensive hardware to screw around with that) It runs linux 2.2 nicely, I haven't had any problems. I have an older dual pentium I ran before and SMP is getting much better, if you're going to do it I would get at least a P2. Maybe a PPro (they don't do SMP really well) if you can find the hardware at bargin prices. Quad processors isn't an option on P2s, you have to get Xeon processors to go above 2 and you pay a hefty premium for it, p2 smp boards are remarkably cheap. You can get a regular one for $200 (compared to about $100 for uniprocessor) and a deluxe with scsi and audio built in for $300-$500. The 100Mhz bus p2s are also dropping in price a lot.
I'm not sure what to say about the life expectency of your SMP computer vs. a uniprocessor. My gauge has always been games, which don't benefit from SMP so much. If my computer can't play game X acceptably it's time to start thinking about upgrading and saving money for it. I think I probably held on to my pentium system longer than I would've if it was uniprocessor, I mostly do development and don't play a lot of games so I didn't notice how lagging in performance it was for a while. It still performs nicely on builds.
Really beats me why K6's can't go dual (at least everybody say so) when there were, say, dual 486 's. Any links to lighten up some people?
_IT IS A WORD_.
> plus, you'll be working with a newer processor
> design that runs cooler, uses less electricity,
If you want that, switch to a G3 PowerPC processor running Linux.
550MHz at 7 Watts use and 35 Centigrade/95 Fahrenheit is pretty hard to beat - and it's RISC to boot.
HarryZ
I don't think we are forgetting BeOS at all. The multi-threading nature of BeOS' standard base of applications lends itself well to SMP. But even in BeOS there is still overhead in doing SMP (memory locking, device locks, etc). Even if the question is if when dealing with a richly multi-threaded enviroment, will 2*233 PII be similar in performance to a 450 PII. The answer is clearly no. I also feel the "simple rules of thumb" posted above is misleading. Two 233 PII on a 66 Mhz bus maybe similar (depending on the application) to a 420 Mhz PII on a *66 Mhz bus*, but the fact that no one is marketing a 420 Mhz PII on a 66 Mhz bus makes this a meaningless statement. The fact is that a 100 Mhz front side bus can be gotten dirt cheap with AMD K6-2/Super7 systems. I would be willing to summit the theory that there are several applications where a 300Mhz K6-2 @ 100Mhz bus would perform better than on a dual 233 PII.
Actually, what I think would be a more interesting question than the one above would be:
Which would get me the lowest price/performance: Dual 233 PII or 450 PII?
But this again is assuming that the *CPU* is the major player in the speed of the application. Depending on the amount of memory you have and how memory hugery your application is, you may get a lower price/performance by spending more money on RAM instead of a second CPU. (And this goes for applications runnning under BeOS, QNX, *BSD, Solaris, etc. too.)
quad xeon dell = 1:20 kernel compilation. that's kewl.
Several people are tossing out scaling numbers as though they were fixed quantities. That's wrong. It's like giving a fixed number for the ratio between processor clock speed and TPC benchmark numbers. There are so many variables involved that scaling actually varies quite widely even between seemingly-similar machines from the same vendor. Heck, the same machine may exhibit different scaling for 4 CPUs than it does for 8. FYI, for reasonably parallelizable tasks (e.g. databases) 20-32 CPU scaling of 0.8 to 0.9 is pretty much standard. For a more general-purpose "departmental file server" kind of role, the numbers will be significantly worse. Also FYI, consensus among industry experts seems to be that the SGI Origin 2000 exhibits the best large-system scalability, well ahead of similar offering from Sun (UE10K), Sequent (NUMA-Q) or DG (NUMAliine) all of which I'm sad to say use variants of technology from one of my former employers. :-( The newest HP NUMA box hasn't been around long enough to know for sure how it compares.
As for AMD using a different SMP protocol than Intel chips, I hadn't heard that and it sounds like an amazingly stupid move by AMD. I would _expect_ that interoperation between Intel and AMD chips wouldn't work, but the coherency protocol should be pretty much invisible to software and an all-AMD system should "just work" in that regard. Are you sure you didn't mean to say that the AMD chips have a different multiple-MMU interface (which is a different thing) than the Intel chips, and that Linux doesn't currently support that interface?
actually make -k continues after an error, make -j takes advantage of SMP when compiling but you should limit it if you're low on memory. 'make -j 5' will limit the compile to 5 jobs at a time. If you're brave and have gobs of RAM, just edit the main Makefile and set 'MAKE=make -j' to spawn unlimited jobs. ;) At least thats how it works on my machine.
A single 450 is faster and cheaper. Theoretical max speed of the dual Pentium is that of a Pentium 466, which would be slower than even a K6II or Pentium II/400. Practically, SMP only gives you a boost on parallizable programs, and even then, you have about 30% overhead. Go for SMP if you can get a dual 400 or better. Anything less, and you're better of spending the money on a single K6II-400.
how better to know what SMP can do than to try it?
also, i would recommend a sun starfire 64 cpu smp box,
sure it may cost a few more dollars but you will be more
satisfied with it in the long run. and when it comes to your computing
pleasure, whats a few more dollars here and there?
ok just kidding, but anyways if i could do SMP just to learn about how it works
and what its bad/good for , i would get chiggy with it real quick.
becoz in 5 years every lame ass paparazzi faux nerd will be talking about it and you will have
the most important asset of all, wisdom!
That's exactly what I'd expect you to see when you use processors that lack coherency support. Inconsistency will occur when stuff gets evicted from cache due to local activity, which means for all practical purposes it will be non-deterministic. Also, spinlocks won't work properly (although a version of spinlocks that is designed to deal with non-coherent memory by forcing uncached access can work, but Linux won't do that) so you'll get all sorts of icky race conditions and so forth leading to random caches.
It's just a BAD IDEA, folks. Don't do it.
~#dict irregardless
1 definition found
From WordNet (r) 1.6 [wn]:
irregardless
adv : in spite of everything; without regard to drawbacks; "he
carried on regardless of the difficulties" [syn: {regardless},
{irrespective}, {disregardless}, {no matter}, {disregarding}]
Intel deliberately left the _pins_ unconnected to avoid multi-Celeron systems but all of the circuitry is still there. It would actually be more difficult to take it out and create/validate a new design for only a small savings in die size. The real cost reduction is achieved with the smaller cache.
Cache coherency is still needed in a one processor system between the North Bridge and the CPU for DMA.
This really does work and there are numerous people out there who have stable working systems to prove it.
PCchips makes the worst damn mb's ever. They aren't even PC compatible at the port level. In your kernel compile, try enabling the RTC (it's under character devices). It doesn't even work on PCchips mb's. The only way I could get the RTC to work was by using BIOS under DOS.
AMD doesn't include SMP, not only due to it being rather complicated to implement but takes up a large amount of space on the chip die. Hence AMD can produce smaller chips, or chips with greater caches than Intels counterpart for a lot cheaper cost and in greater number.
No they didn't. Intel just performed some minor sabotage so they wouldn't work in SMP configurations, and that's reversible. Since it's the same core, how can the memory models be different?
Macintrashes require distinct applications for SMP systems (because the OS is SMP-impaired).
Any OS worth ANYTHING in 1999 that supports SMP has thread isolation. OS takes care of tasking, and the apps just request a thread from the OS.
NT or Linux... doesn't matter - any app that'll run on a one proc machine should run on an n-proc machine.
The major hurdle in an SMP system is shared resources; cache, memory and disk all need to be shared by both processors. With a classic pentium, their cache is on the motherboard, and most (if not all) dual classic motherboards I have seen have 1 unified cache to be used by both processors. This is far from optimal as the OS/Chipset has a whole crapload of extra work in order to do cache management.
:).
Pentium Pro's and PII's/Celeron 'A's do not have this cache problem -> they have caches that are unique to each processor, and logic in the processor core to handle the cache.
Memory is a big deal too. In medium -> high end servers, you can usually outfit individual processors with their own memory banks. Most dual processor systems I have seen only have 1 'interleaved' set of memory banks for both processors to use. Again, having seperate memory banks for each processor gets around the issue of having a chipset that needs to manage 'who gets what and when' from memory.
Disk is of lesser importance, but I would strongly suggest that you examine a SCSI subsystem for any SMP machine. SCSI's ability to message queue and subprocess OS i/o requests while minimizing (as compared to EIDE/UDMA) CPU blocking is tremendously advantageous in an SMP system.
I have a DUAL PPRO200 system which I like a great deal. That being said, I think that if you come across a dual pentium classic system for cheap, buy it, and play with SMP for awhile. I would put it into any high load commercial environments tho'
run gnulix, you'll be happy on a dual machine or a monoprocessor machine.
Let's just say you don't know what you are talking about, buddy. For under $350:
2x$60 for 2 PPGA 370 Cel 300A,
$180 for BX mobo (ex. Gigabyte 6BXD)
2x$20 370 to Slot 1 converters
you can get a machine that is 1/4 of dual PII-450 price and 95% performance. Ain't that a bargain!!!
That's a good cite to check it out www.cpu-central.com
Let's just say you don't know what you are talking about, buddy. For under $350: 2x$60 for 2 PPGA 370 Cel 300A, $180 for BX mobo (ex. Gigabyte 6BXD) 2x$20 370 to Slot 1 converters you can get a machine that is 1/4 of dual PII-450 price and 95% performance. Ain't that a bargain!!! That's a good cite to check it out www.cpu-central.com
Windows 98 also does not support SMP - heard that even though NT Workstation currently supports dual-procs, the next version (Windows 2000 Professional) won't!
You'd be better off with a larger monitor. Who cares what the "lame ass paparazzi faux nerds" have to say, by then you will be off onto something bigger, better, newer, etc and maybe that something will be that "computers suck, better to have a real life with lovers and children and cars and sex and money a 100 acre farm with a tractor and a woodshop".
Nah!
Dual PIII's eh? I bet that's news to all the OEMs who are just starting to ship PIII systems.
Give me a break.
Well... I don't know when you tried it but even
:-)
the 2.0.x kernels arent't unstable anymore. I have
dual PII/400 from Penguin which comes with a
recompiled 2.0.36 Red Hat kernel and it's pretty
rock solid. I'll put 2.2.x in sometime since
performance is supposedly better but for the most
part my benchmarks have been running twice as
fast (unless the CPU's are starving for data) and
I'm a very happy camper.
My uptime output looks sad right now because I
shut it down during an electrical storm last night
but I usually have it up for weeks at a time.
In terms of operating systems, neither DOS, win 3.x, or win 9x support multiple processors. NT workstation supports upto 2 but you have to reinstall NT if you upgrade. For more processors you have to get NT server. Alternatively you can run Linux, but unfortunately not BSD.
... And is when you are running one task - such as compiling a Quake Map using every available processor. The second which is more useful on small SMP systems - 2, 4, is when you are running many processes on the same computer faster.
Dependent on what you want to run, there are two kinds of SMP processing - highly parallel or multi-processing. The first is not in widespread use with Linux as it is for large numbers of processors - 4, 8, 16, 32, 1024,
With highly parallel tasks you will see a diminishing increase of power from increasing the number of CPUS - e.g. 50% (1), 25% (2), 3% (4), -5% (8), with a certain number of CPUs will actually make the task slower due to the communication overhead.
Multi-processing systems will actually see better improvements from adding extra CPUs! e.g. 110% (1), 225% (2) This is because you are distributing the system interrupts around the system (such as hard disc, network calls) so the processes are getting more CPU time and hence gaining better performance! So even with games that do not support SMP machines - Quake, Unreal you will get better performance by the fact that all IO requests will be running on the other CPU.
Shouldn't this be 1+0.8(n-1)? or n*1.8 where n>1?
'nuff said
Intel uses exactly the same Duetches core in Celeron and PII, but cripled Celeron not to compete with PII and PIII. Pair that with the fact that 300A celeron is so easily OCed to 450. And you get something with the performance of dual 450Mhz PII(the only real difference is cache) for a quarter of the price:
2x$60 for 2 PPGA 370 Cel 300A,
$180 for dual BX mobo (ex. Gigabyte 6BXD)
2x$20 370 to Slot 1 converters
Ain't that a bargain!!! That's a good cite to check it out www.cpu-central.com
Don't know where PDG got theirs but check out Penguin Computing. And no, I'm not with the company. I'm just a happy customer.
Much better - CPU's are 1/3 the price nowadays and 90% the speed.
Mark
I did the dual/single/clock speed/price thing a
.NO_PARALLEL or .WAIT to allow
:-)
while back when getting cpus for my sparc 20.
I finally settled on two slower cpus instead of
one faster one.
Some compiles were indeed fast, but most compiles
broke because the dependencies were flawed in the
makefiles. The most common problem seemed to be
an executable linking against a library that is
only 1/2 built.
(does GNU make allow constructs like sun's
parallel make
makefile synchronization??)
On the cpu limited things I did, I ended up
watching my perfmeter peg at 50% (this means
that one cpu was 100%, the other was idle)
For instance 'tar cf - . | gzip --best > x.tar.gz'
would always use 100% of one cpu and was NOT
faster because of 2 cpus.
So I usually ended up limited by the speed of the
fastest cpu.
Looking back, I should have gotten one fast cpu
instead of two slower cpus. I probably won't
even use the second slot I have open for
two more CPU's
Well, I guess it was a learning experience.
I run a dual P90 as a toy and a file server, occasionaly i run the rc5 client on it and its dog slow. I also have a cyrix "166+" and a 233mmx overclocked to 262 and they both totally smoke on the dual 90. since the 166+ is really a 133, one might expect similar rc5 performannce in the dual p90, its not. so i put the dual90 in the closet and ran a network cable to it and pretty much gave up on it as a daily driver.
Hey cheese dick, not true. Maybe if you knew what you were talking about you'd actually be useful.
Normally I avoid these little flame wars, but this one looks like fun....
"Irregardless" is not a word in the English language. It may be a word in the American language, but then we're speaking of a place that gave birth to "Ebonics" and "I be..."
Flame away!
This is not crap, I have 2 PPGA celeron 300a's running at 504x2.
The soldering was fairly easy with the PC100 made slotket.
As for performance when I run make -j2 compile times are cut in half... (less than 3 minutes for linux kernel, modules etc)
Just wanted to point out, the PII's stepping can be updated via software. The same software that updates its errata with fixes. This means you can buy any PII-sameMHz, in any time frame, and you can update it's stepping to the same latest code. And will work just fine. Just a note, the updates are saved in the motherboard bios, so if you get a new motherboard, you need to update the cpus again since the new motherboard won't have the updated codes. This software update has been available since I believe PentiumPros.
Dave
That post looks like haiku to me.
Sorry, I don't know how many syllables haiku is supposed to have so I don't know if it qualifies or not.
Multiprocessors can make a HUGE difference with threaded applications and kernels. A lot depends on what you are doing with the system. If you are manipulating 3-D graphics, the win gained from the dual CPU's might not be as much as the win from faster graphics calculations with the faster CPU.
If you have a busy system running a lot of processes I would say that you are going to have a nice win with two P233's, say, than a single P4??.
For a "headless" server, go SMP and get as much RAM as the system can use.
if in general, people agree on it's meaning, or, despite of utterly detesting it, still understand the implied meaning, and it's use is widespread enough to constitute general usage. Where the hell do you people think words come from?
Let me give you a clue, they are invented. Arbitrarily. By people who speak, or mis-speak, a given language. Is "convertible" a word? Really? Is it a noun? Oh, wait, no it's an adjective. What about "laser" or "robot" or here's one you can appreciate, "endian". Is "endian" in your standard webster dictionary? Was it in your great grandfathers' dictionary? Words mutate, languages change and as far as I can tell, more people "misuse" irregardless than don't use it, thus it's a word. Get over it.
Double negation is your friend, most languages in the world use negative + negative = really negative. English is one of the few that uses the multiplicative idea of negation. And that was not always the case. Use proper pre-modern british english (before a catholic priest wrote a damning essay and grammar forbidding the use of dbl negation, because latin didn't use it) and say "'irregardless' has not never been a word, and it isn't never going to be"
language police make me laugh, because they are almost always clueless about the realities of (spoken) languages and linguistics in general.
Yeah well then they need to keep up. I picked up Computer Shopper saw a PIII's were at my favorite vendor (won't mention the name here) made a call and I'm a a daul PIII 450 SMP box right now.. proggies start before ya haer the mouse click no matter how many programs ya got running. I am now using my Server as a Workstation too. So far not lag on any services and I've been rendering scenes with PovRay
Stet's the Original cyber-hick
: Most home users will never exploit SMP, and for them I think they are simply wasting their money.
True, there are few commercial apps which take advantage of multiprocessors, but that might be changing.
But I have to disagree with you about SMP being of no use to hobbiests. No one here has mentioned this yet but X-Windows scales nicely with dual processors. One process for the app and one for the X server.
I used to use a lot of multiprocessor Sun machines, and with certain graphics intensive programs I wrote, the app and the X server would each be using near 100% of a separate CPU. This only really applies to graphics heavy programs but anything from a screen update to a scrolling of a window can and will be split. The users who spoke of their dual proc machines being snappier probably were experiencing this.
The X server being a separate task makes Unix's more scalable that NT for SMP desktop use!!! Now this is an interesting twist since people love to slam X for its overhead. BTW, don't be fooled into believing, even on non SMP machines X is NOT slow.
- erik olson
(What the hell were you eating that made you think of that anyway?)
Been spending too much time in bathrooms in WI?
1:Show me a Mac running SMP, WITHOUT having a completely specialized kernel version of the MacOS.
2:Show me ONE application that will run NATIVELY, OUT OF THE BOX, on a Macintrash, without recompilation, and take advantage of both processors (or better yet, any MORE than 2 processors).
...rather than just stating it, as a matter of utterly unjustified opinion. Why precisely is the use of "irregardless" stupid, impractical, inefficient or otherwise undesirable?
I find that more people use the word irregardless than do not, so why are they wrong? You've proved, or even substantially argued, nothing.
Good job!
Yeh, I have it working on an Asus P2B.
Required a BIOS upgrade to recognise the
Celerons, but it's a dual 366MHz. Unoverclocked
at present. I may try 75 or 83MHz FSB
one of these days, but it's a work machine.
Celerons kick ass in both NT (okay
only sort of) and Linux 2.2 BTW.
yanfali@best.com
Hmm, I don't understand why everyone gets so uptight over the informal usage of words-which-may-not-be-words-but-everyone-knows-wh at-they-mean-anyway. Language is a collection of arbitrary guttural noises. It's not as if a word's definition is some kind of absolute truth.
People roll their eyes at those speaking 'Ebonics', but as long as you've communicated your idea to whomever you intended it for, what's the problem?
I have more of a problem being introduced to millions of new computer acronyms a day. Everytime I see "RMS" here on Slashdot I think that I need to find the Root-Mean-Square or something.
So when I say "I flurb in your general direction" I've created a "commonly accepted usage" because you know what I mean? No.
I don't care how many people misuse "hacker" it DOES NOT mean "cracker".
Americans speak a localized dialect of English, conveniently labeled "American English". The book, or official version of American English is called, strangely enough, American Standard English. You are correct that the word "irregardless" has not (yet) been officially recognized by the Powers-that-be. On a more precise note, most (probably close to ALL) Americans do not actually speak American Standard English, just like most (again, if not all) the inhabitants of the British Isles do not speak standard British English. Actually, pretty much no one speaks the "official" version of a given language, but rather adopts their speech and writing relative to the social situation at hand. This includes both choice of words and use of "proper" grammar. I would wager that if you were recorded for a day, and then the tapes were given over to a linguist and a high school english teacher, both could point out numerous mistakes, misuses of words, and grammatical "errors". And I'd wager again that the use of at least one "non-word" would be located.
Ebonics is a dialect of American English, with it's own syntax and grammatical constructions which follow observable rules. There are similiar constructions in other languages, but not in any other form of english, save perhaps real oddballs, like Anglo-Romani (not sure about this, guessing).
Why bother with Pentium200/233/etc when you can buy a couple Celeron300a (each costs less than $100). Build a nice SMP box and if you want you can o/c it to 450mhz like many people did...
"make -j 2 ..." will use at most 2 processors simultaneously during the make. "make -j" (unlimited processes) is mostly for stress testing, IMHO.
The word "flurb" is not one I can honestly say I've ever seen or heard.
What I am stating that I believe to be true: If you randomly pick a sample of 1000 (american) people, and ask them a question containing the word "irregardless" that they would comprehend the word fully.
Further, if you recorded and observed people in "natural" situations, the word would be used with great frequency and across a wide geographic area. I also contend that the word is "misused" by a range of socio-economic classes.
I more or less observe this daily, as I do little experiments on people at my job (tech support, baaaadd job).
Thus, I am contending, that as another poster pointed out, common usage becomes accepted usage becomes correct usage over time.
And sooner or later, "irregardless" will be used on the nightly news.
I do however agree that cracker != hacker. And I think I could use a similiar argument. But I would say that those two terms are certainly not mutually exclusive as some seem to indicate. A cracker could also be a hacker, and vice versa. They are simply the noun forms of the verbs "to hack" and "to crack", which are clearly different.
You only put punctuation outside of closing quotes if it is not part of the punctuation. For example, if someone tells you he is eating cheezmoes for dinner, you could say: You are eating "cheezmoes"? When he said cheezmoes, he was not asking a question, so you shouldn't quote it as one. If he said: Do you like cheezmoes? Then you could quote it as "Do you like cheezmoes?" but not in the former example. This is at least how I understand it.
An excellent point, my argument is really based on that common usage usually mutates into accepted usage and then to official usage. But not always. I think in this case it's started down that track, however.
Your example is perfectly valid, and if I was speaking to someone who spoke that particular flavor of english in the correct circumstance, I would not sound stupid at all. Acceptable usage is clearly relative to social situation.
That really the point. It's not black and white as people state.
Of course not! A Pentium processor running at the same clock speed as a Pentium II processor is much, much slower! Hence, a dual p233 system couldn't come anywhere close to a p2-450 in any way.
Although your pride is clearly wounded by his use of "Macintrash", you have done nothing to attempt to refute his claim that the MacOS does NOT do SMP. That if you want to do any multiproccessing with a MacOS app at all it must be written into the app specifically (like Photoshop).
Take your pain in stride. No need for insults. Sure MacOSX will probably support SMP eventually. Sure the MacOS has some advantages but SMP ain't one of them.
Misguided MacOS evangelism is so unappealing...
searmenht blobarthy cogermy claback elo
dictionary of 2020
SMP is only worth it if you really intend to beat the hell out of your systems with a lot of multitasking. I tend to be very brutal with my computer since I use it for everything from raytracing to ripping and encoding mp3s, dvd movies, and of course playing games. I quad boot Win98, WinNT, BeOS and Linux (RH5.2) and they all have their good and bad points. Win98 can't use SMP at all, so it doesn't count. WinNT seems to get a very poor performance boost out of it unless you are using only multithreaded applications (Photoshop, 3dStudio, Maya, etc.) Linux gets a serious kick in the ass from SMP, the entire system is faster and it is much harder to slow the system down by multitasking excessively. BeOS is something that I am using as a 'toy' for now, and it gets a good boost from SMP, the starfield simulator went from 60 to about 180 fps, for example. There just aren't enough apps for it right now (reminds me of another OS which used to have this problem).
Example of my normal computer state:
Playing QuakeII while burning a CD-ROM and downloading a ton of data from the net (love cable), having an mp3 encoder (5cd changer, 5 discs at a time, rip and encode) running in the background, while playing mp3 files. Stack a few web browser windows, irc session, ftp server, mux and mpeg2 video encoder on that and you have a few good reasons to use SMP. My box also doubles as a fileserver for my roomates and I hardly notice when they start transferring data. SMP also cuts down on those annoying hiccups in systems (more NT than Linux) where you get a stutter by launching a resource hungry application.
Also, for the dual celeron discussion above, it does work quite well. We have a dual 300a (now 450) socket 370 with adapters (bought premodified from cpucentral.com). Makes a nice Citrix NT box for those windows apps you can't do without (the Linux client is very nice). We also have a Dual P200 linux box in the house doing all kinds of odd jobs. SMP is very good in the server environment.
My friends PII450 runs faster than my Dual PII333 as long as he is only doing one or two things (games and the like). I can get away with more without taking as severe a performance hit for running multiple tasks. I also have more RAM than he does so that also makes a difference. If you want good SMP performance I would recommend a minimum of 64mb per processor. 128mb per processor is the sweet spot.
Best buy right now I think would be a set of Celeron 300a chips (socket 370 style), a pair of Slot 1 adapters (premodified), an AsusP2BD or Tyan Thunder motherboard, and 256mb of memory. If you don't have a deep pocketbook you can always get a dual board and just buy one CPU now. It will only get cheaper later.
Hope this helps ya.
-Stranger
Maybe not, but give us another 20 years to shove Baywatch and Rambo down your throat and you'll be speaking American, my snickering English friend.
take a look at www.computernerd.com
They sell Dual Celeron systems using the 370slot1 adapters - only their's arent hacked. They had some adapters custom made that enable the SMP. Very cool!
endian refers to the ordering of bytes on a given computer platform, ie big endian and little endian. The precise details are absolutely foreign to me, as are the implications. I think a reference on assembly programming would be the place to look or a flame-retardant post to usenet :)
I also agree that structuralists have their place, but there's a point at which it's pretty much useless to fight it.
On a side note to this discussion, has anyone tried out SMP-Linux on the Intel DK440LX motherboard? It's a 440LX-based board with an on-board Dual-Channel UW-SCSI controller and sound and 10/100 ethernet.
Strunk and White has this to say about "flammable":
Flammable. An oddity, chiefly useful in saving lives. The common word meaning "combustible" is inflammable. But some people are thrown off by the in- and think inflammable means "not combustible." For this reason, trucks carrying gasoline or explosives are now marked FLAMMABLE. Unless you are operating such a truck and hence are concerned with the safety of children and illiterates, use inflammable.
I don't see any confusion here!
...
And the number one excuse for ignorance of language:
1. "You must understand what language is. It is a constantly evolving creature."
Excellent!
We'll probably here more about it but it has a much much less likely chance of displacing windows. The party line a Be is that they still don't compete against windows, so what does it matter? Linux on the other hand is ready to go toe to toe with all comers.
64 bit computing power sounds good, especially now that Compaq is gonna help improving egcs... But would a 500 Mhz alpha outperform a dual 350 Mhz pII?
Just wondering... Anybody with an alpha, want to share some experiences?
I think you're irwrong on this
I don't know about that. There are definitely less ignorant bigots but that's mostly because there aren't as many users. Per capita, Linux and BeOS are probably in the same boat with ignorant users and bigots. I might eve ngive the edge to BeOS because there are a lot of users who really don't understand the jargon they spew, they just say "multithreaded" or "Object Oriented API"
First of all, if anyone is using NT it is not
because it is fast and just like its initial
performance (uni) SMP boosts are ho-hum. When
IBMs OS/2 Warp Server outperformed NT by 10%
and OS/2 was running ONE CPU and NT on TWO CPUs,
you have to ask yourself: Is the 'piper' leading
me in the right direction?
Linux, OS/2, and Beos rock on PC-based SMP systems
while NT needs cryogenics to get a CPU running
fast enough to 'feel' good and only if you have
wealth to waste.
IMHO
Locutus
Your second statement is simply incorrect.
Then does that mean that intense is the opposite of tense?
That interrogate is the opposite of terrogate?
That intelligent is the opposite of telligent?
That infront is the opposite of front?
That..., well I could go on (and I'd love to), but you see what I'm saying. You're claiming that just putting "in" infront of a word negates the original word or means that a string of characters which begins with "in" is automatically a valid word without the "in."
Don't be silly.
In big endian systems, the most siginifcant byte is first, while in little endian systems, the least significant byte comes first. The significance is that you have to know which order the bytes are in to interpret them properly. As a rough analogy, compare English (which is read left to right) and Hebrew (right to left.) It's not a big problem for end users sending files between different systems, because the conversion is usually done automatically down in the network protocol stack.
>Oh, and did you mean "random crashes" when you said "random caches?" :-)
Yes. How Freudian of me.
Having done ASIC design (which I know is not the same as full-custom design, but close enough for this discussion) I don't buy the bullshit about verifying a new design increasing the cost etc. However, I could still be wrong. It was my impression that they left it out entirely, but it would be entirely Intel-like (i.e. obnoxious but ultimately ineffectual) to leave it in and just screw up the pins.
BTW, even if the logic is in there, you should be careful. Intel doesn't support Celeron SMP, so they might never test the coherency logic on perfectly genuine correctly-marked Celeron chips, or even that they will sell a Celeron in which they _know_ the coherency logic is faulty. Why wouldn't they, if it works for everything that _is_ supported?
#1 Problem -- not enough programs do well under make -j2 ....
#1 Advantage -- kde works great when 2 CPU intensive programs are slamming my box.
#1 Caution -- Socket 7 will make CPUs share cache; cache thrash in that case is way bad.
Advise: If you do development or other when you *know* you can use multiple CPUs to good advantage, get SMP --- BUT
Each the speed of the SMP CPUs should not much more than 1.5x slower than UP solution.
Stick with 6th generation.
PII 450 vs Dual P 233 is no contest; take the 450.
On the other hand, I'd rather Dual 350 than a UP 500 -- esp since I'm going to upgrade my SMP 350s to 2x 550/600 when it gets economical to do so.
They don't work on any current mobo. FSCK you Intel, if only you used SIMMs or at least unbuffered EDO DIMMs (which work on LX boards)...
I agree. I will be using BeOS for a front end, and FreeBSD as a back end.
UNIX is great for things it is good at, but X/KDE/GNOME is just not worth the trouble. Not when 70$ will put you in an OS that skips all the crap inherent in the X mess.
BN
I tend to treat "irregardless" as a colloquialism even though I know that it is an actual word. I used to think that it was just used by people trying to use big words to impress others by using "50 cent" words. I still tend to believe that to be true but more and more it is because people have heard it used so much that they think that it is "correct". Which as some of our more cunning linguists have pointed out is how the english(the generic all encompassing english not the Queen's English) language evolves.
An example of this evolution in reverse is the contraction "ain't". Do you ever use it? Or is it like "irregardless" and "not a word"? Well it turns out that it is proper english. Growing up people around me seemed to believe that it was incorrect because of its overuse in some sort of slang(looking back I think it was mostly Ebonics). Now that people think that it is incorrect, you hardly ever hear it used and most people wouldn't know how to use it even if they wanted to use it.
Before I forget here is the definition that Merriam-Webster's Dictionary contains. And if anyone stateside wants to hear evolving language they should go to Hawaii and hop around between the different islands to listen to the pigeon.
Main Entry: irregardless
Pronunciation: "ir-i-'gärd-l&s
Function: adverb
Etymology: probably blend of irrespective and regardless
Date: circa 1912
nonstandard : REGARDLESS
usage Irregardless originated in dialectal American speech in the early 20th century. Its fairly widespread use in speech called it to the attention of usage commentators as early as 1927. The most frequently repeated remark about it is that "there is no such word." There is such a word, however. It is still used primarily in speech, although it can be found from time to time in edited prose. Its reputation has not risen over the years, and it is still a long way from general acceptance. Use regardless instead.
>Multi-processing systems will actually see better improvements from adding extra CPUs! e.g. 110% (1), 225% (2) This is because you are distributing the system interrupts around the system
I've seen dozens of claims of superlinear speedups like this. Every single one of them has ultimately been attributable to the fact that as you add processors you also add cache and your overall cache efficiency goes up. In the most extreme cases, something that had 60% cache efficiency with two processors gets 90% with three.
I do not recall a single case where distributing the interrupt load was a factor. For one thing, most MPs aren't as symmetric wrt interrupts as they are otherwise, using either static assignment or redistributing very infrequently. It turns out that the cache-warming effects of static assignment are greater than the load-balancing effects of dynamic distribution. You end up with one processor handling all the disk interrupts, another handling the network interrupts, and the other processors full-time doing real work, and all running in cache. If you distributed the interrupts your cache efficiency would go down sharply for an overall loss of performance.
I have never tried BeOS, but as for Linux:
A couple years ago I had a dual Pentium 133 under linux 2.0.x. I wrote a stellar dynamics package, using LinuxThreads to distribute the calculations over both CPU's, and obtained 97% efficiency.
Things should be better today with 2.2.x.
Dave
It is my belief that we Americans have messed up the english language enough that we may now call it our own.
I speak 'American', do you?
I'm no expert, but for SMP to work, the processors need to support something called an APIC. The intel celerons have this support but as packaged, this is disabled. Celerons use the same CPU core as the P2 but were packaged with the cache onchip or no cache at all in the early versions. K6's for example have no APIC support so they can't run in a dual configuration.
P2s are probably a better choice for a critical application. It is always possible to have the wires break or short out or something and cause a system crash with the celerons.
As others have said, the rule of thumb is that each additional processor increases your system by about 80%.
What is nice with Linux is that so many things run as processes that they automatically can take advantage of SMP.
A user with SMP probably is running X11. So X11 updates use one CPU, while xosview, MP3 playing, and Netscape use the other CPU. With all of those of course actually sharing all the power. Run the Gimp and X11 redraws while an image is being updated.
Basically, the time which the user spends waiting should be greatly reduced. The old measure is how fast one CPU runs a bunch of jobs. (An older measure was how little time the CPU spent idle, as CPUs were so expensive that it was important that there be enough work that the batch jobs gave it as little idle time as possible) The new measure is how little time the user has to spend waiting for the system.
Talk about redundant -- doesn't it just make you cringe when people say "ATM machine"
Oops! Regardless of SMP, people are discussing
irregardless...:(
What does "does the does" (that's pronounced doze the duz) mean? Does it have any scientific significance, or doesn't it?
(forgot my logon)
Where can you find real facts for Linux (2.2+ would be great) to show how NT scales compared to Linux? Not that I doubt you, but I've been looking for this sort of thing to show the unbelievers around the office.
Chris cdodd@shrouded.net
In case you've missed the point, I'll spell it out for you: Learn some basic OS design concepts before you go spouting off about, oh, say, basic OS design, eh wot? Your comments are purest rubbish, old lad.
A while back, some magazine did an article on Ebonics. Time or some mag. like that. It gave examples and the 'tenses' of ebonics' verbs. Now, I looked at them, and studied them and noticed, that it still is regular English. just spoken poorly. They're going off on how it's actually another language entirely. Please, give me a break.
Ex:
He be jammin. -- He is jammin.
He been jammin. -- He's been jammin.
He BEEN jammin. (more emphasis on been) -- He's BEEN jammin (same emphasis.)
Now supposedly, #3 is a verb tense that exists in Ebonics that doesn't exist in Reg. English. I don't see it.
just my opinion.
MENSA and the league of pendantic gynocologists.
Salted hackers are my favorit. Mmmm almost as good a soda hackers..
I work on a 2-processor mainframe. Having 2 processors means that one process can never exceed 50% and that is a very good thing if the processes start getting greedy.
On a single-user system, I agree more-or-less. 1 x 450 is always better than 2 x 225.
People will do anything these days to make sure they can be victimized in some way just so they can join the pity me crowd. I might not be the oldest person alive but even I knew the meaning of shame when I was a kid. Apparently today people revel in being useless loads that do nothing but beg for hand outs and understanding because they have screwed themselves up. Ebonics is just another example of people being too lazy to do something the right way.
How about:
:)
ATM Machine...
PIN Number...
$100 dollars...
all of them are commonly screwed up
According to the Oxford English Dictionary it is not a real word, but a word coined by one of the U.S. Presidents (Harry S Truman perhaps? It's been a few years since I looked this up.)
"Regardless" means "Lacking regard"
"Irregardless" means "lacking the lack of regard" or "Regarding" if you dissect it.
Irregardless, while a word in the dictionary (fourteen pages after "nigger") is just not a word a grammatically correct individual should use.
I think it's halarious, but the online Merriam-Webster dictionary says "irregardless" is a word and says the number one comment about it is that the word doesn't exist. Also says it's primarily used in speech and "regardless" should be used instead.
tsia
I was told by a college professor that putting the punctuation outside the quotation marks was a European style.
Um...MoviePlayer? How about anything else that uses QuickTime?
Wrong. First of all, the AMD's (K6, K6-2, K6-III) can't be used in a SMP machine.
Neither can the Cyrix chips.
You _can_ do it with PII or PIII or PPro's or even Pentiums. Not quite with the Celeron. With the Celeron, you will have to perform a hack to the CPU card to get it to work.
Actually this is not the case (at least
with intel motherboards)... When I
put together my dual PII333 box I didn't
get matched processors and it wouldn't
boot at all... eventually I figured it
out. Aparently you can be off by a step
or two and it'll work. But any large diff
and no joy. Check the dual processor
motherboard info at intel.
Don't get me wrong, I like SMP. I put a lot of time and money into building a dual Pentium 200, which I was really proud of until a friend bought a $500 E-Machine box with a Celeron 333 (not even as fast as a PII) which posts a bogomips of 333 to my 158. The moral of the story is: SMP is great, but choose a PII first or you are just wasteing your time perfomance-wise.
Win2000Pro will support dual cpu. You might be confused by the low end server version that will only support 2 out of the box, unless you are upgrading a current quad machine.
Yup... I'm running one with two 333 PIIs in it right now. AFAIK you have to get matched processors for it to work. Someone said something about being able to change the stepping of the processors via the bios but I don't know anything about that... And if I had the option I would go with the matched processors anyway... see: Intel DK FAQ
And what programs out there in the Linux world actually do SMP without modification. Linux does a very good illusion of SMP my spreading the individual processes accross the different processors. Does it automatically spread the execution of an individual process across the multiple CPU's without the code being customized? What about the kernel? Is it resident on one CPU or is its execution spread out. I don't believe its possible to get an individual process spread out over multiple CPU's without customizing the code or the hardware.
If you had bothered to look at the MacOS Multiprocessor API you'd have found that preemptive parrallized multitasking is already in place for isolated code. All the MacOS is missing now along these lines is the ability to spread the OS interfacing code across processors. This will be fixed with the Carbon OS interface that is completely reentrant without complete OS blocking like Windoze does.
Why? Just because. This thread has inspired me and even though I know that it may be a better choice to purchase a PII or even dual PII for processing power, I can't help, but see the upgrade path I'm taking. I'm going from a Pentium 133 to a dual. This is good for me (maybe not you) because I get to keep all existing hardware components and don't need to purchase new Dimms, or a new case etc.. I'm quite happy with my AT style case as well as my 72pin Simms (which I can get for almost free)... In any case I think this is a good choice for me. I know performance wise (from this thread) that this may not be the best choice, but shiznit... It's kinda cool and I could use some additional CPU cycles. Especially since this is my SOHO DHCP/Print/WINS/File/Web server etc... Thanks for all the tips. As a side note: I am going with the Tyan S1564D Pentium Board. Found it for $108+$8 shipping from shopper.com. Can't beat it. (I'm not really an AC, but forgot the Nick and Passwd I created here)
-Booya
gcc/make are not threaded, but make will spawn multiple jobs with the -j flag. RTFM.
While you were there you should have checked to see if halarious is really a word. :) Hilarious, isn't it?
"Big endian" and "little endian" are adopted (by the computer field) terms. They originally (AFAIK) appeared in Jonathan Swift's "Gulliver's Travels", and was the source of dispute between two opposite factions of Lilliput. To wit, whether to open their boiled eggs at the big end or the little end.
Alas, I don't recall which author introduced the term into computer lingo. Sounds like something Stan Kelly Bootle might have done, but I don't want to misattribute it.
run with much higher than -j2. (unless you are compiling from a ramdisk) - I use 20 or 30
woody
What really annoys me about nonstandard english
such as this is the redundancy (e.g. irregardless, the hoi polloi, where are you at, etc.) The extra stuff doesn't add anything to
the meaning of the sentence. There is no grace.
Well they had better hurry up. They only have three weeks left!
This is a way of describing a male deer (a 'buck').
For example:
Bob: "Hey billy, is that a female deer over there?"
Billy: "No Bob, that one does the does."
..you damn ignant foo can't spel.
---
i'm OJ Simpson, hacker extrordinaire!
Below is pr stuff from http://www.microsoft.com/windows/news/october1998/ win2000.asp
Note where it says that "Windows 2000 Server will offer industry-leading functionality and support new systems with up to two-way symmetric multi-processing (SMP)." Note that the same is NOT stated for Professional.
I could be mistaken, but there is NO information on Microsoft's site which states otherwise, and it all EXPLICITELY points out how many processors all versions except professional will scale to!
"Windows 2000 Professional will be Microsoft's mainstream desktop operating system for businesses of all sizes, replacing Windows NT Workstation 4.0, which many people are using today as the standard business desktop. Windows 2000 Professional will deliver the easiest Windows yet, the highest level of security, state-of-the-art features for mobile users, industrial-strength reliability, and better performance while lowering the total cost of ownership through improved manageability. Customers who want to get ready for Windows 2000 Professional can do so by purchasing Windows NT Workstation 4.0 today on computers with 64MB of RAM.
Windows 2000 Server will offer industry-leading functionality and support new systems with up to two-way symmetric multi-processing (SMP). Ideal for small to medium enterprise application deployments, Web servers, workgroups, and branch offices, this version of Windows 2000 is expected to be the most popular server version. Existing Windows NT Server 4.0 systems with up to four-way SMP can be upgraded to this product.
Windows 2000 Advanced Server will be a more powerful departmental and application server, also providing rich network operating system (NOS) and Internet services. Supporting new systems with up to four-way SMP, and/or large physical memories, this new product offering will be ideal for database-intensive work, and will integrate clustering and load balancing support to provide excellent system and application availability. Existing Windows NT 4.0 Enterprise Edition servers with up to eight-way SMP can install this product, which will be priced below today's Windows NT Server Enterprise Edition product.
Windows 2000 Datacenter Server will be the most powerful and functional server operating system ever offered by Microsoft. It supports up to 16-way SMP and up to 64GB of physical memory (depending on system architecture). Like Windows 2000 Advanced Server, it will provide both clustering and load balancing services as standard features. It is optimized for large data warehouses, econometric analysis, large-scale simulations in science and engineering, OLTP, and server consolidation projects."
Actually, there is also the fact that you will double your cache. Linux always has many processes running (although not always ready to run at the same time). You may improve your performance. The real question, though, is bang/buck. If you pick up a mb & 2 processors for much the cost of the P2 450, then it might be worthwhile. Especially if you are running X (which increases parallelism).
I don't know what bastardized dictionary you use, but 'in' as a prefix does not mean intensify. Irregardless is only a word by de facto-70 years of improper use. In fifty years are you going to say axe is a word as in, 'I axed you a question?' Get a grip!
And with BeOS you need to do.... nothing.
It will automatically use however many CPUs it detects.
Does this apply with server based apps such as a web server? (I know it does for the actual daemon), but lets say you just need the basic OS support for SMP. Let me clarify:
I'm upgrading to an SMP system for my Linux router/web server/cgi app server (personal site), etc... Since the OS supports SMP, I don't see a need for the actual application (in this case Apache) to support it. All of my processes that would take advantage of the SMP processes would be literally a bunch of single child processes that would get balanced across the CPUs via the OS SMP Support. Please correct me if this assumption is wrong.
-Booya (not an AC, but forgot login info and don't have time to sign up right now)
I have never heard of this word either? And by the way what is this "dictionary" thing anyway?
... for one of those nice SIEMENS machines with 16 PII/450MHz and 512MB RAM ...
A clarification - even if apps aren't multi-threaded, the OS will still allocate separate processes across CPUs. So, two (or more) CPU intensive tasks will benefit directly from SMP, simply because each process may run concurrently on separate CPUs.
The board works great. I got mine on ubid.com for around 100$, and put two PII300's (for 150$ each) and a 128M dimm in it, and it runs great. I compiled the 2.2.0 kernel, and booted up, and everything works great!
The kernel, and modules compile in under 8 minutes (if that's any benchmark for you). Linux rocks the DK400LX.
He may mean compiling 2.2.x series kernels, which take a lot more time (a lot more code, with MANY more device drivers and modules).
Of course, it's a silly benchmark because it can vary DRASTICALLY depending on how your kernel is config'ed. Most distributions turn on a zillion kernel options and compile tons of device drivers, to work with a wide variety of machines. My kernel only includes the relevant options for my machine, and thus, takes much less time to compile. And disk speed is also a critical factor, etc.
And what programs out there in the Linux world actually do SMP without modification. Linux does a very good illusion of SMP my spreading the individual processes accross the different processors. Thats the great thing about unix. It's not integrated. On most unices there will be hundreds of programs going at the same time, and most big one's will split themselves up by fork()'ing. Dave
Main Entry: irregardless
Pronunciation: "ir-i-'gärd-l&s
Function: adverb
Etymology: probably blend of irrespective and regardless
Date: circa 1912
nonstandard : REGARDLESS
usage Irregardless originated in dialectal American speech in the early 20th century. Its fairly widespread use in speech called it to the attention of usage
commentators as early as 1927. The most frequently repeated remark about it is that "there is no such word." There is such a word, however. It is still used primarily
in speech, although it can be found from time to time in edited prose. Its reputation has not risen over the years, and it is still a long way from general acceptance.
Use regardless instead.
Bogomips are actually worthless when used from a benchmarking standpoint. My p200 got ~398 bogomips. As far as I can tell bogomips tend to be some multiplier of the cpu speed depending on the arch. If you want to benchmark the systems pick up the nbench utility. I think SMP p200's would put the smack down on a Celery 333. My Celery 300A was only a bit faster than my P200, at least in quake fps. P200 got 49fps the Celery got 64fps.
After those lame results I got it running at 450 now and get ~99fps. So according to your results if the bogos for my Celeron were 450 bogos then it should only be marginally faster than my p200 (398 bogos), which it isn't.
The Celery screams compared to the p200, at least now that I got some thermal grease on it so it doesn't overheat every 2 minutes like it was. Funny how a little dab of that stuff took it from too hot to touch to ice cold. And it was burning up w/ a giant sink, dual fans and a 3.5 all around it! If any of you people are gonna oc your celery, dont forget the grease!
I think I want to try SMP PPGA Celerons now. If this box doesn't stay stable at 450 I probably will.
I'm the damn NT guy ...
1) I was referring to My Own Experience. I got about a 30% kick under WinBench.
2) AMD uses OpenPIC and Intel uses APIC - which they own the rights to. This data is available in full on www.tomshardware.com. Damn boy, do some research before you fly!
From indiana.edu: OpenPIC support has been implemented for Linux/PPC and it works
very well at least on UP. It's in the recent 2.1.xx source trees.
As far as I know OpenPic is not supported in the i386 kernel. Am I wrong?
ksc@wanetwork.net
I have dual PII-350's on an ASUS psb-d with 256 megs sdram... and between my CPU's I can only get 2Mkey's with RC5...... something is fishy here :)
AND I'm useing 2.2.1 (2.2.2 won't compile for some reason.)
On a dual-P166 running Solaris x86, with GNU make and GCC, make -j and make -j 2 and make -j 3 were all consistantly slower than just make. This was compiling some GNU software, bash or fileutils or the like.
And see the baby infant while you are there. But
look out for the LAPD, they might have a canine
dog team out on patrol.
This is Troy, I'm just not logged in on the computer I'm on now...
Troy, I think there's one more difference: Unix processes have separate address spaces. Each address space starts at 0 (2gig, whatever), hence they overlap. For a thread change you keep the virtual-to-physical memory mapping, for a process change you need to change it (which means flushing the TLB - translation lookaside buffer, lots of traffic between MMU, which is part of the CPU-"chip" and the main memory).
True, but I think you're forgetting something: under Linux, threads of the same program (or multiple concurrent instances of the same program, for that matter) share the same code segment -- only the memory areas that are different between multiple instances are replicated. I'm not convinced switching between 2 threads of the same program would require a TLB flush under Linux. Each thread points to a location in the same code segment, so why reload it? I'm no kernel hacker, and I don't have the kernel source in front of me, but I'd be a little surprised if Linux's scheduler doesn't do a check to see if it's context switching between threads that share a code segment and doesn't completely flush the TLB if it comes back true.
Yup, inside quotes is American and outside is European. Originally everyone put the period outside a quotation closing a sentence. In the early days of typesetting each character was stamped on its own block. For some reason, a period following quotes with a space after was more likely to break than a period inside quotes followed by a space. So typesetters (to save money) began setting them that way and editors (to save money) began to insist text be written that way.
Europeans were so miffed that Americans figured it out first that they refused to follow along and invented the Metric System for revenge and had a bunch of wars.
I just wrote this kewl configurator dood!
You must not have both CPU's enabled properly, then.
On my dual PPro 180, make -j2 took exactly half as long to do compiles, unless it was a shitty makefile that make couldn't figure out.
Mark
-Someone may have already said this-
You also got to remember that when you go a multiprocessor system, you lose your ability to overclock as effectively as with a single processor system. As everyone knows(and makes fun of me about), overclocking is the easiest, cheapest way to increases system performance. Not only that, it satiates your urge to screw over the big guys!! On a more serious note, your system definitely sounds like a good idea to me. However, I haven't checked prices recently, but doing a slot 1 celeron might give you a better upgrade path...
Actually, that works for n=1, too.
But I'd like to try the case where n=0:
1+0.8(0-1)=0.2
No processor, runs at 0.2 the speed of a single processor!
I wonder how much faster it'd be if I overclocked it...
SIG11.ORG is a Dual Celeron, check it out.. has tips and links on how to make one
'its got a 16 channel digital output
meter for finer grained cutting, a vertical
rip table, diamond tipped alloy saws,
blah blah blah'
I know it sounds crazy, but....
a couple of years ago, I had a Dual Pentium 133, and I hadent ben enlightened to linux yet, so I installed NT 4.0. apart from the random crashes, it was responcive as hell, I loved it.
now I am running a Single PII 300 under linux, and while it is much more stable, X still feels laggy..
I would say that I prefered the NT4 Dual P-133 to my current Linux/X Single PII-300.
Currently the Dual P-133 is sitting up at my ISP as a server, and doing one hell of a job at it by the way (Runing Linux 2.1.132)
I have a old dual socket 5 Micron board - the highest that this will use is P1 133 MHz - I would like to find a couple of cheap 133 cpus to use in it not so much for the speed but for the tinker/eductional value (for my first linux system).
The question that I really need clarification on is do I need "special" p1 133 MHz cpus (and how are they 'special') and/or do I need 133 cpus with the same stepping number??
I was told that I needed 'special' cpus....
phillipkennedy@email.com
Hmmm. So, if you heard someone use "memory" and "storage" interchangeably, you wouldn't correct them? I agree that language is alive, but that doesn't mean we have to accept misconceptions, (cracker/hacker) scientific errors (fish/dolphin) or logical confusion (I'm not broke, so I don't have "no money"). And there *is* something to be said for elegance.
-freehand
A dual pentium Pro 200 (512k l2) mb and chips costs less then a 450 and outperforms it in FPU (the reason for going SMP in the first place). It got me to buy 3 systems... which leads me into this question...
What is the min # of computers you need to implement Extreme Linux from Redhat? (Multiple Dual Pentium Pro boxes that cost UNDER $700/machine!!! total for 8 is 5600, which is tempting...umm DESII cracking.... hehe)
Hidden Syntax
hisyn@talon.net
Here is a detailed article about endianness.
does linux have kernel-scheduled threads? or can you only utilize multiple CPU by using multiple process? i noticed libc has pthread modules, and i wondering if linux threads are user-space-only implementation... if so, it might be better off to get a fast single CPU box.
According to my copy of Websters, irregardless IS correct. I agree, correct use of language is never black and white. Note: regardless is more correct than irregardless, as irregardless is going out of fashion and slowly disappearing from common usage. Whatever is most used by the majority of the language's speakers is usually considered correct, but that doesn't make everything else incorrect.
machines that deal with ad hoc requests benefit quite a bit from SMP. Assuming the OS can handle SMP reasonably well. I'm not telling what OS I run... but I run quite a few SMP boxes as servers. We couldn't do what we do without SMP.
Copy on write has been around for ages, processes on almost every unix flavour uses this.
Would it be possible to run a StrongARM SMP board? What kind of performance might one get from such a setup? Are any companies considering manufacturing such a thing?
I imagine there are all sorts of reasons why thiswouldent work (I don't have much knowledge in this area). However it seems, given the cost/performance of these cheap chips that you could assemble quite a powerhouse of a machine with comparitvely low cost and power consumption.
Am I missing something here?
Does the calibration loop only guage One processor?
I'm running an AMD-K6-2 333 overclocked to 374.5mhz
Hell, I clock out at around 748 BogoMips...
Could somebody explain please?
I think that because Intel has patented their PII and PPro bus architecture, AMD would have to license it from Intel in order to make chips that would work with their 440-series chipsets (SMP or otherwise). Intel may simply not be willing to license this technology to AMD, even if AMD wanted it. AMD had to use the Alpha-bus for their K7, for just this reason.
I used to run a dual 200MMX with 192Mb of memory on a Tyan Tomcat IVd. The performance is not too good (compared to a single PII), but the machine seems to run smoother. Whatever it's doing you will have some avaliable cpu power, except when compiling a kernel with only -j (unlimited number of compiler threads...) Don't do that mistake if you have less than 128 MB of memory. :)
I quite often work with dual PII-300's running Linux, and what can I say; they're fast & smooth...
BeOS seems to rock on SMPs by the way.
SMP feels good, but you need memory and a decent OS.
>the PII's stepping can be updated via software
You're blowing smoke. The stepping is hardware. There is a microcode update that the bios can optionally load into the cpu, but that cannot change the stepping. The S-spec shows what the SLxxx means and the processor Spec Update has a pdf file describing the bugs in each version of the chips (including, for instance a dozen or more versions of the P-II at 300MHz). The earliest P-IIs with the C0 stepping have SMP problems that were fixed in later steppings.
I have a dual p233MMX running NT4 and linux and would NEVER go back to a single, for me, when one process has gone a bit weird and has decided to eat the processor, there is always the second one so you aren't waiting for your machine to give you back your mouse. The machine lives on, which is not in my experience the case with single processor machine.
I am typing this message on a 233MHz Dual Pentium II system. I run NT4 but I have run Linux on it in the past. Two CPU's are nice but it is not the same as having a single high speed processor. There is a relativly common misconception about SMP that it doubles the speed apps run at. This simply isn't true because most programs (especially under Linux) are not multi-threaded. And even if they are multi-threaded they probably don't occupy both CPU's 100% of the time. Most desktop apps spend 99% of their time waiting for user input or some event to occur. It is only number crunching apps like ray-tracing, rendering, games, project bovine, etc that really benefit from having a fast CPU.
What having two CPU's _does_ do is make you system and apps (that are multi-threaded) more responsive. For example I can have a single thread eat 100% of one CPU and still have a functioning computer. This helps quite a bit when programs bomb or go ape over something (very common under NT). Another area that multi threaded CPU's shine is when the Windowing system and IO is heavily multi-threaded. I ran BeOS for a while and it was shockingly fast (faster than Linux) and the I/O and Graphics sub systems were extremely reponsive because they are heavily multi-threaded. NT and to a lesser exten Linux are more I/O bound than BeOS and both would benefit greatly form more pervasive multi-threading (even if they are run on single CPU systems).
So to sum up. A dual CPU 233 Mhz computer does not run like 466 MHz computer. It runs like a nice responsive 233 MHz computer.
Later
Oliver Jones (orj at ihug dot co dot nz)
Point : Most SMP Pentium boards use HX chipset & cannot run MMX chips, but I run a dual Pentium system, and it's rock solid. Very spritely in SMP aware software. The box is a P166 & P200 run at 180MHz, with 128MB ram, and 6GB SCSI drives.
Other point, most of those SMP boards are top quality, I got mine for 50 UKP and that had Adaptec 7880 UW SCSI onboard, great value.
Puma - who's lost her password
Linux with 2.2 kernel will actually make use of both of the processors. NT, on the other hand, will report that it sees two processors on boot up time. NT is too dain bramaged to know how to distribute different processes to different processors. The programs themselves have to have the smarts programmed into them, and there are very few of those.
I have a dual PII-333 system. When I was testing it out under NT4, one of the processors was always ice cold. In other words, it was completely unused. The same system under Linux 2.2.1 is very, very smooth, making good use of both of the processors. I like it!
Talk about going off on a tangent.
The article was about SMP being worth it using Linux/NT. Not about the "language police" cracking down.
Please get a fucking life.
Also, we seemed to have spoken quite well when we saved everyone's asses in WWII.
check this hardware hacker out:
http://www.psychosis.com/doa/notes.shtml
Locutus
I would like to put together a new machine with Linux on it. Is the value there in a dual processor box. I have looked at the quad NEC server box mentioned above, looks cool, but will it work with Linux? Quad Xenons are way too expensive. How about dual PIIs on a Tyan MB? Has anyone had experience with this? Please let me know what your experiences have been or I am doomed to live in a single processor world until I win the lottery. I know the vendors have multi processor boxes, but again they are expensive. I would like to put this together myself.
Thanks,
Todd
cannont@vitrex.net
I hate people that are different from me. I hate you. I hate child actors; I hate people who think Princess Diana was murdered, and I hate people who are unnaturally obsessed with Creative Reenactments. I hate people who use too many Linux puns. But I don't really have any opinions of Ebonics. I just want attention.
Boycott slashdot.
Don't waste your time talking to teenagers. These kids censor anything that is too technical for them, then they try to come off as actually knowing something.
After 2 books, numerous articles in LJ, they 86 every response (okay, almost every) and have never posted any of my questions (mostly cross target stuff).
I would suggest they go back to school.
I believe that you should do
alias make="make -j(num of procs+1)"
or am I wrong? I think it says that in either the kernel source (smp.txt)
The next time you compile the kernel, when running a SMP kernel,
edit linux/Makefile and change "MAKE=make" to "MAKE=make -jN"
(where N = number of CPU + 1, or if you have tons of memory/swap
you can just use "-j" without a number). Feel free to experiment
with this one.
--
David Coulson (TechNoir)
technoir@themes.org
It is so a word: irregardless == regardless, just like inflamable == flammable and English == confusing. Just because English has its troublesome bits doesn't mean you can unilaterally label them as wrong.
----
Open mind, insert foot.
Maybe there's a bottleneck somewhere; I'd think you'd be able to compile a kernel much faster with hardware like that.
- A.P.
--
"One World, One Web, One Program" - Microsoft Promotional Ad
"Remember when the U.S. had a drug problem, and then we declared a War On Drugs, and now you can't buy drugs anymore?"
- A.P.
--
"One World, One Web, One Program" - Microsoft Promotional Ad
"Remember when the U.S. had a drug problem, and then we declared a War On Drugs, and now you can't buy drugs anymore?"
- A.P.
--
"One World, One Web, One Program" - Microsoft Promotional Ad
"Remember when the U.S. had a drug problem, and then we declared a War On Drugs, and now you can't buy drugs anymore?"
> Isn't compiling a kernel really a single process.
No. It is lots of little processes. Each source file gets individually compiled, an linked at the end (into a library, and then the library into the kernel).
try 'man make' look for the -k parameter
-- Erv Walter
oops. I meant -j. typo
-- Erv Walter
I've built myself a dual PII 333 Linux-2.2 Box w/64MB RAM, UW SCSI 9.1MB. At 66Mhz bus speed, it's sometimes hard to keep those PII's fed. I do, however, get excellent compilation times and consistently push both processors during intensive tasks - so it's worth it to me. The system is extremely snappy.
Now, all I have to do is get the PC100 memory to go 100Mhz bus.
666.43 BogoMips and pushing the envelope.
Codifex Maximus ~ In search of... a shorter sig.
When you do a clone(), does the kernel not create a new Process ID with the same code and data as the origional process and only only changes the data when the processes begin to diverge? Also Known As: CopyOnWrite. I'm not a kernel hacker so I may be slightly off on my definition...
:)
I'm under the impression that CopyOnWrite is why Linux's context switching is so fast and why the additional implementation of threads as a separate schedulable process type is unnecessary.
As for the SMP problem being memory bandwidth... I holeheartedly agree.
Codifex Maximus ~ In search of... a shorter sig.
Posted by !ErrorBookmarkNotDefined:
You want 100Mhz bus speed at least.
And don't buy one that lets you overclock
the bus to 100. You want 100MHz bus speed or
better. No nonesense.
Now, you won't need that bus speed at first,
if you buy the cheap dual PI233's. But later,
when those 350s and 400s drop in price, you
will need the bus speed.
So. The words of the day are BUS SPEED.
-- Former Asus SMP board owner, who had an "overclockable"
bus; but had to replace the board anyway.
-----------------------------
Computers are useless. They can only give answers.
Posted by steelerm:
I salute the courageous message of this Anonymous Coward, this blow struck in the name of linguistic purity. Where would we be, after all, if we deviated from the rules of dead, white, grammarians? Sure, there are communities of people who can understand each other without speaking Standard English, but they do not speak properly. Because rules of speech that differ from the rules for written Standard English are wrong, per se .
But I lament that your own poor English sullies your noble message. To redeem its worth, I have attempted to correct it.
People will do anything these days to make sure they can be victimized in some way just so they can join the ["]pity me["] crowd. I might not be the oldest person alive[,] but even I knew the meaning of shame when I was a kid. Apparently, [people today] revel in being (this unnecessary use of "to be" really is ungainly) that do nothing but beg for [handouts] and understanding because they have screwed themselves up (Screwed themselves up? Can't we do better than this dirty vernacular phrase?). Ebonics is just another example of people being too lazy to do something the right way.
I am truly sorry, Anonymous Coward, that you were too lazy to post this message the right way. But Alas! I have just noticed that my own post contains at least one sentence fragment, and another sentence that begins with a conjunction! I, myself, have failed! But then how can I be superior to people who speak differently from me?
Yeah, and he does it pretty well. But keeping both processors busy on a desktop machine is a good trick; most of us are doing only one really heavy computing task at a time; downloading in the background hardly keeps the CPU awake, let alone busy.
But if you make -j3 your kernel on an SMP machine, for example, which tells make to spawn and manage three separate jobs, you'll notice quite a speedup; you'll save about a third of the time (not half, because of overhead) if you've got enough memory.
Craig
I don't think the orginial pentimun chip is worth buying, a dual P233 is probably about equal to a single PII250.
I own a dual PPro-200, and I love it, kernels build fast (FreeBSD) So I would recomend a dual processor system, but not with chips as old as you say. (remeber my ppros are equivelent to a PII-380, but the PI would not)
My advice: get a dual pII motherboard, even if you only do one CPU in it. If your comfortable with modifications to hardware consider the dual celerons.
don't forget that memory bandwidth is really a problem with dual chips, get plenty of memory, and a big cache.
It's not possible to buy a Pentium MMX dual socket 7 motherboard and then later upgrade it to P-II. P-II is slot 1 which will not plug into a socket 7 board.
Therefore I wouldn't worry if the dual Pentium MMX dual MB supported bus speeds greater than the Pentium MMX supports.
sarcasm is a process of mutation. mutation is good! hmmm.. three-eyed fish.
I dont think i'd wanna use any programs that were in charge of distributing its own threads across more than one processor....thats what the OS is for
It's probably at least as fast, or faster, than a pair of Pentium 233's. The problem is that doubling the number of processors doesn't double the memory bandwidth. Furthermore, the BH6 runs memory at 100 MHz rather than 66 MHz, which helps a lot.
If the SMP board has 128-bit wide main memory you'd see an improvement, though. Also, depending upon your application the bigger (but much slower) L2 cache might help.
Well, depends on what you're doing, but I love my Linux SMP box. It's plenty fast and smooth.
Red Hat's got nothing to do with it.
Linux needs a simple kernel re-compile after changing one number in the Makefile. NT needs a whole lot of crap... If you use MS's own utility, it will render your system useless, as it did mine. Do a fresh install. Damned NT. After that happened, I didn't use it again for many months. :)
Just because English has its troublesome bits doesn't mean you can unilaterally label them as wrong.
Yes, you can. Just because several people agree to do a stupid thing, does not make it any less a stupid thing. Irregardless is a silly word and people should not use it. That they do anyway is no justification for it being an 'official' part of the language.
I'm similarly beligerent about punctuation. This business of putting punctuation after closing quotes is silly and illogical. Quotes should be treated as nesting parentheses in an expression.
e.g.
I was amazed when I heard John say "Julie said 'Who is that guy over there?'."!
Any conventional attempt to punctuate that sentence would be a mess. You'd end up with something like:
I was amazed when I heard John say "Julie said 'Who is that guy over there'"?.!
or
I was amazed when I heard John say "Julie said 'Who is that guy over there'"!
Heh heh...true. I('ve) use(d) Mac, PC, and BeOS. They both have features I like and dislike, and each one has its place
Now we're nothing.
It's far easier to forgive your enemy after you get even with him.
Didn't I see reports that Celerons needed some fancy soldering to run dual? Or has Intel wised up? (yeah, right)
Jón
BTW, actually, MacOS 8.6, in beta testing now,
apparently has completely reworked SMP support.
So it's getting a lot better! Things are
looking up!
Phil Fraering "Humans. Go Fig." - Rita
(currently testing something about signatures here)
Um, it annoys me too, and it's definitely ugly, but you might want to check out the references in a similar spelling flamewar on the Mozillazine -- Dictionary.com and Merriam-Webster both say it's a valid spelling. Personally I'm particularly irritated by `loose' used where the correct word is `lose'. Ob-spelling-mistake: so htere.
--
W.A.S.T.E.
W.A.S.T.E.
FOLDOC says:
--
W.A.S.T.E.
W.A.S.T.E.
I found a copy of that paper -- it's interesting reading: "On Holy Wars and a Plea for Peace" by Danny Cohen, USC/ISI IEN 137, 1980-04-01.
--
W.A.S.T.E.
W.A.S.T.E.
Just a thought.
2 processors means half as many context switches per CPU, and faster responses to interrupts?
only on linux, where threading is broken. on a real OS, threading means that you don't need to context switch.
you'd expect 16 cpus giving approximately 14x the performance of 1 on a modern SGI, as a rule of thumb. sequents, tho', are about as close to linear as you can get.
i have experienced excellent performance improvements on NT for both web serving and SQL server, over already impressive performance, approximately 1.9x for the first CPU added, dropping to avout 3.4 for quad CPUs.
Can't Linux just balance the processes between two processors? Like if you started a whole bunch of processes at once? Could it run a few on one CPU and run the rest on the other CPU?
Well, Linux tries to do that. For instance, if you have two CPU-intensive processes (say, an RC5-64 cracker and a numerical simulation), Linux will schedule them on separate processors, and you'll get an speedup of 1.9 or so relative to running both on a uniprocessor machine. However, if your processes are I/O or memory bound, SMP systems will be at best the same as a uniprocessor system and possibly slightly slower due to contention for the memory or I/O bus.
So, if you do number crunching or heavy duty non-realtime 3d rendering, SMP probably makes sense. (It does for me, anyway; I do a fair amount of prototyping of numerical simulations on my home machine before I move them over to a Cray or SGI Origin.) For DB and web serving, it might or might not help. Most desktop users probably don't need it.
"My life's work has been to prompt others... and be forgotten." --Cyrano de Bergerac
only on linux, where threading is broken. on a real OS, threading means that you don't need to context switch.
How does NT, which I assume you consider a "real" operating system, swap threads on a processor without doing something equivalent to a context switch (i.e. saving register contents and process/thread state)? How is this less costly than a context switch on Linux? And why is it that NT's thread switching time is *slower* than Linux's context switching time? (BTW, SGI's IRIX schedules threads in a manner almost identical to Linux; do you consider IRIX a "fake" operating system as well?)
I submit that the Linux scheduler is written the way it is because it makes more sense from a performance perspective to have a simple single-level scheduler (where threads == processes) and make that very fast than it does to have a complex multi-level scheduler (with threads inside processes). The only difference between a process and a thread, at least from my point of view as a programmer/user on big systems like the SGI Origin 2000 and Cray T3E, is that threads have shared memory areas. That's a distinction in the process or thread's memory layout, but IMHO it's not something that should extend into the scheduler unless you're doing truly nasty things like gang-scheduling threads.
"My life's work has been to prompt others... and be forgotten." --Cyrano de Bergerac
You hit the nail on the head! The limited memory bandwidth of the Pentium architecture is the primary reason that SMP Pentiums are not a good idea. SMP with some 350 P2s or Celerons (with the appropriate modifications/slockets) makes a lot more sense. The PPro/P2 architecture does a very nice job with SMP. The SMP Pentium setups are kludges by comparision.
What are you talking about? The celeron uses the same core that P2s do. Intel simply failed to connect the SMP trigger line (BR#1?) on the Celeron SECC and produced specs that obscured the pin's location on the PPGA. When you connect that line to the appropriate edge connection, all of the normal memory coherency is in effect. If "Intel deliberately left the coherency stuff out of the Celeron," it would have increased development costs and, in turn, the cost of the shipped product. Hobbyists who are willing to violate their warrantee are reaping the benifits of Intel's little marketing creation.
Speaking of which..can someone please explain exactly how BeOS 'pervasive multithreading' works? When do threads come into existence? Where do they go? If I write, say, a 'hello world' program w/out worrying about threads, why don't I get deadlocks if my program is spinning extra threads off randomly? Are we dealing with threads being created for GUI callbacks, IO events, etc... ??
Daniel
Hurry up and jump on the individualist bandwagon!
The only thing with that is, linux's context switch is faster than NT's or Solaris's thread switch.....
technically, shouldn't inflammable mean "not flammable"? It's the same argument as regardless/irregardless i think. Use whichever. All these english people who get upset because people say irregardless should stop using the word inflammable.
:P
Flame away - i am inflammable!
"Give me liberty, or give me death, Zogwarg Queen!" - Spiff.
you can also use the -l option to gnu make which limits the load average. I often use "make -j -l 2.5" which will only spawn new processes til the load average reaches 2.5
It's a typo.
Good judgement comes from experience, and experience comes from bad judgement.
- W. Wriston, former Citibank CEO
Like the other poster said, a second CPU will only give you about a 30% boost - SMP on NT is pathetic. Every other OS does much better. So if two low-cost CPU's is significantly cheaper than a single high-performance CPU, then go for it.
--
Timur Tabi
Remove "nospam_" from email address
You know, for me it was the Ayn Rand quotes that really said it all...
Normally, punctuation marks are place within quotation marks. In the computer science community, however, it is often counter-productive to follow this rule, since quotationmarks often deliminate input. Periods, commas, and other punctuation marks are often not desirable in a input stream. So, some people have endevoured to popularize the "punctuation outside of quotations" rule.
After all, the suggestion 'Type "enter."' is awfully ambiguous to a first time computer user.
The two Pentium 200 CPU's would be much slower than the PII-450 by a long shot. The P5 has very little onboard cache, and talks to external cache over a 66mhz CPU bus. The PII-450 would be taking to a 225mhz on card cache, and a PPro 200 would be talking to a 200mhz on chip cache.
If you really want to do SMP, consider dual Pentium Pro's. You can get the 166/512kb's 180/256kb's for about $120 and they overclock reliably to 200mhz. Even at the factory clock speed, a 166/512kb would be much faster than a P5-200, and two of them would perform as well or better than a single pII-400 for many tasks.
Pop two PPro's on an Intel pr440fx motherboard that you can get for $100 on eBay and you've got a kickass fast system with built in ultra-wide SCSI, 100baseTX ethernet, sound, and USB, all of which work flawlessly under Linux.
Executive Summary: P5 CPU's are obsolete and a waste of money. Even two 233mhz p5's would be significantly slower than a single PII-450. PPro CPU's are a good buy, and you can prolly get two of 'em and a motherboard with SCSI and other goodies for cheaper than a PII-450 chip and board with the same features.
Recent versions of FreeBSD have SMP support. A friend of mine runs a system nearly identical to my dual ppro200 (except he's got FreeBSD instead of Linux) with good results.
EDO Buffered DIMMS work on many Sun Ultra's. If you go shopping for surplus Sun hardware, you can pick up cheap modules or 64-bit SPARC's to use them in.
I have a SMP motherboard in my computer and I was just waiting for the prices of PIIs to drop before replacing my Celeron. However, if I can get a Celeron 370 to slot 1 converter that has the SMP mod, I will go that route instead.
This machine will be used to run Linux about 90% of the time. However, for the few times that I need to boot into Win95, would it matter that I have an extra processor? I know it won't use it, but I don't want it to screw things up either.
Does anyone have experience running Win95 on such a machine? Thanks.
the good ground has been paved over by suicidal maniacs
Actually I think he made his point quite nicely, if not technically.. basically, yes, most Mac apps, even when "multithreaded", dont take advantage of SMP unless explicitly coded for it, though I do have a large number of apps that have some serious punch on my dual-604e motherboard, and these are the apps youd expect it from (ezcept servers). Most 3d apps have support for it, and i believe it scales pretty well up to 4 cpus... I dont know of any SMP-capable servers or databases for the legacy MacOS, but OS X is a different game.
:)
Is it your belief that a monothreaded x86 app would somehow distribute its load across multiple processors? I very much doubt this...
As far as MacOS X supporting SMP *EVENTUALLY*, there seems to be a great deal of misunderstanding regarding this... OS X Server 1.0 should be fully SMP capable, though the current line of PPC 750s arent gonna be spawning any dual-cpu models because of a weakness of the 750 ("G3")... tho there have been some interesting demos of 750-based SMP systems.
In any case, there is absolutely nothing preventing SMP in MacOS X, just the current CPU line, which is coming close to be cycled out at the high-end anyways... and, thank GOD, one nice legacy ball-and-chain will be gone in that we will no longer have to choose between virtual memory (swap) and SMP... i dont care what happy-happy-joy-joy Mac Evangelist lays his touchy-feely crap on me, that is one pain Ive lived with for far too long (though its a great excuse to have every DIMM slot filled with the big ones).
No, this definitely isnt Mac Evangelism... it brought tears to my eyes to see the true potential of my SMP box the first time I loaded BeOS on it.
One GREAT app for these machines (dual 604e based boxes) is running Distributed.net clients... I just loved comparing my keyrates with my Intel brethren
Binary Boy
If you think education is expensive, try ignorance.
-- Derek Bok,
AMD K7's will be using the same SMP protocol as Alphas from what I understand...
"deliminate"?
eliminate?
delineate?
elimeate?
permitate?
coginate?
ecuspidate?
bicuspidation?
tricuspadoration!
What were we talking about, anyways?
(hehheh: more troll bait!)
t_t_b
--
I'm on PJ's "enemies" list! Are you?
Minor correction: every *window* gets its own thread (for the event loop), but not every GUI widget.
-Jake
--
Jake
K6 could be run in SMP configuration.
You just a socket7 motherboard with a chipset that supports OpenPIC (doesn't exist).
I use Friend/Foe + mod-point modifiers as a karma/reputation system.
The obverse is usually the case: unless you're doing something weird, you probably will see gains
For example, running netscape involves at least two processes, netscape (duh) and the X server, both of which are major cpu consumers. The same easily applies to X-based games, transparent terminal windows, Word Perfect and even more easily to apache (where even a single client parallelizes requests).
/* MAGIC THEATRE
ENTRANCE NOT FOR EVERYBODY
MADMEN ONLY */
Even if you're doing parallelizable tasks (compiles etc), given that a PII 450 is going to be at least twice as fast as two pentiums, irregardless of speed, you won't gain anything besides the whole "damn SMP is cool" thing. In terms of SMP in general, "it depends." If all you do is play games, or browse the web etc you won't get any benefit out of SMP. If you do things such that there can be multiple tasks all vying for CPU at once (parallel compiles, scientific multithreaded/processes computations etc) then SMP can be a win. For most people, it probably isn't.
Yah, if you have multiple processes contending for time at once, SMP will help as well, but my point was that most people only have a single task running at once, and in any case two pentiums running at half the speed of a PII aren't going to outrun the PII.
You're right, I was thinking "irrespective" but a neuron must have misfired.
...and said systems can't spread threads across multiple CPUs, so you just lost one of the main benefits. You need context-switched threads to do SMP and Linux' context switches are faster than most of the systems that use userland threads anyways.
I get whoopity-ass kernel compile speeds (make -j3), but I can find little else under Linux that supports threads. The official list names about 20 different programs, including Roxen, Blender, and (my favorite) the Ultima Online client.
I wish Enlightenment or gnome or X supported threads. That's where I need my main power boost.
--
As long as each individual is facing the TV tube alone, formal freedom poses no threat to privilege.
"Reactionaries must be deprived of the right to voice their opinions; only the people have that right." - Mao
Should be the number of cpu's +1.
--
As long as each individual is facing the TV tube alone, formal freedom poses no threat to privilege.
"Reactionaries must be deprived of the right to voice their opinions; only the people have that right." - Mao
You see, you aren't making apples to apples comparisions here with the CPUs. First off, there's cache and bus speed differences- and the PII is going to win out. Also, realize you won't see as much speed out of that second processor as you'd think, it's not double- it's more like 80-90% of double the speed (all the admin overhead of the SMP operation).
In all honesty, the only time you want SMP is if you're doing a server of any kind and the pricing on CPUs makes it so that you end up with a machine that is as fast or faster for less. A good example would be the web server I just set up for my employer. The price breaks for 2 PII 350's were better than for one 400 or 450 in the machine(as in it cost us the same as a single 450 would have!)- so it made a lot of sense to do it as an SMP box (Something on the order of 600Mhz performance overall on compiles and actual server operation...)
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
No, you don't get the same power you would from a single chip (even if the chips are clock per clock speed equivalent), since both must share the same already limitted memory bus. Actually you get much better benafits from multiprocessing on other architectures (eg. sparc, alpha) which have less pathetic memory access.
If you're running Linux, you should always be able to get plenty of CPU power to kill runaway processes. Now granted, you won't have 50% available to kill a single runaway process, but on the other hand you will be able to run a process at 100% CPU time. In any case, the UNIX model for processes downgrades the priority of processes that take too much CPU time, so that other much smaller processes tend to run in near-realtime. In theory you could limit any process to 50% processor power on a single-processor machine and have all the benafits you talked about w/none of the disadvantages. But you wouldn't because you might as well let processes run at full CPU potential. Note that an OS w/a more modern kernel architecture such as Be (or HURD i guess) will give you absolutely flawless user interface even when the system is massively loaded down.
In addition, a dual PII-300 will perform _much_ better than a dual P5-200. The PII is quite a bit better than the Pentium clock per clock, and you're getting many more clocks than a single pII-450 would.
Oh, and the best dual slot-I MB is the Tyan S1836DLUAN Thunder 100 -- onboard audio, fast ethernet, UW SCSI, up to 1gig RAM.
The "extra chip" does NOT "make the workstation unstoppable" it just makes it that much faster than one chip of that type at that clock speed. But looking at the same chip, with the same total CPU Hz available, a single chip machine will be faster for a particular process and have greater aggregate CPU power.
I don't think I'd ever recommend 2x P200 instead of 1x PII, unless you already have a lot of the bits you need and feel like building a budget SMP box for fun. Of course, if you already have a PII and still need more then SMP obvious becomes a much better prospect.
Applications generally don't need to know or care about SMP, unless you have some specific program which only launches extra threads if you tell it to. e.g. gmake, which will benefit from being invoked with the flag -j
gcc is not threaded because each stage is a different process. It makes no sense for gcc to be threaded.
For further performance improvements, use gcc -pipe, so data is pipe'd between stages rather than using temporary files.
Anyone silly enough to toss out an arbitrary "adding a processor will only yield [foo]%" is obviously overlooking most (if not all) of the factors involved.
What you're doing has far more impact on the potential benefit of more cpus than anything else.
sure, take a pcchips M750 mobo (www.pcchips.com.tw) and 2 celeries 300A o/c to 450, that's all, less than 300$, and on the mobo you have a i740 with 8Mb AGP video, and a 3dsound onboard also, what do you want more?!?
for dual celeries working there's lot of place to find info, either on SEC or PPGA adaptor.
now you can run BeOS 4.1 on it and it flies!
--
"Science will win because it works." - Stephen Hawking
In Sweden a CD is called "a CD disc"...
/El Niño
Any multiprocessor system is going to have additional overhead from "processor synchronization" to keep each CPU from accessing memory locations while another CPU updates those data blocks. Each additional CPU increases the overhead. The amount of overhead would depend on the SMP capabilities of the processors for supporting structures like spinlocks, etc...
On our old VAX systems, the 1st additional cpu would add about 50% more CPU power...the next CPU added about 25% more... you get diminishing returns for each additional CPU because of additional synchronization required.
Linux and NT will get some benefit in that each process would be capable of running on a separate CPU. Multithreaded applications would benefit the most (utilizing the pthreads library or similar libraries). BeOS I hear _heavily_ uses threads, and is also written to take as much advantage as possible of multiprocessor systems.
All in all, a dual-processing system would be great if I had several processes executing at the same time (like a raytracer in the background)...but right now if you're just playing Quake or running a single single-threaded app, you won't gain much. ALso keep in mind that Win95 is not SMP-capable.... I don't know about Win98.
Just my $0.02.
--
John Kramer
John Kramer
God may be my co-pilot, but the devil is my backseat driver.
I am currently running a dual PII 266. Kernel 2.0.24 compiled for dual, embarased NT speed wise. Everything from quake2 to windows apps in wine ran better. The real change came when I upgraded to the experimental series around 2.1.121. Holy crap it eats everything for breakfast. The spinlock method really improves load handling (things like doing a make won't interfere with playing a video game.) Almost makes wish I still had NT on here to show people what I'm talking about...Nah no it dosn't.
I have to check out smp mesa!
Novel theory: Modern Man evolved from psychopath
I'm doing it right now, and warm reboots work.
95b just happly bops along ignoring half the power availible to it.
I have no idea about 98.
(rustle shuffle)...Damn can't find the motherboard manual, well I've had it for a year and a half now. The mother board is a 66mhz made by Tyan with an AMI bios. It's a dual PII 266.
Novel theory: Modern Man evolved from psychopath
The Pentium is really an old CPU design, and dual boards had a shared L2 cache architecture (pants).
Over-clock a Celeron in a BX motherboard, or even a dual BX board, and you'll get far better performance at around the same cost.
Dual Celerons
Single Celerons O/C
>Macintrashes require distinct applications for SMP systems (because the OS is SMP-impaired).
;-)
Sure, Bill, whatever. Divide and conquor the Anything But Microsoft crowd, right? And HOW bad did NT keep crashing for Adobe at Seybold, where they had to do all the demos on MacOS instead of 50-50 as was planned?
... and what EXACTLY does Windows NT do with applications that are not "distinct for SMP systems", as you put it?
Not a heck of a lot. I'm sitting on an Intergraph GT1 with 2 Pentium2 400's, running Windows NT.
Few apps ever uses more than "50% of the CPU pool", or a single processor. You are saying just put any app on an NT box and the OS will magically distribute the load, eh?
Oh, PhotoShop does use both CPU's... must be written that way.
>NT or Linux... doesn't matter - any app that'll run on a one proc machine should run on an n-proc machine.
Um... really? You are genius. Sweeping generalizations, Microsoft style... PURE FUD.
Oh, and NT also does not feature power management... ever take an NT laptop on a plane? Better carry another battery unless you're using a Mac or Windoze 9x
Color calibration for NT? Nope...
Multiple display support for NT? SORT OF if you don't mind the fact that the cards have to be the same chipset? Oh, also with NT you can't have different resolutions running in each monitor (very useful if you are proofing an app or webpage for different resolutions. Oh, and how the NT OS automatically sticks all dialog boxes in-between both monitors, instead of nicely centering in the default monitor
Scripability in NT? there's nothing even remotely like AppleScript, needed for automation and piping data from one application to another. Sure, WindowsNT has OLE which is not scripting, and requires [cough, cough] purchasing more Microsoft tools. Unless you want to count CMD.EXE... a GREAT environment for scripting in NT (not). That'll be gone too in the next version of Windoze and you'll have to buy VB Lite to build little programs that "list a directory and then print the list" which you still can't do in Explorer.
Don't be an ass. There's huge shortcomings to all OS's out there. MacOS X Server takes a big leap forward with a UNIX-based OS, and every few months Linux is getting better, while only Windows is lowering its quality and becoming more closed an environment...
Oops, you're right on one point -- I did acknowledge the Mac SMP problem" at first but lost it when I shortened my post. I stand corrected. I don't see where you're ass-u-me ing my response was wounded pride however - I don't have a Mac, but I ALSO loathe misguided pro-Microsoft evangelism & FUD, and stating NT magically distributes application load over CPU's is just bullshit.
Never mind the fact that since Pentium II CPU's do not easily scale beyond 2 processors, I'm stuck with just 2 CPU's when I could do more with 4.
I have a dual processor NT box here and VERY FEW Windows applications use both processors. Unless the Win32 app is written to take advantage of multiple processors or threads, then the app will sit on a single CPU be it MacOS OR WinNT.
Apps like PhotoShop are heavily threaded and support multiple processors on either OS. I've seen Adobe products scream on a 4-CPU DayStar MacOS machine..
Here's what I know on the subject, if this helps anyone:
MacOS apps may use the SML-enabling extensions licensed by Apple from Daystar, but these are not very stable and are cumbersome to program (so I have been told!). Mac OS X fixes that at the OS level -- if the app is recompiled using Carbon API's. The last remaining issue is G3 CPU's do not SMP very well, and when you have 2 or more processors running in paralell they will invalidate the other's cache, which kills responsiveness. This limitation CAN be worked around, as we've seen the press releases from PowerPC Linux and the Amiga folks who are pursuing 4-way G3 solutions (it can work but it is a hack). SMP existed in the 604e and will return again in the G4. I think the G4 CPU's will also support multiple cores in a single chip also (!!).
I've got dual 400MHz celerons on a 66 MHz LX SuperMicro that say they wanna throw down with a 3000 dollar BX PII dualie.
It's just rich that they stopped making PIIs for the 66 bus at 333MHz, but are planning to take
the multiplier to at least 7 (466) on the Celery.
Get your drills out guys and gals.
-k
Running database servers and a workstation on daul PII 333's on a Tyan ThunderII mobo. Was running kernel 2.1.132 but migrating to 2.2 now. Been very stable and kick a$$ performance. Pumps out 3Mkps doing RC5 too :)
:)
bash# lynx http://www.slashdot.org >>/dev/geek
The DB server has a 40GB raid volume which has also performed perfectly. Very snappy.
Linux is cool
----------------------------------------------
Matt on IRC, Nick: Tuttle
----------------------------------------------
bash# lynx http://www.slashdot.org >>/dev/geek
Matt on IRC
Never heard the term.
You are right, that it impossible to police the fluid nature of a language, because who defines a language but the people who speak it? Eventually, all structuralists must conceed that the hoi polloi are truly in charge linguistically.
However, the people who would police what is allowed and is not are just as necessary in their own way, if we wish to make our language more rooted and static than fluid (excessive linguistic change is not necessarily a good thing).
Check my Go-related blog for beginners: DGD
It is true that the "hoi" is in fact the definite article in the greek phrase "hoi polloi" and therefore is translated as "the", but this is an example of what I mean in a way of common people controlling the language: "The hoi polloi" has indeed become a seperate phrase used sometimes by journalists and classicists to mean "the masses of common people", even though to be strictly true to the origional greek it is redundant. However, the article also contains the plural nature of the noun, as well as a mood marker.
The origional greek meaning is both complex and really interesting, and if you ever study greek, you'll come to like it.
This is a weird place to have this thread, but oh well....
Check my Go-related blog for beginners: DGD
Dual Processors != SMP, SMP is just one method. The AMD K5 used to do OpenPIC(I cant speak for K6's), which incidentaly is what the quad proc G3 computer running linux uses for the multiprocessor implimintation. saw it on Slashdo recently, but I'm to lazy to find it.
---------------------------------
AMD and Cyrix chips are not SMP capable.
If I remember right, their "pervasive multithreading" means, first, any system objects will have their own thread (eg all the GUI widgets), second any system call will run threadedly if it can, third it is easy for you to create and use your own threads.
sort of...
an SMP box becomes SMP when the SMP bios is initialized by the OS during the boot-up process.
This has to happen on every boot, so you'd have no problem in the config suggested, at least as long as you power off between boots. If you just C-A-D'ed, you may leave the bios in SMP mode and may confuse win9x. other than that, i don't think there'd be any real problem.
Somebody get our flag back!
In your dictionary words beginning with the letter "i" come *after* those beginning with "n"? How curious.
I see even classic Slashdot is now pretty much unusable on dial up anymore.
I got it up and running, but had some serious stability problems - not sure if it's timing problems (due to that big ol' floppy wire looping around the card) or if I have a mechanical connection problem. I'm using a Asus P2L97 motherboard - was getting random lockups. I'm gonna do some careful resoldering one more time, then perhaps I'll give up if I can't get some stability out of it. Anyone have this setup running reliably?
How do you know exactly what the Celeron 300A does and doesn't have (coherency support, etc)? Is all this in the data sheets? You sound like you know what you're talking about, but I haven't seen these issues discussed anywhere else...
:-)
Oh, and did you mean "random crashes" when you said "random caches?"
Thanks.
I've been doing this for a while - no problem, but your second processor might get bored. You should swap CPU0 and CPU1 every googleflop or so, to ensure that the second processor doesn't get jealous. :P
Can be found on that amazing site, www.ars-technica.com -- the Damage Labs has been working with SMP and overclocked boards for awhile and they did some benchmarking about the value of SMP vs. faster clock speeds.
Nothing worth doing is worth doing today.
Dual PII is *very* well worth it. Each processor has its own L2 cache and that helps avoid the problems seen in pentium SMP - memory access.
With a dual P1, it is possible to be *slower* even with smp aware code than a single p1 at the same clock.. dual p-133's can be slower than a single p-133.. nonsense you say? Take a memory IO bound process operating randomly and heavily over a 400k dataset and a 128k code loop. Each processor has 8-16k (classic vs mmx) of local L1 cache onboard. Anything not in the L1 cache must be accessed from L2 cache, which is shared between the 2 processors. Acessing the shared cache requires contention against the other processor for control of the memory/l2 cache bus, which is not a trivial overhead. In the case of a large dataset and codeset, dual p1's can be slower than a single p1 of the same clockrate, because most of the time is spent arbitrating access to the l2 cache. Admittedly data/code loops this large aren't common in PC apps.
Even in the *best case* scenario you expect a 70 or 80% boost from the second pentium.. thus dual p-233's would at best perform like a single pentium 413, which is *vastly* slower than a pII-450.
Dual pII's do not suffer this memory contention problem as easily, since each processor has 512k of l2 cache onboard. You'd need a code/dataset significantly larger than 512k to cause the problem (random access over a 3-4meg working dataset and 1-2meg working code loop with lots of weird branching could cause the problem on dual PII's but it's really hard to find real problems with codeloops that big. And even with that, the 512k l2 cache may keep the processors busy enough they aren't in contention for memory all the time.)
Personaly, I'm considering building a SMP p1 system despite these caveats.. but I *know* that under no conditions will it be faster than a pII-450... I'm considering it for the geek factor.
-Matt
I run Turbolinux 3.01 (with the supplied SMP kernel) along with BeOS R4. Two Pentium 150s on a Giga-byte GA-586DX board with 96Mb RAM. It cooks. You do *any* image processing and you'll see the difference.
>Ebonics is just another example of people being too lazy to do something the right way.
Just like shell scripts are for people too lazy to type out all commands by hand, every time, huh?
Language is a tool, just like anything else. The easiest and quickest way to do something is often the best.
Please remove yourself from your high cultural horse. Thanks.
Actually this used annoy me, then my hearing started to go, and now I consider it a form of forward error correction on a half duplex channel. If I miss the "you" in "where are you at" my synaptic syndrome decoder kicks in and I know what you said even though I didn't recieve all the words. Like wise with the other forms you cited.
how about dual water-cooled thermoelectic cooling modularized PII's? ooooooooooooooohhhhhhhhhh, nicccccccccccccccccccce!
:-)
note that (quad xeon dell != dual P-266s)
I've got a dual PII-300 here at work, and it's been totally smoked by later single-CPU machines because it has the old 66Mhz bus.
Troy, I think there's one more difference:
Unix processes have separate address spaces.
Each address space starts at 0 (2gig, whatever),
hence they overlap. For a thread change you
keep the virtual-to-physical memory mapping,
for a process change you need to change it (which
means flushing the TLB - translation lookaside
buffer, lots of traffic between MMU, which is
part of the CPU-"chip" and the main memory).
Also, I think the main Symmetrical MP problem is memory bandwidth.
Aside from 'make -j2', which schedules multiple independent Make targets for concurrent execution, there is also 'gcc -pipe' which implies at least two processes.
There is a wall-time improvement just doing a "straight" (no application-level SMP support) compile of a large program such as the Linux kernel on a two-processor machine.
-- I avoid spam by accepting only OpenPGP encrypted or signed email at this address. Clear-signed, RFC2015, heck, even
The new 300A's in the PPGA form ( socket 370 ) can be used in Slot 1 boards with an adapter.
On some of these adapters, SMP can be enabled easily just by modifying the adapter ($15 part, just buy three in case you mess one up ), and thus circumeventing the old school celeron hack.
BTW, the PPGA 300A's go to 450 just as easy.
http://www.bxboards.com has article on it somewhere.
Where can you buy these at? I've got an aging P233mmx, but am loathe to upgrade to a PII since I'll need a new case, new RAM, etc. but just adding a different mobo and another CPU would be keen.
When in danger or in doubt, run in circles, scream and shout. --Robert A. Heinlein
Most home users will never exploit SMP, and for them I think they are simply wasting their money.
If you are running a loaded server, then it might be worth investigating, like a loaded Oracle server.
Note that you will want RAID and a lot of memory - two processors sharing one disk and little memeory are not going to be faster than one processor using one disk and a little memory.
um, you are quite wrong. My dual celeron 450/100
machine will back me up with this. It works,
and works WELL. you need to unmess up the
glue logic which intel left disconnected
so that one wouldn't use their celeron in
dual mode.
What I am stating that I believe to be true: If you randomly pick a sample of 1000 (american) people, and ask them a question containing the word "irregardless" that they would comprehend the word fully.
The trouble I have with the use of nonstandard terminology and syntax being backed up with only `well, you know what I mean' (this reminds me of what my calculus teacher says, which is, "listen to what I mean, not what I say") is that it leads to situations in which I do not really know what you mean, and, half of the time, neither do you.
Moving into a world in which we communicate vaguely, and in which a large amount of communication is based more upon interpretation upon reception than is based on correct transmission in a commonly-understood language (in which one says one thing with faith that it'll be `correctly' interpreted as something else) leads to the used language becoming redundant in some areas and inadequate in others. In other words, `you-know-what-I-mean syndrome' will lead to an inability to communicate. Theoretically, this is so. In reality, I've already seen this--explanations, to persons who understand terms as meaning something other than what you do, of anything that requires reduction to those terms. Examples: I've tried to explain things like sterography and sterophonics and stereo-othernesses to some, and had great difficulty with this task when they believe that `stereo' means something like `dual-channel'. I forgot the other example that I was going to give, but I might remember, later. Of course, I could explain three-dimensionality without the prefix "stereo", but it can be horribly lengthy and almost painful, on some level. I don't understand the usefulness of circumventing things simultaneously useful, efficient, and built-in.
Also, I wouldn't say that context-sensitive meanings of linguistic elements are `bad', nor would I negate their usefulnesses, unless the communicators are not fully-understanding of the manners in which contexts influence meaning.
-rozzin.
I'm waiting for the K7 for the new bus speed and the cache. I'm suggesting the same to all my friends.
How come u can't dual up an AMD?
I have a PR440FX board with dual ppro 180's (256k l2) running at 233mhz each.. with 196mb of the edo/ecc buffered dimms.. I got the last 128mb in the form of 2 64mb dimms about 3 months ago, and they where only around $72 each or something like that.. I ordered them from www.pcboost.com
They have good memmory at a good price, and this system is as fast for most things as my p2400@448 that I run at work.
Do all programs have to be written to use SMP?
Can't Linux just balance the processes between two processors? Like if you started a whole bunch of processes at once? Could it run a few on one CPU and run the rest on the other CPU?
Cause I tend to max my machine out by trying to do too much at one time.
This sig is false.
You are basing your contention that 'irregardless' is a common usage by your experience at work, and then stating that one would find this anywhere. This is a gravely mistaken assumption on your part. Having travelled the worls for over 20 years, and speaking with a large amount of people in my daily duties, I can say that I do *not* hear the word very often. when it is used, it is politely corrected, and we do not hear that person use that term again.
Even accepting the idea that common usage leads to correct usageover time, 'irregardless; is *not* correct usage *now*.
However, that assumption is also flawed. "Irregardless"'s incorrectness is based upon rules of grammar. These rules of grammar are irrespecive of how people apply them.Ignorance and misuse of the rules do not change them. Even if the proverbial 'everyone' used irregardless, it would *still* be wrong.
Regardless of whether 'irregardless' would be used on the news, it would not become the correct form of regardless.
Comprehension of one's intent is also not a factor in the correctness of grammar and word usage. Incorrect use of words is a leading cause of confuion and misunderstanding. The old 'you know what I meant' is the game Clinton has been playing for years. Doesn't make the meaning of the word 'is' any different, now does it?
My Suburban burns less gasoline than your Prius.
No, I will think of a hacker, not some guy/gal out to cause mischeif. this is a primary difference between the two words.
If a hacker got into my system, I would wonder how, but not be concerned he or she did anything to it.
The again, a *hacker* would probably tell me how he/she got there.
Now, a *cracker* is a different story.
My Suburban burns less gasoline than your Prius.
Around here, though, it is said: "Need to stop at the ATM".
My Suburban burns less gasoline than your Prius.
I will need to buy a new machine soon. I like to use my primary machine as both a client and web server. I suppose I should just break down and use NFS, but I like having everything on the same machine.
(1) Would SMP then be useful to me? That is, would I wind up having one CPU devoted to web serving and one devoted to the workstation, thus having effectively two computers in the same box? Or would I be better off buying two separate compuers, putting X on one and putting the web server on the other, and connecting them via NFS? What about NFS security questions? Note that I'm sitting on a 10mb line and would like to be able to saturate it if necessary. Most of my content would be CGI-driven, so CPU might well be a factor.
(2) How much CPU and memory are needed to make Enlightenment snappy? I have a K5/333 and use Enlightenment at 1280x1024 and it's sluggish. I'd like to see things really zip. What do I need?
(3) I will admit a lingering fondness for proprietary workstations such as Sun and SGI. I've pretty much given up on SGI, despite their really nice user interface, because they are trending to Windows, and because the SGI workstations I've used have not proven reliable. But Sun has had some very tempting ads for systems that would cost about the same as a decent VA Research Linux machine, and the Sun clone I bought five years ago is easily the most reliable computer I've ever owned. How would I compare the performance between Sun and VA? I like supporting the Linux revolution, but I also like the smoothness and higher reliability of a Sun.
Many thanks for any thoughts.
D
----
Visit The La Brea Tar Pits in Los Angeles, CA.
(the the tar tar pits)
Scuttlemonkey is a troll
Re the Celeron - bollocks. The APIC logic is included on the die, it's just not connected to the bus. There is no need to include it on an adapter or the MB; you just need to be handy with a soldering iron, and you've got yourself the equivalent of dual PII's with 128K cache each.
As for AMD using a different SMP protocol than Intel chips, I hadn't heard that and it sounds like an amazingly stupid move by AMD. I would _expect_ that interoperation between Intel and AMD chips wouldn't work, but the coherency protocol should be pretty much invisible to software and an all-AMD system should "just work" in that regard. Are you sure you didn't mean to say that the AMD chips have a different multiple-MMU interface (which is a different thing) than the Intel chips, and that Linux doesn't currently support that interface?
Sorry, but you're talking through your hat on this one... The AMD K5 had SMP capability based on the OpenPIC standard, also used by several other companies. The K6 series has no SMP capability at all. The K7 will (once again a non-Intel version). And the reason for all these contortions? The APIC "standard" used by Intel just happens to be patented by Intel, meaning that AMD, Cyrix, or whoever can't use it without being whacked with a lawsuit or paying humongous licensing fees.
Please no FUD about how Linux "isn't compatible"...
and have been for centuries. Never read Gulliver's Travels?
optimal.
I've heard similar stories. I was told that adding a second processor under NT gave about a 33% performance increase, due to bad design (IIRC all interrupts were handled by one processor, among other things, but I don't have hard details on that).
BeOS scales beautifully to dual processors. As far as I can tell on the test machine here, there is little or no overhead for multithreaded _applications_. I'm not sure about the kernel, but it was designed explicitly with multithreading and SMP in mind.
I'm told that earlier versions of Linux could support SMP, but only one processor could be in the kernel at a time. I'm told that 2.2.x is much better in this regard, with finer locking granularity allowing proper distribution of kernel load between processors.
If there isn't much OS overhead in general/if the primary load is the application (i.e. you're running something like a multithreaded ray-tracer or physical simulation), then in principle SMP should give substantial performance gains on any platform. In the real world, I don't know, but it probably still is application-dependent.
The ray tracer would probably run into memory bandwidth problems, come to think of it. That might be its performance bottleneck even on a single-processor system.
I've used both fairly extensively. BeOS has a nice interface, is reasonably stable, and has a fairly clean API. However, it's still fairly easy to wedge a BeOS system if you muck around with anything complicated, and security and memory protection leave much to be desired, for the time being. Linux and other Unix variants tend to have uglier interfaces and more complex APIs, but are very stable, reasonably secure, and can be tortured to within an inch of their lives without falling over (though you can still wedge them if you try hard enough). A BeOS box is a wonderful user machine. A *nix box is a wonderful server.
Just my 2 cents worth (1.3 cents US).
The problems are locking and memory coherence.
When you have a single processor accessing memory, everything is just fine. The processor can cache what it wants, and what is in its cache will always be valid. It can load a value from memory, modify it, and write it back, and be confident that nothing has modified it in the interim. In general, life is good, though if it uses superscaling it'll have to implement some locking logic internally for memory operations that are supposed to be atomic.
When you have multiple processors, things get significantly uglier. First, let's consider the case where you have multiple processors accessing uncached memory.
Processor A and processor B are counting events. Each increments the same counter. This is done by reading the value from memory, incrementing it, and then writing it to memory again. A problem occurs when both try to do this at the same time. Processor A reads the value. Processor B reads the value. Both increment it, and then both write it again. At the end of all of this, the value has only been incremented by one, because both processors had read the original value of the variable.
The solution to this is locking. We declare that we want the incrementing operations performed atomically; that is, we want the incrementing operation to behave as if it is done in one step, instead of several steps interleaved with other instructions. When processor A wants to increment the counter, it locks the memory region in which the counter resides, performs the steps required for incrementing it, and then unlocks it again. During this time, processor B is unable to acquire a lock for that region of memory and so ends up waiting until processor A has finished incrementing. The counting works properly, but the memory control system needs to be a bit more complex.
Now, we have the problem of cacheing. When processor A wants to lock a region of memory, not only does it have to lock the region of main memory, but the cache of processor B needs to be updated if it stored a copy of that region of memory. This kind of cache updating requires even more complicated memory control logic.
The K6 series of processors doesn't include this. As a result, it has a simpler memory control and cacheing system, making it cheaper to produce, but it can't support SMP unless you disable cacheing on the chip and stick memory management logic on the motherboard. This extra logic is expensive, and if you have any sense, you'll stick a cache next to the chip on the motherboard, which is expensive also, and slower than an on-chip cache would be.
So, for AMD SMP, wait for the K7.
The Celeron doesn't have this either. For Celeron SMP, you either have to include this logic on the motherboard or on the 370-to-slot-1 adapter, or else run into very bizzare flakiness when two processors disagree about what should be in memory at a given location.
"Yes".
The OS, if it's been compiled to support SMP, should detect multiple processors automatically and spread out threads accordingly. Applications will only benefit from this if they were written to use multiple threads.
get your facts straight.
OpenPIC is a cross platform, external PIC implementation, and doesn't need explicit processor support.
So the K6 could be run in SMP configuration, it's just there are no x86 motherboards that support it..
Check again Professor Spelling Bee. I didn't spell ignorance, or any other word, wrong. Oh wait, I guess you're probably going by the hillbilly dictionary. Maybe it's time to put yourself out of my misery.
If someone runs into your office and yells "Hackers got into our website", the word in question will mean "crackers" to you, unless you are an ignoramous.
What you are arguing for is either a pedantic internal differeniation ("Janitors" versus "Custodial Engineers" or "Nerds" versus "Geeks") or a political attempt to redefine or reclaim the word (the rap band "Niggers With Attitude").
You probably are attempting the latter, but then I wouldn't call IceCube a nigger either.
--
Business. Numbers. Money. People. Computer World.
Can you provide a reference for this claim?
(My understanding was that Win2000 would support more processors, not less!)
--
Business. Numbers. Money. People. Computer World.
Strange... I saw a huge performance difference and I dont use any SMP apps.. unless Apache FTP and other servers are SMP enabled. Samba is even faster. Please qualify your statements first.. It's a waste if you want your home PC to do something faster... if you run a server you're insane not to use SMP. My webcams went from 6fps to 12 fps by merely adding the 2nd cpu and adding SMP support to Linux... and I know my webcam software isnt SMP enabled :-)
Do not look at laser with remaining good eye.
It's bad cause youins sounds ignant when you ain't speakin' to people that be usin' it the same as y'all.
All valid english based on much of this discussion, right?
I think there are differences between "common usage", "accepted usage", and "correct usage" in many cases. C'est la vie.
Edu. sig-line: Choose rhymes with lose. Chose rhymes with goes. Loose rhymes with goose.
Comparing? THEN use THAN.
Frankly, what affects the speed of display most is eliminating swapping by having enough memory and using a graphics card that has fully supported accelleration. My cheapo $30 Cirrus 5465 AGP card flies with the windoze drivers (provided by the manufacturer) but the X86 driver is partly broken, and I can only use it in unaccelerated mode, so its a bit sluggish. You'd probably get more bang-for-buck by spending on heaps of memory and a decent graphics card. Only consider SMP when you run out of room for memory. If you're considering it, you could always buy a dual board and just one processor, and add the second one later, but with the speed things are changing these days I would buy for now and forget upgradability - by the time you want to upgrade 4 slot PIII mobo's will be $20 and memory will be free in cereal packets...
As far as your comments on NFS, NFS security is pretty good if you spend a little time setting it up. Put 2 ethernet cards in your server, use it as a firewall too, and use unroutable IP addresses on the private side of your network. Then configure NFS to only allow access to NFS exports for your private subnet, and no-ones going to get in. If you're spending money on a high-speed link, its worth spending a little time&money on learning about security. I have found that a properly configured Linux box is as secure as any other OS (and in most cases MORE secure), it's just that few people can be bothered to set it up. Most distro's come configured with everything switched on, which reduces setup problems but can leave you wide open. There are many excellent books on this subject.
P.S. Yes, I am about to replace my graphics card! The irritating thing is I have been given a *new* card by someone, but its *so* new its not supported by ANY X86 driver (Sigh...).
*--BigMan--- Time flies like an arrow.. but personally I prefer a nice glass of wine!
Just because it happens doesn't mean we have to like it. And we can fight it, too, by suppressing its use. "I could care less" is another one of these !@^%# phrases that means the exact opposite of what's intended, and we'd all be better off if people used the proper phrase.
Woody Harrelson once said something to the effect of "Flammable and inflammable mean the same thing. Boy did I learn that one the hard way!"
Never refuse a breath mint.
operating system parochialism... how delightful.
listen. there is one important aspect to consider when comparing dual-CPU to single-CPU. your O/S might actually be modern enough to support thread isolation within the kernel, in which case all your device drivers better be thread safe or they might be annoyingly unreliable on your SMP box.
having written a device driver or two for Solaris, i can assure you there is buggy software that will run fine on a single-CPU Solaris machine that loses horribly on a n-CPU Solaris machine.
of course, Linux and NT are old-school enough that they still only allow one CPU at a time to be running in the kernel and handling interrupts-- or have i been misinformed?
jhw
As the owner of a dozen computers, half of them SMP, here's my answer...check your applications. It's nice that your OS supports SMP, but if your applications don't you're just wasting your money. For ex. I'm a hobby 3D animator (I've made some nice money at it too). My dual P2-233 box blows my single cpu 400 away when it comes to render times. So my recommendation? Go through your most commonly used applications one-by-one and ascertain their SMP support (should be clearly labeled in the documentation).
.plan statement from Mr. Carmack stating that Q3A will not support SMP, despite the popular rumor that it will. Something about a timing issue between the CPU's on Intel chipset SMP boards.
Oh, and if you're a gamer, I seem to recall a
There is nothing so pathetic as seeing a beautiful young theory roughed up by a tough gang of facts.
I got a dual PII 266 when it first came out (yes, it was quite expensive), but in Linux (especially kernel 2.2.* with its extended smp support), it flies. running more than one program at once without ANY slowdown is great...aka, i can have a graphics app going like gimp and be surfing the web without slowdowns, unless i run out of memory.
My plan is to pimp before they realize I'm a jackass. Hit 'em hard and fast.
Aye, it's cool. Also, in my case, it was actually CHEAPER! I bought this machine and assembled it from mailordered parts in late august '98. At that time, it was cheaper for me to get dual 300MHZ PII's than a single 400MHz chip (including the increased cost of the SMP motherboard). I must say that I am happier with my dual 300's than I would have been with a single 400, too. Heat is a problem, so make sure you get a full tower case (anything smaller, and you'll be leaving the case off and making extensive use of the vacuum (I just took out mounds of dustpuppies from the cpu heatsinks...). Linux runs great with SMP. As long as you have a recent kernel, and recent drivers (some of the 3com drivers that came with 2.0.36 are NOT SMP safe), you should be ok. NT takes advantage of SMP systems quite well too, but the number of non-SMP-safe drivers is greater, I think. In particular, the Soundblaster AWE drivers did not seem to be SMP safe. WinAmp would make NT BSOD with an INVALID_PROCESS_ATTACH_ATTEMPT (whatever that means... I think many of the BSOD messages are blacklisted info kindof like the sadmac errors at least once were, maybe, yes?). With linux, I have had few or no problems with SMP. Some process monitoring utilities need to be update/patched to report some info correctly, though... For the speed you gain, SMP is often cheaper than a single processor system. Plus you have the effect that one cpu hogging app won't make your system unresponsive (I start to notice a VERY SLIGHT decline in responsiveness at a load around 6!) PS: SuperMicro makes great single and multi-processor motherboards and has good prices!
-Cheetah
Intel has SMP spec, and motherboard manufactures cator to intel.
AMD and Cyrix also have a SMP spec, but there are no motherboards that use that spec, so AMD and Cyrix don't do SMP... the CPu's can but the MB's cannot
I asked AMD and that is what they told me...
Only 'flamers' flame!
I have been using SMP GNU/Linux since just around the time of the release of 2.0.34. I now use the 2.0.36 kernel, and will probably by the end of the first quarter this year upgrade my system to a glibc2, 2.2 kernel SMP system.
:-) :-)
.. this is a non threaded system
.... on my system to compile my kernel it takes the same time that it would take on a 450...(according to benchmarks I have read)
/or NT and grapic apps. 2 or 4 Meg video card will do if you do not plan on running X or NT
1) the motherboard. I have a tyan tomcat IV motherboard, with a 66Mhz bus.. I wish I had a 100Mhz bus thou
2) I have 2 233Mhz MMX CPU's.. I wish they were both 450 Mhz
3) I have libc.. I am going to have glibc2 or libc2 what ever they call it.. it supports threads. threads are an SMP machines friend
4) I am using 2.0.36 . I will upgrade to 2.2 as it has better support.. now that out of the way....
->I use ghostscript for printing. one weekend I was testing my system and playing with my epson printer, and the command
gs @stc2s_h file.ps -sOutPutFile=|\lpr (something like that)
sucked up BOTH cpu's 100% usage each for about 1 minute, then printerd my image at 720x720 color
->when I use the gimp, some of the plugins are very cpu intensive, and I have monitored my system and found that both of the CPU's are sharing the work, but not equally. some of these plugins are being threaded too...
-> threaded applications will take advantage of the multiple processor system, as will parallel applications
I do a 'make -j 4 bzImage' (sometimes -j 8)
and my cpu's get usage here.. this causes make to spawn 4 (or 8) processes and compile different part of the kernel simultaneously in there object files before compiling the final kernel.. btw.. this takes 3 minutes for my 2.0.36 kernel.. I have a script that tells me when I started and when it ended.. and it is 3 minutes.. enough time to cook an egg (lol)
->If you are like me and you compile most of the applications on your system it is nice to cause most apps to compile have to build the objects first, then the libs, and app itself, so make -j 4 works in lots of places....
I have no complaints with my system right now..well just one (I/O).. I also have a dual boot NT / GNU/Linux system as you mention you are planning on doing.. (though I rarely go into NT anymore GNU/Linux is much better)
-> more and more GNU/Linux apps seem to be moving to threads... even glib now has threads in it and is best compiled on a threaded machine..(I have to use --disable-threads)
-> threads of one program can run on multiple processors.. I have seen a ftp program for Linux that uses threads and can download a directory..(I need threads).
-> the GNU/Linux and the NT kernel's both do what is called 'scheduling' this scheduling allows the kernel to decide which cpu a process is run on. So that even if you do have a system that is not doing parallel tasks or threaded (like mine is so often) the load will be balanced.... or somewhat shared
-> currently I find more bottle necks in I/O than in CPU or memory..... I/O to the grapics card (I have a cheap Diamond Stealth 3D 2000)....
If you can, I would HIGHLY suggest the following setup
100 Mhz bus
AGP video card with 8 Meg of RAM if you are planning on running X and
DUAL 233 or 333Mhz cpu's that use the 100 bus, no over clocking....
PCI modem, PCI network card, PCI soundcard, and all your cards should be on the PCI bus, and SCSI if possible.
128 Meg of RAM or more....
->on average under both NT and GNU/Linux I rarely use my CPU power, for a standalone workstation, but it is nice to know it is there...
now the issues....
-> memory.. get 128Meg or more.. it is worth it . it WILL speed up your system weather it is SMP or not, my friend has 32 Meg and I have 128 Meg and he noticed a difference in speed in just surfing the web on my machine.. Memory is on the system bus as opposed to the pci bus (pci is usually 33Mhz), if you have a 100 Mhz bus and 100Mhz memory you will see an increase in performance... if you can get enough memory, you may be able to set up some RAMDISKS and run your most used programs entirely from the RAMDISK, and that will be faster than ANYTHING on the PCI bus ANYTHING! (go with a cool Gig-o-RAM )
-> heat.. get standard fans and clean them occasionally...
-> motherboards.. good luck in finding an old socket 7 most of them are the new Super Socket 7... intel is the only chip maker that has SMP motherboards.. AMD and Cyrix CANNOT do SMP on the motherboards that are out there, they have a different SMP speck that is not supported by motherboard manufactures, (that is what an AMD rep told me when I inquired about it) so you must buy Intel chips to do SMP ( at least on the pc there is the spark or alpha option ) Intel's socket 7 chips don't use the 100 Mhz bus (so I am told) so you are stuck with a 66Mhz bus.. so get memeory lots of memory..
disk swapping slows performance and can be increably slow...
imho motherboard technology has not improved much since the vlb bus.. I think that they need to increase pci and agp bus speeds before CPU speeds get any faster.. this is the only way to see 'real' speed ups....
and on that note.. I am happy with my SMP machine and my next machine will also be SMP.. it screams..
Only 'flamers' flame!
Since we're being picky...
Actually, saying "the hoi polloi" is redundant, because "hoi polloi" means something like "the common people". Therefore, "the hoi polloi" means "the the common people".
Yes, that is my grammar pet peeve.
Yes, the . should be within the "", but I find it more readable otherwise.
Yes, this whole thread is fairly ridiculous.
Your right to not believe: Americans United for Separation of Church and
Irregardless is a synonym for regardless. The prefix "ir" is a form of the prefix "in" which sometimes is used to negate, but often used to intensify. Irregardless is a more intense form of the word regardless.- ---------------
------------------------------------
Jamin Philip Gray
jgray@writeme.com
http://students.cec.wustl.edu/~jpg2/
Celebrate the finer things in life
Irregardless is not only a word because of improper use. The prefix "in" is sometimes used as an intensifier. This is derived from a language called, LATIN. Ever heard of it? In that language, the prefix "in" is sometimes used to intensify the root word. In words that come from the Latin, "in" often becomes "il" before "l", "ir" before "r", and "im" before any labial.- ---------
This is not from some "bastardized" dictionary as you suggest. This is the rich heritage of English as a Romance language derived from Latin. Get a clue.
------------------------------------------
Jamin Philip Gray
jgray@writeme.com
http://students.cec.wustl.edu/~jpg2/
Celebrate the finer things in life
The "pervasive multithreading" basically means that the system APIs are written with a multithreaded model in mind, and often spawn background threads that are mostly transparent to the user of the class, but allow for more efficient usage of multiple CPUs nonetheless. The standard window class, for example, spawns two threads automatically, in addition to the user thread that instantiated the window object.
;)) can write multithreaded code without too much pain.
The system APIs also include a standardized threading and message-passing model which is very easy to use, which means that even mediocre programmers (like myself
Since most BeOS subsystems will use multithreading behind their APIs (whether the programmer asks for it or not), and since the multithreading capabilities are so well integrated and easy to use, it's very uncommon to find a BeOS program that isn't multithreaded. Hence, the multithreading is "pervasive".
I don't care if it's 90,000 hectares. That lake was not my doing.
3D can benefit from multiple CPUs--I used to use SGI's Performer on a quad-processor Onyx, and Performer is able to automatically split the rendering pipeline up so that each stage runs on its own CPU.
;^)
CPU #0 -> app process (simulation update)
CPU #1 -> cull process (bounding volumes)
CPU #2 -> draw process (pushing commands to 3D card)
CPU #3 -> dbase & collision processes (scenery paging and asynchronous collision detection)
Very cool, although I suspect there wouldn't be as much speedup on a PC, which doesn't have the musclebound memory bandwidth that the SGIs do. Well, maybe on the new SGI PC's it would... gotta get me one of those
I don't care if it's 90,000 hectares. That lake was not my doing.
uh. beavis. no.
unless my crack pipe was laced this morning,
im pretty sure bus speed refers to the speed
that information can flow accross the motherboard
to the RAM and whatnot. How the hell could you
upgrade that? resolder everything or what? i
think you may be mixing up overclocking and
bus speed.
side note on the comment above this one,
it is important to have a bus speed above the
pentium level bus speeds (he mentions that
it doesnt matter since the PII requires a
different socket so why bother with a dual MB
faster than the pentium mmx chips) because what
if you decided intel is shit,
which it is (in my ever so humble opionon),
and get AMD K7s for it.
-Z
Before you critise someone, try and walk a mile
in their shoes, that way when you critise them,
your a mile away
and have their shoes
I'm afraid. I'm afraid, Dave. Dave, my mind is going. I can feel it. I can feel it. My mind is going.
I'm sitting in front of a dual P2-350. It compiles Linux kernels about twice as fast w/ "make -j3" than with "make". Very nice!
I'm thinking about putting together a plain 'ole Pentium system for just mucking about. I might think about going dual Pentium. I think the 233's are only $98 or so.
If memory serves (which begs the question, why should it start now?), Apache is multi-process rather than multi-threaded. This is basically like saying that it can benefit from SMP, but not to as fine a degree as multi-threaded applications.
Unless you can get some kind of price break doing the SMP thing, or you're running lots of multithreaded applications, I wouldn't bother expending any serious effort to put together an SMP box.
Wrong.
Websters says that irregardless is a misuse of the word regardless and stems from combining the words irrespective and regardless.
So while the word is in the dictonary, the dictionary states that it is an incorrect usage of another word.
It really depends on your uses. I have a dual 233MMX and a pII 350. the dual 233 compiles 2.2.2 in 12ish minutes. the 350 in 6ish minutes.
:)
the only time i've really seen the dual system shine is on the rc5des client
these are home machines, so they are very low volume. max users on the dual 233 is usually around 5
bunicula
ouch. i tried that on a dual 233 (p5) w/ 128 megs of ram and it ate the machine resources right nicely. i didn't even get through the compile... i aborted it and went more conservative, j4 maybe.
bunicula
first off, id like to say, you will not get performace boosts from apps that are not coded for SMP (threaded), they will go the same (maybe a bit faster due to other processes being on a diffrent cpu) as if they were on a single cpu box. thus you could say that dual PII 233 would run slower then a PII 450.
.9, mpg123, mpegtv, xlib)
also, some programs are not very happy being run on a SMP box (ie : X11amp version
but, SMP has its merits. i have caught myself many times saying "damn i love SMP" while playing quake and compiling a new kernel, or encoding mp3s.
also, smp acts a floodgate for out of control processes, for a process on smp cannot steal all your cpu power, just on one of them.
so, if you are a gamer, get the UP PII 450. if you are a power user who does 50 things at once, id go with a SMP PII 233 or whatever, or you could get the SMP mainboard, and only 1 cpu, and get the second one later (dual 450s... *drool*)
ps. Q3a does not support SMP AFAIK at this time, john c played around with the graphics engine being threaded, and only got a !5% speed boost after some major tweeking, but i think i read he will play around with it some more later after the code becomes more stable
Just my
(I've been /.'d! my first post)
Apache would scale since it launches multiple incarnations of its process, seems to be the consensus, makes sense.
I'm confused by what highly parallelizable (sp) means exactly for a server like Sybase or Oracle on Linux? I would assume that Sybase and Oracle db servers take advantage of SMP under Linux (2.0.36/2.2.x), but how exactly?
We're looking at buying one of those nice VA Research 2U rack mount dual p2 350mhz processor servers, loading it up with 512mb of ram, and running something like Sybase and RealServer on it as the backend to a couple of Sun Ultra 5's being used as webservers.
What kind of performance can we expect? While "performance" is of course really relative, will Sybase or Oracle co-exist with something like RealServer nicely? Where are the performance bottlenecks going to be? We've considered a quad-port ethernet card so we can wire it directly to each of the two Ultra 5's for high machine-to-machine connectivity (keeps us from buying a switch as well).
Opinions? Anyone doing the same thing?
On a more recent system I use a large fan over the front of the drive bays to force air past the three hot running harddisks. The fan chosen is large enough that it reversed the air flow pattern in the case, except for the power supply which has it's own fan and still draws the right direction. The power supply was initially the only source of air movement in the case and it wasn't enough. I sized a fan to have about 4 times the flow the power supplie's fan had. Doing this, all the normal intakes became exhaust vents, and the case and harddisks stay cool now. All spots on the outside of the case are now cool. Opening up the case and touch testing spots, they are all cool or at most warm after hours of run time.
you can't right now with the current crop of k6's, but wait till they come out with the K7. It'll have it ready to go out of the box.
I do believe that the K7 is supposed to be released sometime this summer. =) can't wait.
IRREGARDLESS of your feeling about language, you must understand what language is. It is a constantly evolving creature. The dictionary serves to track and catalog our use of language, not to tell us how to use language. If many people start using a silly word, and it becomes accepted, it is added to the dictionary. If you don't like it, don't use it. You'll simply have to wait for it to fall out of the common usage, that, or derive your hapiness elsewhere.
-AF
-- -- I always wanted to be somebody, but I should have been more specific.
Unfortunately, unless I'm mistaken, gcc/make are NOT threaded, so it wont really take advantage of the other CPUs.
"To err is human, to forgive is simply not my policy." --root
"BogoMips" is actually short for "BogusMips".
You cannot compare BogoMips scores between different types of CPU. A Pentium-II will typically score as many Bogos as its MHz rating, a P2-333 will get ~333, a Dual P2-333 will get ~666. My K6-2 340 (overclocked K6-2 300 AFR-66)gets 683, this does not mean that it is faster than a Dual P2-333! It simply means that a K6-2 typically scores twice as many Bogos as its MHz rating. Its actual performance is more like a P2-340. Don't ever make the mistake of comparing BogoMips scores between different types of CPU.
Sorry to say this, but you are wrong!
Intel packaged the celeron so as to disable SMP in order to protect their mid-range PIIs, but they deliberately left the core as unchanged as possible to avoid validating the new design.
According to my dictionary irregardless is a word.
/. though. Where else is this pedantic mess such fodder!
"The ignorant form of regardless"
Gotta love
Sure you should go for an SMP machine, if you have applications that will use the hardware effectively--like Sybase, SQL server, Apache, etc...
technical whipping boy, Occam's Strop (think about it...)
It is a bad word, and don't use it. Stop talking about it. I'm starting to be sad, and cry.
I've been using a dual Pentium-133 system for a
few years now. At the time I built it, a P-200 was
the only way up and way too expensive, buying a
second P5-133 and a dual-cpu board was significantly cheaper, giving about the same performance (I roughly get a maximum 1.8 times speed increase.). The machine is mainly used for
compilations and for that it really speeds up things.
There's some psychology involved:
If you start a huge job on a single cpu machine, you can feel it slow down, while on a SMP machine you won't notice it, because you only use one cpu at a time interactively, the second cpu being busy or not is hardly noticeable. So, SMP feels faster, because it doesn't slow down - even when a single cpu system would give you more performance, but its performance varies more.
In a world without fences, who needs Gates?
I have a dual PII300 system with 256MB Ram running BeOS R4, this system just flies! Due to everything thats Be native is multi threaded, Be really takes advantage of having multiple cpus. Parrallelizable cacluations can be divided into as many threads as there are cpus (example: the awesome 3-D starchart app)
My personal experience with SMP linux was not so good, the performance boost wasn't as great as I would have thought and the systems were about as stable as Window$ (crashing 2 or 3 times a week) But this was 2.0, 2.1 so maybe the 2.2 kernels do a better job now.
I'm thinkin' there has to be a way to add the cache to the converter card. It doesn't look like the card itself has much on it as is.
I know that would hike up the cost, but even a small amount it would be worth it for some applications.
Any thoughts/links?
I was running on a dual Pentium Pro 200 (with the 512k cache chips), and was sold on scrapping it for a singular PII 450.
Guess what?
The dual Pro setup blew away my PII.
Everything ran significantly faster, I could FEEL THE DIFFERENCE. Also, there were no lags whatsoever. I could run mathematica while compiling a new kernel or OpenGL program, without noticeable lags.
And unfortunately I sold the entire old system to a customer, who is running Novell 4.11/SMP on it and would rather 86 me than ever switch out the machine. I recently priced those chips and they're still over $900 each. Explain that.
But, here's the glitch:
I also have built dual Pentium systems (not PPRO), and the chips don't seem to scale as well... Does anybody know why? Internal architecture, what?
Here's my advice:
If you want to SMP, do it with a real chip, or not at all. Buy 1 of the PII 450s, get a dual board, and run 1 processor until you can afford the second one.
Better yet, do it with a Xeon.
(and the whole thing is senseless without ultra wide scsi, I use the Seagate Cheetah, and it makes a major difference).
It's not going away. You're going to hear about it more and more as it starts getting adopted by more and more people.
Frankly, I'm sick of hearing about Linux. Like a CLI server OS is going to replace Windoze on Joe Blow's desktop. Puh-leeze! And yes I've heard about KDE and GNOME... big deal. They both have a long way to go.
BeOS is here to stay!
- - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - -
I run BeOS. The rules don't apply.
Any two procs with the same clock rating can be run in SMP. Only place stepping would make a bit of difference is if you were doing some overclocking voodoo in addition to SMP. Of course, stepping only has a little bit to do with overclocking. The real test is whether or not the moon was full the night it was produced, and whether or not the chicken's guts landed with a splat or a thud.
- - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - -
I run BeOS. The rules don't apply.
It's all in here!
I have a dual PPro 200 system. The biggest
problem is heat. I have added extra fans on
the system, and still have problems. The
Motherboard has a thermal cut off, which trips
after about 15 minutes, making the machine
almost useless.
K6-X's don't have the ablity to do dual processor mode, but K7's will impliment this feauture!!!!!!
I ate my tag line.
-=Ellis (D)25=-
Yes and no. If you are using an OS like NT i haven't seen it doing any better on a quad compared to dual. But if you have multithraded apps that are written well for SMP yes it's worth it. But otherwise it just increases the performance probably anywhere between 10% to 50%. But more around 30-35%.
Incase of Dual Pentium Vs Dual Petium Pro or P-2 you are better of with Pro or P-2 based on how much it will cost extra. Nowadays you can get a dual Pro with SCSI setup for less than 700 or 800$. The reason for Pro or P-2 being better is they have separate cache for each processor(sometimes same clock speed of the Processor & also the architecture is much better).
On classic petium you are sharing the same memory (512kb) and also on 66mhz bus. On Pro or P-2 depending on which you will have separate L2 cache anywhere from 256kb to 1MB or even on Xeon a whopping 2MB.
If you still want to go for Pentium for the price better of with TYAN 1564D. It's the best dual petium board(my dual 133 on this board runs more like a single P-2 266). A caution of advice never ever buy Gigabyte 586D. You need lot of cooling or even socket VRM's(PL Pro MMX) in my case to cool off or replace onboard VRM's if you are using MMX beyond 200mhz. If you decided to go Pro Intel PR440FX is the best board. For P-2 upto 333 it's Intel DK440LX. Beyond that you have many boards that would hold up.
Glad that i could help.
Yikes! 3Mkeys a sec. I thought I wasn't doing too bad at 980Kkeys. =) P-II's are much better at integer math than G3's though. I wonder what a dual G3 would perform like. Hmmm.
- Jase
Educated people would say "blah blah blah hoi polloi blah blah blah..." and sound absolutely stupid. Hoi is "the." Polloi is "many." However, when you move it to english (which is, by the way, a rude combination of norman, anglo-saxon, and any miscellaneous terms that someone decided they liked) the "the" is added. Now, in fitting with the way grammar works, and the way we have imported other phrases from Greek and Latin, you would say "the polloi" like you would say "the plebes."
God, a couple years of Greek and I'm screwed up for life.
Zagmar
Well I hope this wasn t from a resident of the British Isles -- the same people who give the English language the all time champ for non-standard English words, the word "ain't"
Is the frontside bus a bios issue, an architecture issue, chipset issue or a combination thereof?
I have an intel dual pII motherboard with a 440LX.
Intel's site has a bios patch is supposed to let the motherboard work with pc100 memory, but i wasn't sure if this would allow me to run the bus at 100Mhz...
>>Sig under construction
but is Merriam-Webster right?
NO!
---- Scrambler - Silicon@softhome.net
Ahem. Please do research before making claims such as this. :) Most of Linux's thread libraries use userland threads, not kernel-supported ones. However, the Linux kernel has kernel suppor for threads with the clone() system call and the Linuxthreads package takes advantage of this to provide kernel-supported threads. Userland threads can't be split across CPUs, but kernel-supported threads can. btw, threads still DO context-switch but at a lower cost of CPU cycles. Basic OS stuff, people!
I've been using SMP configs for awhile now and it's good enough that'll I'll never buy another intel/amd based machine unless it is SMP. I used dual 166Mhz Pentiums for awhile and it was nice. Just because applications aren't multi-threaded doesnt mean you dont gain an advantage. The kernel is going to balance processes that the CPU services, so even if you are running an app that is not multithreaded, if you have several other processes running in the background, the kernel will balance the load on the processors.
Anyway, back to my 166s...I used them for a good while and really liked them but then I upgraded to PIIs. I first bought a dual motherboard and 1 300Mhz PII CPU. The machine was undoubtedly faster than the dual 166 Pentium configuration, but I actually noticed the single PII was not as responsive. I havent been able to explain it to anyone, but it seemed to be less responsive and laggier, though it GIMP and Quake, etc ran faster. So amonth later I had the $$$ for the 2nd CPU, so I bought a 2nd and put it in and things were great again. The lagginess I was experiencing went away and I was happily running 2 CPUs again.
Sure, flame me, but I'm running dual PIIIs and its lightning fast. Hell, I don't even see things happen anymore, they just do. Thread start and end before you blink. If you can SMP, do it by all means.
PDG--"I don't like the Prozac, the Prozac likes me"
"Where is my mind?"
So much talk has gone into the dual PII side of things, but the original post was on the use of dual socket-7 boards. I haven't picked through every post (and from the looks of most -- nor do I care to) so if this is repeated, excuse me.
While I have heard of dual-socket-7 TX boards I know the TX chipset was not designed for SMP use so it has to be some wild hack. That leaves you with the 430HX (or worse 430NX) chipsets which WERE designed for SMP use. Now the downside of the HX is that you lose the UltraDMA HD interface (not a problem if you run SCSI which you probably do if you're considering SMP). You lose SDRAM (but still have EDO RAM). And finally you may have a problem with P55C (Pentium MMX) support due to core voltage issues. The HX was out before the P55C and therefore EARLY HX motherboards may not have had BIOS support for the 2.8V P55C core. I can't say for sure with these SMP socket-7 boards, I haven't used them, but the P54C (Pentium) had a 3.4V core. If these SMP socket-7 boards do not support 2.8V cores you'd be stuck with the P54C which only goes up to 166MHz (or is it 200?) and GOOD LUCK finding them.
While Pentium chips are cheap now days, dual socket-7 boards are not as cheap as you'd think. Given the problems above and the 66MHz bus of these boards, I honestly think a single Celeron 300A @450MHz, or if adventuresome, a dual Celeron 300A setup would be your best buy.
And by the way, people who say that programs have to be SMP-aware to take advantage of an SMP setup... you're wrong (unless you only run ONE program -- which is basically impossible unless you like just sitting in the shell doing nothing). Multiple programs will split across processors. Exactly how (under Linux) I'm not sure, but under NT you can hard-set processor affinity or let the OS do it.
Check http://wwwcsif.cs.ucdavis.edu/~wen/dual-cpu.html for info on all kinds of SMP socket-7 boards (dual and QUAD!)
Check http://www.taken.com.tw/ for a dual TX board -- but they no longer advertise this board so maybe you're out of luck here.
-Gary
http://www.computersurplusoutlet.com/ has quad Ppro rackmount NECs for $600 (no ram, cpus or drives)
If you want an SMP system... this would be the puppy to go with... (They also sell PPro CPUS)
-
BlackNova Traders
I heard Q3A was going to support smp. I'm not sure
if that will affect the performance - if the
accellerator card is the real bottleneck... I
think that tidbit helped convince me to buy a dual
celeron setup...
d
...
How do you cool the celerons with those big MSI
adapters in there? Are there supercoolers for ppga
or are they all bs? Do the retail fans work ok? I
would like to oc the celerons, but I need to keep
them cool enough, and I don't know if the retails
will take care of that...
d
...