HD 3870 already outdated for OpenCL. Am I na´ve for expecting otherwise?
To my great surprise, after battling with getting the AMD APP (OpenCL) SDK to work in Maverick with fglrx, and actually stopping up and reading the System Requirements, I notice that my graphics card isn't supported. It seems the 4xxx series isn't even properly supported (beta level), so I fear that my card will never be.
Am I not being fair expecting a ~3 year old graphics card to be supported by new technologies? Are there any technical difficulties in implementing OpenCL on older GPUs because of different hardware? Or will support come for the 3xxx series at some point?
I feel like I bought that card yesterday... Maybe I'm just getting old (too)?
That was the part I was in doubt about, whether the various OpenCL functions are all implemented in hardware, or whether they run on the already present vertex shaders and what else the graphics card has (I don't know much about that, as you might be able to tell ). But that may be the exception rather than the rule, "emulating" such functions on shaders? Like we hopefully will see with video decoding acceleration in Gallium.
Of course if the various OpenCL functions need to be implemented in hardware, it's no surprise that a card out-dating a standard is incompatible with that standard.
Interesting! I didn't know that Apple were the original authors, and that Nvidia were so heavily involved. But I guess it makes sense that Nvidia assisted them as much as they did, as they are the ones with the most experience regarding GPGPU.
Kudos to Apple for releasing this as an open spec!
I just found out the same with regards to my Radeon 4770 a few days ago. I've been developing an OpenCL-accelerated decoder for VP8/WebM video (not finished yet), and I've had to resort to CPU-based CL on my desktop (using the Stream SDK v2.3). My laptop (GF 9400M) works just fine using Nvidia's binary drivers.
The problem with my card: While OpenCL 1.0 is supported, the card doesn't support the cl_khr_byte_addressable_store extension, which makes it useless for what I'm working on.
*crosses fingers* I'm hoping my thesis advisor pulls through and lends me one of the GTX 580's he just bought for one of his clusters.
^ I guess that's the price we pay for enjoying hardware acceleration: when the demands for what needs to be accelerated change, the hardware has to change too :\
I'm really starting to look forward to OpenBenchmarking.org appearing. I'd really like to be able to just get a list of OpenCL compatible Linux graphics cards, and list them in ascending order of "OpenCL-power" per dollar. It's really a hassle to find out which graphics card to choose for Linux as things are now.
Well, if you're looking for CL power per dollar, you're probably going to want to look at something like a GTX 560, but I don't really have benchmarks to make my case. As you said, when OB.org is ready, that should help. I've noticed a HUGE difference in CL execution speed in Linux vs Mac OS, at least when running on CPU's (My dual-core (C2D 2.53) Macbook outruns my 6 core Phenom in Linux 2.6.38-rc2 by a factor of 4).
Otherwise, I'd check and see if any of the recent Phoronix articles have done comparisons of AMD/Nv with an OpenCL test being involved. Either Anandtech or TechReport also might include Windows-based CL testing in their video card articles.