AMD Quad Cores, Oh My
Lullabye_Muse writes "From engadget we learn that AMD has plans for putting 4 cores on one die by the time Apple has fully gone to Intel processors. Full story here. They say they could eventually have up to 32 cores with scalable technology, but most programs haven't even got the ability to hyperthread, so do we really need the extra cores?"
You must be new here.
What does a developer have to do to take advantage of this? When will compilers, or are there, compilers written that will automatically take full advantage of multi-core proccessors?
Of cores we do!
Now that Intel is running with Apple, Intel must be Doomed (tm).
4 cores on one chip... I guess they will have to call it the earth simulator as the temprature of the chip will be reaching that of the earths core.
At least it will open up innovative new designs like built in coffee pot as well as new uses for old technology, like making pizza pops in your old cd burner.
flinging poop since 1969
Hyperthread(ing) is a term for a CPU that has two sets of states but one execution unit.. shouldn't the article use the phrase multithread?
Anything to go faster for Gentoo's sake, the better! Anything to make compiles go fast!
--
# Canmephians for a better Linux Kernel
$Stalag99{"URL"}="http://stalag99.net";
but most programs haven't even got the ability to hyperthread, so do we really need the extra cores?
Once upon a time, most programs didn't have the ability to do IEEE754 floating point either so did we really need the FPUs?
Once upon a time, most programs didn't have the ability to do 3D graphics at 30fps. Do we really need dedicated high performance graphics cards?
The list goes on... but no one learns...
Only a few programs can use multiple processors/cores (CAD, Animation, Scientific). But just unloading some of the OS processes onto other cores leaves more power for each standard programs. (Limewire + Firefox + Xvid compression)
See MIT Technology review article: http://www.technologyreview.com/articles/05/07/iss ue/feature_intel.asp
The silicon laser, being made from the same material as the rest of the chip, would replace the copper wires that need to connect cores, thus letting Intel 'keep Moore's Law alive for decades', the article says. It would do this by permitting many, many cores in fast communication with less heat and less energy required than current copper-wired chips.
Question: will Intel's possession of si-lasers shut AMD out?
1.21 Jigawatts!
Who still uses one application at a time, really? I know there's less benefit when it's different applications because of register sharing, but if it's cheaper to get 4 cores than 2 cpus it's probably worth it.
I am trolling
What we have here is a failure to communicate.
It is relatively easy to add multiple cores (copy and paste in your IC layout program) but I wonder if this is just another manifestation of that "megahertz myth" (multicore myth?). Adding bunches of cores is fune and dandy but you have to keep those cores fed with a wide and fast bus.
The largest chip packages currently available have fewer than 2000 pins (and I don't expect that to scale as quickly as the number of cores grow) and you can only cram so many DDR/Rambus channels before you run out of I/Os. Perhaps it is time to revisit optical interconnect or chip scale packaging?
one would need either a ton more ram or faster I/O for the HDD than is standard tosday or even in the near future. the bottleneck is non volatile storage throughput, fix that and even todays systems could be much faster than they are with SATA/scsi/ata100/133
AMD semiconductor manufacturer petitioneed the NRC for a rule change to allow small home use nuclear reactors, saying in the application "consumers will need it".
Also, they announced the acquisition of the frigidaire refrigeration company for an undisclosed amount, saying that "our product lines have a mutual synergy".
Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
Cache may well be reaching the point of diminishing returns. I seem to recall reviewers' benchmarks of 1MB vs. 2MB showing almost no gain, although I'm sure Intel has a set of benchmarks showing massive improvements.
Alienware had one. Let me see if I can find it... I guess they do not have it anymore... but they do have P4 with Hyperthreading, and RAID 0 or 1... all in a laptop:
a -51m_7700/area-51m_7700_features_tec.aspx?SysCode= PC-LT-AREA51-M-7700&SubCode=SKU-DEFAULT#sub
http://www.alienware.com/product_detail_pages/Are
Politics, Life, and More on my Aspiring for the Future
The word "Hyperthreading" describes a specific hardware kludge by Intel to make a single-core CPU pretend it's dual-cored. Apps that utilize multiple CPUUs are called multithreaded. All you dorks parroting the article submitter and calling it "hyperthreading" are idiots.
If a job's not worth doing, it's not worth doing right.
Perhaps a nice job scheduler would be nice. Perhaps, if one of the cores ran at 4x or in a very low latency mode and the other ones ran at 0.5x, the critical very interrupt-driven tasks could live on the fast core, and other tasks (like Word, Excel, etc.) could be scheduled on the other core(s). That way, even if a user app locked up on one of the non-critical cores, the rest of the system stays up and accessible.
I'd even take a multi-core 1GHz chip (with only a passive heatsink on it...) vs a 3.x GHz with its gas-powered 150K RPM turbine blower on it to keep enough air blowing over it.
Oh, wait. I already have a dual-processor (2x833 MHz P3) server, and it's quite a bit more responsive than my single-CPU workstation. SCSI of course has something to do with that as well.
...have a look at these slides of a technology presentation given last friday http://epscontest.com/presentations/05q2_analyst-d ay.htm?slide=1&a
Impressive. If they execute on all that, Intel will have to keep on playing catch up for the forseeable future.
Yes, Virginia, we can use mutli-core. I mean, we're all into SMP heavily in the non-desktop role (does anyone actually make a "server" that doesn't have SMP?)
There are two big things I love about the multi-core Opterons: They draw less power than equivalent SMP machines (acutally, quite a bit less), and they allow multiple "CPUs" to use the same memory controller. Nominally, the second isn't a big win, but it can be for practical purposes.
Opterons have dedicated memory channels on them, so a current dual-socket Opteron has two DISTINCT DIMM banks - that is, on a motherboard with 8 DIMM sockets, 4 are allocated to each CPU socket. So if you have only one CPU, you can only use 4 DIMM sockets. Since those 4 sockets are often configured as a single bank (i.e. they all have to be filled to work), you can't add another CPU to the system without buying more RAM. This is wasteful. But with a multi-core opteron, all on-chip cores share the same memory bank.
The jist of this is that it'll be easier to have High-Compute, lower RAM configurations than it currently is reasonable to do. There are a lot of tasks out there which it is really nice to have a modest amount of RAM (say 4GB), but with huge crunch. Currently, it's hard to buy a config to do that, since you generally either end up way over-paying for CPUs, a huge number of tiny DIMM chips (which sucks for future expansion), or a larger number of motherboards, which draws more power.
And, hey, they're not tooo bad in price. Sun's dual-core v40z is less than twice as expensive as their single-core v40z, and you save lots on power/cooling/space.
Overall, a nice win.
-Erik
There are always four sides to every story: your side, their side, the truth, and what really happened.
Thats why I still run BeOS with a complete lack of application support! Every app is fully threaded... so might as well run fewer of them!
"Martha Stewart can lick my Scrotum......do i have a scrotum?" -- Sharon Osbourne
Then you'll want to look into YAWS.
Basically, a web server written in Erlang, which supports lightweight processes and high concurrency. In other words, each connection is a completely separate process and shares no information with other processes except by message passing.
Also, a recent paper from the primary designer of Erlang, Joe Armstrong.
The key points are that Erlang process creation and message passing are orders of magnitude faster than Java/C# threads. Also, YAWS could handle dedicated traffic from a 16 machines. It handled over 80,000 connections, maintaining 800 kB/s traffic. Apache died around 4,000 connections. The key graphic is on page 4 of the paper. The red lines denote YAWS; notice haw it maintains that bandwidth (even though particular connections may drop, the web server keeps chugging along). Threaded Apache is in green; process-forking Apache is in blue.
I always get the shakes before a drop.
He shows demos and explains several driving forces:
An example of video analysis is demonstrated. You can get a stable image out of a cell phone, and get a much higher resolution to boot, simply by analyzing lots of images in sequence. Right now, it takes a lot of time to crank out the analysis. But the problem is parallelizable, and Intel thinks we'll have this sort of things in cell phones by 2015.
This is also the technology behind automatic construction of 3D from images. This is where you pull your cell phone out, walk around, waving it around the room, and get back a 3D model of the room.
People ask: "Do we really need all this computing power?" Yes, yes we do. There's plenty of stuff to do with it.
Scott talks about sitting in front of the computer, and not needing to log in, because the computer knows who you are by your face.
There's all kinds of stuff to do with it.
That said, most users run word processors, web browers, and other simple productivity software that doesn't even fully exploit the old P2s we were running a few years ago. But if you want to run the latest graphic-intensive games, you better have the lastest hardware.
but most programs haven't even got the ability to hyperthread
How does a program "hyperthread"? Did you mean "thread"? but decide to use the former because it sounds cooler? Hyperthreading doesn't result any concurrent processing, it's a hardware scheme in with the processor's archictectural state is replicated in order to speed up context switching between threads. That's very different from replicating the whole CPU core.
SMP or multiple cores is (obviously) more than one real processor and one will see huge benefits with any application that is multithreaded as well as when running multiple processes. Single threaded processes should never have issues running on an SMP system, though there will be a small loss of speed due to the overhead of SMP (Dual 2 Ghz processors will probably run a single threaded process ~1% slower than a single 2 Ghz processor).
Game! - Where the stick is mightier than the sword!
This statement makes no sense. And, besides:
zcat foo.gz | bzip2 -c > foo.bz2
Look, ma! Code that will run twice as fast on a multiprocessor system!
You're clearly 15 bits too long.
Until recently it was thought the long pipelines were at fault. But the boys at X-bit labs took a closer look at Intel patents and did some detailed performance measurements.
Turns out that it goes further. The long P4 pipes require "replay buffers" to reissue instructions with unresolved dependencies. These buffers more often than not end up causing further performance losses and power dissipation in case of common patterns of instruction dependency.
See http://www.xbitlabs.com/articles/cpu/display/replMultiple CPU x86 boxes have been available for a long time -- I recall seeing Sequent boxes with lots of 386 cpus, for example. I'm typing this on a dual p3 700 right now ...
The vast majority of server applications will benefit from multiple cpus right now, as long as the box isn't already disk bound.
As for desktop boxes, two or more cpus means you can do two or more things at full speed. One application may not run faster with two cpus unless it's written to support it, but two seperate applications certainly will.
As for games, games could certainly benefit from multiple cpus. Now, most may not seperate different things into different threads that can run in different cpus, but this will change rather quickly if desktop boxes start regularly having more than one cpu ...
Part of what was neat about the BeBox was that they offered two cpus. They couldn't make the cpus faster, so they just gave you two of them ...
But don't try to tell us it's a waste of time. It most certainly isn't. And we don't need any need to materialize, or special software to be written -- we can use multi-cpu machines NOW.
Try 9 cores. Yes, its a Cell. And yes the SPE's _are_ general purpose cores - read some more if youd like: http://www.research.scea.com/research/html/CellGDC 05/index.html
0 525/105050/
The last part about programming architecture.. is interesting reading. From job queuing.. to micro kernels to streaming.. multi-cores are are a very good way to do things. And on Cell.. they are all seperate cores.. And for a server with 14 of these in one box.. coming soon..
http://techon.nikkeibp.co.jp/english/NEWS_EN/2005
Its pretty obvious why Intel and AMD are going multicore.. because it works.. and they have to catch up before they are lost in the dust.
Well, the answer to that is obvious. We need terabit optic fibre to all houses in the US, immediately. This will cure all communications problems - or, at least, all communications problems involving Quake VI.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
The logic that says the scarcity of hyperthreading programs means that multicore dies don't benefit from lots of cores is wrong. Once in the hyperthreading game, more cores is better. So few hyperthreading programs might mean less reason for multicores, but once there is a reason, the more cores the better. It's like saying that most people don't drive, so there's no need for really fast cars. That kind of fuzzy illogic is completely common in the media. On Slashdot, where we'd like to think we can think, it's really irritating.
--
make install -not war
So spywear authors should write better code so their programs don't tie up the processor? :)
My guess is that most current spywear is not multithreaded due to universiality and size contraints, but as you state, we can soon look forward to better quality, bug free, multithreaded spyware soon.
Perhaps Microsoft should hire some of these guys. Anyone who can write code that allows hundreds of instances of a program run without swamping the processor is a better programmer than the current crop that is designing Office, for example.
Tequila: It's not just for breakfast anymore!
i think you mean to say "no one will ever need more than 640 thousand cores"
Science : Proprietary , Knowledge : Open Source
Dual mice buttons?
Second, most spyware is well written. Badly written spyware is ineffective -- by screwing up your system, it calls attention to itself, and encourages you to run a scan. Spyware and adware wouldn't have spread so thoroughly if it were all written by hacks.
When he said nice he didn't mean nice(1).
Taken from elsewhere: "If we build it, they will come..."
Consider this:
Imagine a PC where there is only the hypervisor directly accessing the hardware (and please, NOT one that also loads Outlook Express, IE7, WSH and Media Player). Now imagine all of your operating systems running on top of the hypervisor. All hardware is virtualized for these operating systems, right? So, your physical video card no longer needs a 3-d engine; in fact it doesn't need much more than a 2-d chip and enough memory to show all the pretty colors at whatever resolution is popular. Why, you ask? Because the 3-d rendering will be done by the *virtualized* 3-d card(s) in each virtual machine, and THAT, my friend, will take as many CPU cores on the host machine as you are able to give it. And, since virtual GPU's don't require foundries, it just might mean an Open Source video card. The key is to ensure that the vitualized "hardware" is modular enough to be replaceable.
It's the next step in the ongoing cycle between having the CPU do everything and offloading to specialized chips or subsystems. By virtualizing all of the "offloading" chips such as the GPU, 3-d wavetable synth, some networking functions, etc., the pendulum swings back toward centralizing all of the processing.
When I run PS, I see 1 program running: PS. bash, my shell, is blocked because ps has control of the terminal.
If I turn around and run top, I see that, indeed, the main program running is top. All the rest are usually sleeping on some event. Unless that event occurs, they won't be woken up. The speed with which Linux can react to my keypresses, read the key presses, send those keypresses into a user-land safe buffer, wake up the userland program waiting on it (in this case, Mozilla), and then schedule X to run and let it update the screen to display the characters I just typed (which Mozilla also copies to its own local buffer) happens so fast as to not even register as 1 10th of 1 percent on my AMD64 3000+.
Seriously, no one needs a fucking 32-way CPU, not unless they are doing some massively parallel scientific work, or they are emulating many virtual computers at once. To deal with blocking IO that can't be slept, then multiple cores look sexy, but not really past 4 cores -- most applications are single threaded. Perhaps this would be different if we were running BeOS.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
Tell that to the folk whose machines have been made completely unstable by filthware.
The type of programers you can get to write code that is utterly unwanted and corrupt tend to apply the same work ethic towards their employers. Getting a good programmer is difficult enough for honest companies.
Most of the spyware I have looked at has serious security issues, some of these may even be deliberate, a way of creating a deniable backdoor.
The spyware attempts to make itself uninstallable. Often the programers use O/S facilities that they do not understand properly to do so.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/