AMD Fusion To Add To x86 ISA 270
Giants2.0 writes "Ars Technica has a brief article detailing some of the prospects of AMD's attempt to fuse the CPU and GPU, including the fact that AMD's Fusion will modify the x86 ISA. From the article, 'To support CPU/GPU integration at either level of complexity (i.e. the modular core level or something deeper), AMD has already stated that they'll need to add a graphics-specific extension to the x86 ISA. Indeed, a future GPU-oriented ISA extension may form part of the reason for the company's recently announced "close to metal"TM (CTM) initiative.'"
Am I the only one? (Score:5, Insightful)
Re:Am I the only one? (Score:5, Informative)
Re:Am I the only one? (Score:5, Interesting)
What I'd like to see is for AMD to put the CPU and GPU on separate chips, but make them pin-compatible and attach them both to the hypertransport bus. How cool would it be to have a 4-socket motherboard where you could plug in 4 CPUs, 4 GPUs*, or anything in between?
*Obviously if it were all GPUs it wouldn't be a general-purpose PC, but it would make one hell of a DSP or cluster node!
I like your solution (Score:3, Interesting)
Intel Core Duo CPU [tomshardware.com]
ATI X1800 GPU [legitreviews.com]
BUT, you'd also have to squeeze all the other microchips that are on a high-end graphics card board... I don't know if you'd be able to squish all that into a CPU sized area. And if you can't, you're just changing the form factor & moving the graphics card onto a faster bus.
Anyone have a better idea how you can put quality graphics into a CPU?
Re:I like your solution (Score:5, Insightful)
Without knowing anything about it, it would seem that if CPU+GPU in the same package is possible, then CPU + GPU in two separate CPU sized packages would be possible.
Re: (Score:3, Interesting)
Just look at the memory speed of your average CPU (667MHz DDR2) and your average GPU (1GHz DDR3 is good).
Now, hooking your GPU up to the main system memory takes away a huge chunk of your performance. Saves you a lot of money though. If you're not sure, go look at how overclocking video memory aff
Re: (Score:3, Interesting)
A couple of questions for you to consider:
Also, keep in mind that we're talking about a technology in the early stages of development. The current performance of off-the-shelf hardware is irrelevant; the issue is whether the basic technology has the potential to be made to do it.
Re:Am I the only one? (Score:5, Insightful)
Hmm... you might be right. But an equally important aspect is that I want a socketed GPU and graphics memory, so that it would be modular just like the CPU and system memory.
You're thinking too small. Modern GPUs don't just do graphics; they are becoming able to do just about any kind of very-parallel computations.
For example, imagine a server of some kind that processes every packet it sends in the same way. Let's say it has 1000 connections, and that each one is handled by a separate thread. Now, imagine that the thread can somehow be implemented as a shader. Then, instead of processing 1 or 2 packets at a time (as on a single- or dual-core CPU), you can suddenly process (tens? hundreds?) of packets simultaneously! Even if the thing is clocked lower than a CPU, I'll betcha it'll still have better overall performance -- assuming you can make it work.
Personally, I think there are quite a few problems like this, that could be parallel even though they aren't usually implemented that way now. I think it's a matter of how most programmers are used to traditional CPUs, and so don't think in a parallel way. I'm actually banking on this becoming a big deal in the future, which is why I'm taking a bunch of graphics, systems and HPC classes (I'm a CS student). And it had better do so, because otherwise computers are going to stop getting faster -- the whole reason everybody's so focused on multi core systems now is that they've hit a wall wrt. the laws of physics.
Re: (Score:3, Insightful)
Re:Am I the only one? (Score:5, Informative)
Re:Am I the only one? (Score:5, Insightful)
It's almost like they would add L3 in a non-transparent manner, that is, expecting the developers to write the code moving suitable data into the cache and addressing that data in a radically different manner, while still also supporting the normal style of memory access, where you of course need to care about the cache, but not so explicitly. (The Cell's explicit local RAM for each unit, and the whole design of that beast, comes to mind. At least ALL PS3s will have one, but the expected target market for Fusion-only adaptations is much less clear cut.)
And, yeah, this is quite like the situation almost ten years ago, when 3D cards were hot and new. Writing a pipeline to feed those cards was quite different from rolling your own hacked-up software rendered. (And with T&L and shaders, the move has been even greater.)
But maybe then I'm just speculating a bit too much here. It would make sense that AMD is designing these instructions to fit into the existing driver model (or at least the DX10 one), so that you can get pretty good performance by just doing the relevant translation there.
Re: (Score:3, Insightful)
Shouldn't this kind of thing be the compiler or library writers' problem, not the application developers'?
Re:Am I the only one? (Score:4, Insightful)
Re: (Score:2, Insightful)
I don't think so. The application can be linked against a single graphics library. The GL just swaps some function pointers when special hardware is available.
Forget OpenGL/Direct3D... (Score:3, Informative)
That'd be right for the older games or the older hardware.
It'd not be right for the new hardware or the new games...
The new GPUs use programmable vertex and fragment shaders and the fixed functionality paths go
through an emulation of those paths in GLSL or HLSL. There's not much left that
isn't merely a simplified computer like a DSP is for signal processing- this is merely one that
is designed for graphics and sim
Re: (Score:2)
Re: (Score:2)
So a "laptop chip" is not always a distinct design. Even in the Intel world with the 479-pin Core 2 Duo mobiles and 775-pin desktops they're likely very similar internally (onc
Re:Am I the only one? (Score:5, Informative)
Re: (Score:3, Insightful)
Re: (Score:2, Interesting)
integrated into the 486DX...
Re: (Score:3, Insightful)
Look at it this way: nowadays you can get a computer with a video "card" onboard the motherboard, but nothing prevents you from disabling it and installing a separate video card. Most likely, that's what's gon
Re: (Score:2)
I don't want to pay $500 premium on my CPU for something that will be outdated in 6 months. I mean, I can sell off my old high end video card in 6 months and buy th
In short: (Score:2)
Re: (Score:2)
Unless you get two sockets, so two GPUs and two CPUs. Some bizarre new AMD crossfire monster. But the memory throughput would still be weaker than using PCIe cards. 4x4 would be better performance.
Slightly off topic - has anyone noticed that the Vista EULA only allows two CPUs? What does this mean for Intel and AMD quad cores? Everyone has to
Re: (Score:2)
Re:Am I the only one? (Score:5, Informative)
They're also eliminating all of the components between the CPU core and the GPU. In theory they could have a HT chip that handled all of the I/O and didn't even present a traditional system bus, if they felt they didn't need expansion slots. Thus you could eliminate the PCI/PCI-E bus and all the things needed to support it; at minimum however you are eliminating the bus between the North Bridge and the GPU and all that entails... which is a lot.
Not aimed at you.. (Score:2)
Either I change video cards more often than CPU's or CPU's more than graphics cards, but in either case I seldom want to upgrade both at the same time.
I'm really guessing that anyone looking for high-performance 3d acceleration isn't going to be the target for this product. Video cards get a lot of high-performance by using insanely fast memory. My guess is this design would use the system memory just like integrated graphics controllers do now.
I'll venture that this GPU/CPU integration is really aimed at
Might be aimed for you - eventually. (Score:2)
There's also been some speculation that GPUs will go multi-core / multi-socket because their architectures are inherently more amenable to that and also because the current crop of ~700M transistor GPUs are friggin expens
Re: (Score:2)
The integrated processor would be good for any other parallel computations you happen to want to do, though, such as physics.
That depends on how it's done. (Score:2)
Re: (Score:2)
Most GPUs only operat
Re: (Score:2)
People said the same thing about memory controllers, FPU's, on-motherboard audio etc. Nowadays, nobody would go out of their way to get a special chip without an FPU. It simply wouldn't be cheaper to avoid g
Re: (Score:3, Informative)
Re:Am I the only one? (Score:5, Insightful)
- With a public and standard ISA, you will have Linux-compatible drivers shortly
- With a public and standard ISA, people will have a single standard to code against. Library support should be excellent.
- While your über-FPUs/vector accelerators/stream processors (what GPUs are made of) are not GPU-ing something, they can accelerate SSL, physics processing and any other vector-friendly activity you may have. Playing Flash content, maybe.
- GPUs are memory-hungry. The added memory bandwidth will benefit all software, not only graphics-intensive stuff.
- There is nothing that precludes you from using a stand-alone GPU, provided you have the drivers. But your CPU will have a couple high performance units that can give it a hand. Think asymmetric SLI.
We will see how well the idea performs by watching the Cell processor (a CPU with 8 "GPU"s attached) in the PS3. That's roughly the same idea.
In the meantime, I bet it will work just fine.
Re: (Score:3, Insightful)
This march is littered with those standing by the wayside saying things like, "Who needs floating point in the CPU? Leave it on a seperate chip!" or "I want to be able to upgrade my CPU without buying a new memory controller!" or "If you integrate sound
Re: (Score:2)
See, the big trend for high-performance video nowadays is SLI, which involves sticking a bunch of identical video cards in a computer and connecting them with a bridge. How much more work would be necessary to have that backup gpu support your main card?
it's not just you (Score:2)
I am more concerned with being able to select the best CPU/GPU combo, and not being stuck with a great CPU and lousy video card or vice versa. And by "lousy video card", I don't really mean poor performance so much as a lack of decent drivers. This is something that can change after buying the hardware; under Linux, the quality of the Nvidia drivers (which I currently hold my nose and use; last time I tried to use an ATI driver, they hadn't yet ported it to the version of X.org that I wanted to use) varie
Re: (Score:2)
Re: (Score:3, Insightful)
Yeah that's the future (Score:4, Funny)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
-matthew
Re: (Score:2)
Re: (Score:2)
Yes, ISA means Instruction Set Architecture. It also means Industry Standard Architecture, in reference to the s--l--o--w 8- and 16-bit bus in the early 8088 and 286 PCs, which was used for quite a long time to connect to video cards until it was replaced by faster buses such as MCA, EISA, VLB, and finally PCI.
This is what's known as a joke.
Re: (Score:2)
For future reference, a good joke would subtly poke fun at the situation or some fundamental truism or commonality among people, not just point out that the word does, in fact, have two different meanings.
Re: (Score:2)
10 zillion frames per second, but only 4 colours. Oh my eyes!!!
How long until a physics extension? (Score:5, Insightful)
x86 is a great multi-purpose, but the reason we're seeing greater and greater offload onto a GPU is because that's great at a specific task. So my question is, how long until we see widespread PPU (Physics processing unit) usage, and beyond that, a Physics extension to the x86 ISA? Or will we all just be computing on the grid at that point?
Re: (Score:3, Insightful)
Never, since it looks like physics can efficiently run on GPUs now.
Re: (Score:2)
One unanswered question? (Score:2, Interesting)
Can it run Linux? OK JUST KIDDING!
No, the real hting lingering in mind is: Why? If I want to upgrade the GPU, now I have an additional cost because I have to upgrade the CPU as well and vice/versa. So, from economical perspective, is this the best way to go?
Re: (Score:2, Insightful)
Re:One unanswered question? (Score:5, Insightful)
Why joke? It is an important question.
All the current nvidia and ati graphics cards require proprietary, closed-source drivers.
If the GPU is to be integrated into the CPU, either they will have to keep the new ISA a secret or we will finally start getting access to the information required to really write Free graphics drivers.
Re: (Score:2)
Advantages? (Score:3, Insightful)
people are forgetting that they are not always the target market for computers (this isnt aimed at you if you upgrade one more than the other)
for example, what is easyer for your computer illiterate father to do, change one slot component, or install a graphics card , and a cpu.
it also allows for even smaller form computers
i will concede, that these gains are pretty small though, i cant see it being worth it
Re: (Score:3, Interesting)
Until this was posted, I couldn't figure out the "why" to this problem. The "why" is indeed, pre-built home systems.
Think about your average Joe that doesn't know a USB from USPS. He's not going to concern himself with more statistics than he has to when it comes to buying a computer. If he can get his CPU and his graphics rolled into one component at a lower cost than having them separate, he will without a thought. It doesn'
Re: (Score:2)
Imagine getting a nice, soft edged, menu effect enabled interface on your dvd player instead of the |> || |>|> symbols flashing every time we push a button?
Showing my age (Score:5, Funny)
Re:Showing my age (Score:5, Funny)
Re: (Score:2)
Another reason to switch to XTLA (extended three letter acronyms).
Nah, expanded TLAs are far more flexible. They allow you to have more than one expansion at the same time from different manufacturers and don't require you to upgrade to a new version of English to use them...
Hm, an ISA extension for 3D graphics... (Score:2, Funny)
What happened... (Score:4, Insightful)
No, lets create 1000 more instructions for graphics, 1000 for physics and 1000 more just for the heck of it.
Re: (Score:2)
Re: (Score:3, Informative)
We decided we wanted cheap, fast hardware, and we decided the philosophy made more sense at the software level.
Re: (Score:2)
> We decided we wanted cheap, fast hardware, and we decided the philosophy made more sense at the software level.
Uh... More likely you folks have decided you want to run DOS and Windows.
Since both were (are) locked to the x86 ISA, it gave this decrepit architecture a reason to live.
Re: (Score:3, Informative)
Re: (Score:2)
I agree.
If Volkswagen had a massive consumer base to justify producing an old-style Beetle model capable of reaching 400km/h, you bet they would so.
But you see, despiste such an interesting market for x86 processors, how many companies are able to invest massive amounts of money in order to make a x86 speedy processor?
Compare this to the development money spent in UltraSparc T1. Geez, I bet those chinese guys spent a ni
Re: (Score:2)
Suddenly I want one of those...
Re: (Score:3, Interesting)
Personally, I have no particular ties to x86 or DOS or Windows. I wrote my previous post from an Ubuntu box, and I am writing this one from a PPC box. But, all that "decrepitness" that makes x86 unclean is actually pretty damned useful. The wacky instruction encoding is horrible to look at, but also means that you generally see better co
Re: (Score:2)
It's a bit more complicated than that. The x86 at its very core is RISC: it converts all the CISC instructions into RISC like micro-instructions.
But then, I read somewhere that Intel is now starting to do the opposite again with its "Wide Dynamic Execution": it combines several micro-instructions into one macro-instruction and also combines CISC instructions into even bigger ones.
it died back in the 90's (Score:3, Insightful)
Re: (Score:3, Insightful)
You are just plain wrong on many counts.
RISC outsells CISC my a massive margin. Just look at the presence of PowerPC, MIPS and (the biggest of all) ARM in the embedde
Re: (Score:2)
Which would you prefer, a super-powerful CPU that does all the graphics and physics, but operates at 20 GHz and consumes 3000 watts, or a low-power system with separate CPU, GPU, and PPU (even
Re: (Score:2)
Re:What happened... (Score:4, Insightful)
The article is discussing what the programmer sees, i.e. the instruction set architecture.
Will Intel play ball? (Score:2)
Re: (Score:2)
Nuclear power (Score:3, Funny)
Every time I see an article about AMD's "Fusion", I think
"Everyone knows that the power consumption of modern cpu's has gotten out of hand. Still, you gotta give AMD credit for having the guts to propose the obvious solution: An on chip fusion reactor"
CTM? Eh? (Score:2)
What kind of initiative is that?
Doesn't this imply open source compatibility? (Score:3, Interesting)
Re: (Score:2)
A super-FPU (Score:4, Informative)
So what AMD is adding to x86-64 is probably not just a GPU, but a new powerful general purpose massively parallel FPU.
Re: (Score:2)
Re:A super-FPU (Score:4, Informative)
The Cycle Continues (Score:2)
When I programmed PC graphics cards, they were basically dumb devices, just converting whatever was in memory to the signals needed to drive the monitor. The CPU did all the drawing work.
Then came the 2D accelerators, and later the 3D accelerators. The CPU sent them instructions about what to draw, and they did the drawing.
Now, we're seeing a move back to putting graphics inside the CPU.
The reason we're seeing these waves is, of course, that
Why call it a GPU? (Score:2)
The only point I can see in doing this is for more general use of the GPU than just rendering graphics. Graphics pipelines are pretty damn serial and the latency caused by putting the GPU on the north bridge is what, microseconds? Less? I don't see how this makes even the smallest difference in gameplay.
However, if you're using the GPU for something else like massive DFTs or physics simulations or any of the other cool stuff people are coming up with these days, where memory access patterns are more rando
AMD's Fusion (Score:4, Funny)
Fusion and CUDA lead the way. (Score:4, Interesting)
The initial approach I suspect from the Fusion effort will basically be an R600-based, entry-level GPU tacked onto the CPU die. I'd imagine that this would have 4-8 quads (GPU 4-wide SIMD functional unit) as standard. This would mostly be targetted at the IGP market for laptops and small and/or cheap desktops. Its likely that CTM will enable this additional horsepower to be used for general clculations, but its primary purpose will be to replace other IGP solutions.
A little further out I see the new functional units being woven into the fabric of the CPU itself. This model likens closely to having many 128-bit-wide extended SSE units, likely to have automatic scheduling of SIMD tasks (eg - tell the CPU to multiply 2 large float arrays and the CPU balances the workload across the functional units automatically.) A software driver will be able to utilize these units as a GPU, but the focus is now much more on computation. It functions as a GPU for low-end users, and suppliments high-end users and gamers with discreete video cards by taking on additional calculations such as physics. Physics will benefit being on the system bus (even though PCIe x16 is relatively fast) because the latancy will be lower, and because the structures typically used to perform physics calculations reside in system memory.
Even further out I see computers very much becoming small grid computers unto themselves, though software will take a long time to catch up to what the hardware will be capable of. I see nVidea's CUDA initiative as the first step in this direction - Provide a "sea of processors" view to the machine and allow tight integration into standard code withought placing the burden of balancing the workload onto the programmer (which nVidea's CUDA C compiler attempts to do.) nVidea's G80 architecture goes one further by migrating away from the vector-based architecture in favor of a scalar one - rather than 32 4-wide vector ALUs, they provide 128 scalar ALUs. Threading takes care of translating those n-wide calls into n seperate scalar calls. Most scientific code does not lend itself well to the vector model, though over the years it has been shoe-horned into vector-centric algorithms because it was neccesary to get addequate performance. Even graphics shaders are becoming less and less vector-centric, as nVidea research shows, because many effects (or portions there-of) are better suited to scalar code.
Eventually, I think this model will grow such that the CPU will be replaced by, to coin a phrase, something called a CCU (Central Coordination Unit) who's only real responibility is to route instructions to the correct execution units. Execution units will vary by type and number from system to system depending on what chips/boards you've plugged into your CCU expansion bus. The CCU will accept both scalar and broad-stroke (vector) instructions such as "multiply the elements of this array by that array and store the results in this other array" which will be broken down into individual elements and assigned to available execution units.
All of this IMHO of course.
Is the real goal just bundling? (Score:4, Interesting)
Trying to bundle products is nothing new. A company that makes a whole package doesn't like it when parts of the package can be bought from other companies. Instead of just competing for the whole package (and the few companies who can provide that), they need to compete for each individual part, and every company that can make any one of those parts. If AMD puts the GPU in the CPU, then it's pretty hard for nvidia get OEM's to include their GPU. Nvidia will have to build a CPU that's as good as AMD's, and that's not going to happen any time soon.
Re: (Score:3, Insightful)
Sure folks would still be able to use libraries that run on the CPU, but if those are inefficient/slow compared to the specialized instructions... then who knows.
Just being paranoid...
nforce? anyone? (Score:2, Funny)
Aren't we forgetting something? (Score:3, Interesting)
Re:ISA? (Score:5, Informative)
Tried and true methods, young grasshopper! (Score:2)
NASA, one of the most technologically advanced space programs in the world, has decided to use a "decades-old technology" for the new 21st century push for Mars rather than build a new, from scratch system. Tried and true methods must be the best, then. If this technique of using "old school" technologies works for NASA, it will work just as well for AMD!
Re: (Score:2)
Re: (Score:2)
If, however, you're taking about an extension allowing the issuance of commands to a processor (which we are), then the acronym stands for Instruction Set Architecture.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
The new PS4. It's not just a game console, it will also make your cappuccino!