AMD Banks On Flood of Stream Apps
Slatterz writes "Closely integrating GPU and CPU systems was one of the motivations for AMD's $5.4bn acquisition of ATI in 2006. Now AMD is looking to expand its Stream project, which uses graphics chip processing cores to perform computing tasks normally sent to the CPU, a process known as General Purpose computing on Graphics Processing Units (GPGPU). By leveraging thousands of processing cores on a graphics card for general computing calculations, tasks such as scientific simulations or geographic modelling, which are traditionally the realm of supercomputers, can be performed on smaller, more affordable systems. AMD will release a new driver for its Radeon series on 10 December which will extend Stream capabilities to consumer cards." Reader Vigile adds: "While third-party consumer applications from CyberLink and ArcSoft are due in Q1 2009, in early December AMD will release a new Catalyst driver that opens up stream computing on all 4000-series parts and a new Avivo Video Converter application that promises to drastically increase transcoding speeds. AMD also has partnered with Aprius to build 8-GPU stream computing servers to compete with NVIDIA's Tesla brand."
There, fixed that for you.
Surely I'm not the only one who thinks this'll be useless without open-source drivers, so you can actually make your fancy cluster use these vector-processing units.
...welcome our new GPGPU overlords.
All I'm wondering is why it took so long? They are in the business of selling hardware, and if we can find a new use for it, then we're more likely to purchase AMD/ATI's hardware.
http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
Actually what I had in mind when I mentioned it on the previous story is that AMD could make the SIMD part of the CPU. That way you could use whatever video card you wanted and have the advantages SIMD brought.
Shai Schticks:"You don't make peace with friends, you make peace with enemies"
Last time I looked at the Catalyst/Avivo hardware transcoding software it was somwhat less usable than I hoped. The thing that killed it for me was the lack of batching or cl options. It actually turned out to be less time consuming for me to use a software transcoder with batching and leave it on overnight and while I was at work than it did to go back over to the pc after every finished run to setup the next file for transcoding on the vid card. The quality of the video that was transcoded in hardware was a bit on the patchy side as well.
Somthing that I would be interested in is integrating support into burning software to speed up the transcoding side of DVD video burning. Unfortunately it doesn't look like it's happening any time soon. I think the problem is that by the time technology has matured enough to make it viable, the increase in CPU speed will have made it redundant.
I only buy pepper spray that's been tested on anti-vivisectionists.
So... is there an open standard API for this stuff yet that works on hardware from multiple manufacturers?
If not, developing for this feels like writing assembly code for Itanium or the IBM Cell processor. Sure, it'll give you pretty good performance now, but the chances of the code still being useful in 5 years is basically zero.
-- The act of censorship is always worse than whatever is being censored. Always.
All I'm wondering is why it took so long? They are in the business of selling hardware, and if we can find a new use for it, then we're more likely to purchase AMD/ATI's hardware.
A new driver that would turn a consumer-grade high-end video card into an easy-to-use midrange supercomputer? More powerful than the stuff the US nuclear weapon programs were using when they designed the last batch of bombs?
Maybe they were waiting for a congress and president that they don't think will declare their graphics cards to be weapon manufacturing tools and apply export controls. B-)
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
You chose to run on a platform knowing full well these things aren't likely to be supported. Very little sympathy from me. Sorry.
If you want to encourage more drivers on your platform of chose, perhaps you might consider making it easier for hardware companies to target your kernel. Maybe consider, oh I don't know, a stable, predictable ABI?
Maybe loose the attitude as well. The world doesn't owe you or your OS choices anything. All you can do is focus your efforts at making your platform of choice attractive to those whose support you wish to seek.
For hardware vendors, it is easy. Simply make it cheap and easy to write drivers on your platform of choice. Ask yourself, "Is it cheap and easy for hardware vendors to target my platform"? If the answer is "No", then figure out what you can do to make it cheap and easy for them. If that is impossible because if violates some guiding values of your platform, well shucks, either be a man and deal with it, or reconsider your value system. Whining about how the world isn't giving what it owes you doesn't help anybody.
Low cost, low power CPUs. Already, 99% of people don't use 99% of the power of their CPUs 99% of the time. Why then, is AMD banking on people wanting massive power on specialized hardware that will require fancy compilers?
I consider myself in the ever-dwindling group of "PC gamers," and even I am looking forward to the death of GPUs in my computer. I'm tired of building expensive and power-sucking desktops that go obsolete in 18 months. Instead of building a 1000 dollar desktop next year, I'm getting a laptop and an Xbox 360. My 350 dollar EEE PC will be able to load PDF files and power-points without a 350-watt, 400 dollar video card, thank you very much.
I think the deal is, CPU speed is what has matured. These days, we dont get fast by increasing clock speed, we get fast by going massively parralel. Hence the article and the hardware. The GPU is reaching the point where it is a fancy specialized CPU. Kind of like the FPU's back in the day before 486 DX's were king.
No matter what happens though, the "CPU" as we define it currently will never be able to outperform what we now define as the "GPU" no matter what the increase is in CPU clock speed. Clock speed doesn't matter as much for the kinds of problems GPU's are built to solve.
If you let them build it, they will come.
Lord only knows what kinds of boobie traps they put in power supplies. The CIA and the NFL probably know more about you then you realize thanks to that "120V power supply" on the back of each computer in Google's data center. I mean, unless you have the schematics, how do you really know what it is doing?
You dont. Neither does Google. The wise are already beginning to short GOOG. Will their shareholders wake up and demand schematics? Only time will tell.
And so are Intel and Nvidia. Vector processing is indeed the way to go but GPUs use a specific and highly restricitve form of vector processing called SIMD (single instruction, multiple data). SIMD is great only for data-parallel applications like graphics but chokes to a crawl on general purpose parallel programs. The industry seems to have decided that the best approach to parallel computing is to mix two incompatible parallel programming models (vector SIMD and CPU multithreading) in one heterogeneous processor, the GPGPU. This is a match made in hell and they know it. Programming those suckers is like pulling teeth with a crowbar.
Neither multithreading not SIMD vector processing is the solution to the parallel programing crisis. What is needed is a multicore processor in which all the cores perform pure MIMD vector processing. Given the right dev tools, this sort of homogeneous processing environment would do wonders for productivity. This is something that Tim Sweeny has talked about recently (see Twilight of the GPU). Fortunately, there is a way to design and program parallel computers that does not involve the use of threads or SIMD. Read How to Solve the Parallel Programming Crisis for more.
In conclusion, I will say that the writing is on the wall. Both the CPU and the GPU are on their death beds but AMD and Intel will be the last to get the news. The good thing is that there are other players in the multicore business who will get the message.
So by your logic, those people would be happy with a computer that was 1% as fast as what it is now?
Make no mistake, once you actually hit that 1% of the time you need 100% of your CPU, the more the better. I can think of two horsepower intense things a normal, every day joe now expects his computer to do:
1) Retouching photos
2) Retouching and transcoding video (from camera/video camera -> DVD)
Dont underestimate transcoding video either. More and more people will be using digital video cameras and expect to be able to output to DVD or Bluray.
Consumer products using GPGPU tech will (and indeed are) happening, but it's sure as heck not going to be on ATI's GPUs. The performance is there, but the development tools are a joke. The main runtime (Brook+) is the technological equivalent of giving yourself a root canal every time you program in it, and the rest of the Stream SDK supporting toolset is more or less entirely AWOL. It's rather unfortunate, but compared to NVIDIA's CUDA the whole system is a joke; CUDA is an excellent toolkit that someone clearly put a lot of thought in to in order to meet the needs of developers, while the Stream SDK/Brook+ still feels like it's a research project that nobody optimized for commercial use.
The hardware is there, but no one in their right mind is going to program with AMD's software. Everyone is waiting for OpenCL. Even if it doesn't really take off, it still can't possibly be worse than the Stream SDK.
So if I understand this right, they're adding transistors to the graphics card that would normally be added to the CPU. How exactly does that help? It's not really a graphics cards anymore if you're doing general processing on it. Why not just put that horsepower on the CPU?
Have AMD forgotten that they're still a CPU business? I used to like AMD but now that they're having to compete with two industry powerhouses who have held the lead for a long time (Intel and nVidia) they seem to be getting a little schizophrenic.
Is this the same arcsoft that gave us .arc back in the 80s?
If so, I'd like to get rarsoft involved. Any idea how long it takes my P233 machine to unrar a .264 video? I mean, like HOURS.
Imagine if I could harness my video card, an S3Virge.... holy bat, crapman, I'd probably cut my derar times by what, a third?
--Toll_Free
You may or may not be surprised by this, but not all of the magic happens in hardware, which is why you don't see open sourced drivers for a lot of stuff.
That was true in the mid-90s, when drivers meant the difference between 10fps and 30fps. We're in the late 00s now, where drivers are as thin as possible, so that APIs are sitting right on top of hardware commands, and compiling shaders is the about the only thing left to do with software alone.
Any such optimizations or color corrections are typically done in baked-in firmware, if they are done at all. With GPGPU, there's just zero reason not to give programming languages and APIs full access to the hardware in the same way that Linux has full access to your CPU (minus a few notable exceptions, most of which are meaningless to most of us).
This is why AMD has opened up the floodgates on documentation of their hardware, and the open drivers have been improving ever since.
"Victory means exit strategy, and it's important for the President to explain to us what the exit strategy is." G.W.Bush
If something hurts, stop doing it.
You expect the world to cater to your lifestyle choices. You made the choice to run a platform that isn't well supported by video card manufacturers. Either stop using the platform, or find video cards that work on your platform. What if there is no good video cards for your platform? Tough luck. Sorry. You should have considered that before installing the OS, eh?
It is beyond arrogant to expect the world to cater to your choice of operating system.
Is that you?
deadly and vaporware is more commonly known as sbd. Everyone knows that.
This issue is a bit more complicated than you think.
My gut feeling is that they're talking shareholderese, and it has no bearing whatsoever what technical merit their platform has... But how they can sell it to investors matters to them.
film at 11
OpenCL is supposed to be it; its officially endorsed by Khronos (of OpenGL fame) and Apple. Release date is still unknown, drivers are even less known. Its promising a general purpose stream processing API that can inter-operate with OpenGL.
I've been scouring today's press releases for OpenCL, and thusfar I've been extremely disappointed to hear numerous promises about Brook+ (the proprietary stream api AMD originally backed which I dont give a crap about) and nothing about OpenCL. AMD better fucking not re-neg, or their hardware is going to be useless as all fuck.
Yes yes yes and yes.
However, AMD already said it was backing OpenCL. I'm pissed as fuck I didnt hear anything about OpenCL this press cycle, but they're the only major graphic company to have ever stated they were getting behind OpenCL: I'm holding onto hope.
You're right: no one uses Brook. Trying to market it as any way part of the future is a joke and a mistake: a bad one hopefully brought on by a 2.50$ share price and pathetic marketting sods. On the other hand, I think people using CUDA are daft too; its pre-programmed obsolesence, marrying yourself to proprietary tech that one company no matter how hard they try will never prop up all by themselves.
OpenCL isnt due out until Snow Leopard, which is rumored to be next spring. Theres still a helluva lot of time.
> On the other hand, I think people using CUDA are daft too; its pre-programmed obsolesence, marrying yourself to proprietary tech that one company no matter how hard they try will never prop up all by themselves.
Agreed, but it still is the "only" choice if you want to use that processing power.
Also, in my case most of the time was spent analyzing different algorithms to see if they are suitable for GPUs and still good enough, so at least that is not wasted.
given the recent track record of the khronos group ( anyone one remember the opengl 3.0 specs ) i don't think we'll see opencl anytime soon. i hope they don't screw that one up if it ever sees the light of day. cuda has gotten a lot of scientific attention in the past year. it's a nice paper machine, just take your favorite algorithm and port it even if it's not the best fit for the architecture. sure, missing cachin for global memory will bite you in the ass but it's still better than ati's close to metal initiative or going the graphics pipeline way. any competing api will have a hard time against cuda. the ati thing is to little to late.
If that were true then there wouldn't be any software today. You don't need open source drivers to use the published API. That's what an API is for. You certainly won't need the source code to the Mac GPU drivers to use Apple's upcoming OpenCL APIs.
The traction for this will come when someone releases opensource audio, and later, video encoder libraries using GPU acceleration based upon this (or another) abstraction layer.
MP3, OGG, FLAC - get these out the door (especially the first one) and a host of popular GUI and CLI encoders would jump on the bandwagon. If there are huge speed gains and there are no incompatibility issues because the abstraction layer and drivers are *stable* and retain *backwards compatibility* with new releases then more people will see the light and there will be pressure to do the same with video encoders. Before you know it the abstraction layer would become defaco and all GPU makers would follow suit - at that point we (the consumer) would win in having something that works on more than one OS on one particular card from one particular GPU maker and we can get on with some cool innovations.
a process known as General Purpose computing on Graphics Processing Units (GPGPU).
Eugene: Jeep jeep!
Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
Avalda helps developers work on parallel programming with a compiler that transforms a subset of F# to a hardware description language (HDL) suitable for FPGAs. So you can code regular F#, with parallel semantics, and run it on an FPGA. This approach uses the truly fine-grained parallelism of FPGAs (eg, Xilinx's million gate Spartan 3 FPGA). It works with the free Visual Studio 2008 shell (integrated mode). More info can be found at the following urls: http://www.avalda.com/index.php/blogs/12-avalda-fpga-developer-for-the-working-programmer.html http://www.avalda.com/index.php/blogs/15-f-to-fpga-tutorial-on-euclids-greatest-common-divisor-algorithm-part-i.html FPGAs are great for accelerating algorithms in, eg, DSP. So check it out!
What if there is no good video cards for your platform? Tough luck. Sorry. You should have considered that before installing the OS, eh?
It is beyond arrogant to expect the world to cater to your choice of operating system.
Please consider the subject again.
Not everyone is using his/her GPU to play WoW on Windows.
We are talking about scientific computations. GPGPUs, clusters, etc...
Before installing the OS, the scientists have also to consider which is best for their work.
Currently, hardly anything beyond a UNIX-based OS is able to handle gracefully the load.
In addition, the scientists are trying to build massively parallel computing stations. Not just your average "one 4 quad core CPU, 2 or 3 GPUs" enthusiast gamer rig.
We're speaking order-of magnitude more parallelism (a dozen of CPU is a minimalistic cluster in some scientific application). The licensing cost per CPU is important too. Only open-source solutions will keep the cost within reasonable ranges, and in addition have the benefit of allowing the scientists to have the cluster customized and tailored to their needs.
That will only leaves a couple of OS in the race.
In cluster-land Linux is the king, running on a significant proportion of worlds' top super-computers, and highly prevalent in most universities' and labs' clusters.
Windows for scientific purpose is nothing more than a really bad joke.
Wanting a decent Linux support for GPUs is *NOT* arrogance, nor wanting the world to cater to some eccentric lifestyle choice.
Wanting a decent Linux support for GPU is just wanting the GPU manufacturer to cater to what is currently the norm in some non-gamer markets.
Gamers use mainly windows. But there are lot of non-gamers using other things than windows. Scientist are among them.
That's something AMD has understood :
and that why they are actively collaborating with opensource efforts in order to bring decent opensource drivers, like the xorg radeonhd driver.
(but currently their efforts are slow, hardware acceleration isn't support in the most sexy latest generation cards - at least the latest version of their proprietary driver still work).
nVidia, on the other hand, categorically refuse to collaborate with opensource efforts like Nouveau.
Instead Nouveau has to reverse engineer pretty much everything. Which is already difficult for plain 3D and will require even more work for GPGPU.
No opensource driver severly limit the choice of OS and hardware combination you can use in a scientific cluster.
At least we still currently have luck : nVidia tries to pull Linux version of their drivers.
But knowing that we are currently completely at the mercy's of nVidia choices for driver development severely limit the perspective.
Disclaimer : currently working on a couple of GPGPU project, some running on CUDA.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Surely I'm not the only one who thinks this'll be useless without open-source drivers
Well, at least today's GPGPU article is about AMD.
Which currently is putting in efforts and releasing specs to help design open drivers.
Their current stream computing stack (Brook+) is a modified and adapted variant of the opensource BrookGPU - and is itself open.
And they made promises that in the long term, the opensource drivers will also support GPGPU.
The other stack toward which they are showing interest is OpenCL. Which is an open standard, to be used by several partners. (like currently OpenGL and OpenAL).
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Richard Stallman is the founder and leader of the Free Software Foundation, not "the open-source movement."
Open Source is something different, but related. He does not speak for these people.
I very much doubt that AMD/ATI will release the first generation of drivers for GPGPU via open source. As I don't think they'd want you to see what a mess they are!
Nvidia on the other hand doesn't have this excuse.
What's more exciting and no one has seemed to mention is that AMD/ATI will have full support for openCL.
With the mass consumer industry pushing allowing for such crazy! amount of computing power, its a good time to have an IT fetish.
I've read at a few sites, that the ATI Stream SDK will be fully OpenCL compliant.
See title.
A year ago, I started taking the anti-epileptic medication, Topamax, and I started to suffer from psychosis shortly there after. I am better now though, now that I no longer take Topamax. Psychosis is a rare, but potential, side effect of Topamax, and there may be genetic factors that influence the occurrence of this particular serious side effect. A casual term that a layperson might use to describe me is that I was psychotic, but saying that I was suffering from psychosis is probably a better description I think anyways. It has something to do with not labeling an individual as a condition, but instead saying they have the condition.
In any case, Mr. Savain I have seen other post on your blog and even your separate website, and basically I think that the conclusions that you have made are entirely illogical and without merit. The reasoning you must have performed for your work was seriously delusional. I am certain that I could not have managed that quality of delusional thinking, when I was ill a year ago.
In any case, I would urge you to drop by the nearest ER immediately and ask to have a professional perform a mental evaluation on you. It is generally just a few questions and the results may be enormously helpful. Note, I am not any sort of health practitioner.
In any case, for other readers, a fairly valid comparison to the validity all of Mr. Savain's irrational ideas can be found in the "Alternative Engineering" story here:
http://www.quackwatch.com/01QuackeryRelatedTopics/alteng.html
Also could a slashdot admin make an appropriate sig for the "Louis Savain" with the above link to Quackwatch and lock it such that he cannot change it. I'm tired of this idiot's posts getting modded up by confused mods impressed by the technical and pseudo-technical terms which get arranged into gibberish on the page he links to, which is invariably one of his blog postings or his website.
Impersonating Tycho from Penny Arcade since before there was a PA.
Maybe that's the problem.