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."
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.
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.
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.
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.
You do realize this article has ~absolutely nothing to do with gaming, or even normal users, right?
The systems discussed using CUDA or GPGPU will probably spend ~100% of their lives running flat out, doing simulations or such.
Visualize a Beowulf Cluster of these. Really.
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.
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
Precisely. The Democrats would never tinker with computing hardware or software (like trying to force everyone to use the same, weak, encryption algorithm AND turn over their keys to the government) like the Republicans would.
Can you be Even More Awesome?!
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.
deadly and vaporware is more commonly known as sbd. Everyone knows that.
This issue is a bit more complicated than you think.
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.
It is still capable of hight speed rendering, so it can still be used as a GPU.
Rethinking email
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.