Will there be a driver for the current AMD HD 7xxx graphics card generation which supports OpenGL 4.4 and maybe even OpenCL 2.0 or is this not possible on the current hardware and a new architecture/design is needed?
And regarding the possible need for a new architecture/design:
Will the next (non OEM only) generation HD 9xxx (?) support OpenGL 4.4 or OpenCL 2.0 and when will it be released.
I ask this because currently I am looking for a new graphics card to replace my old HD 4890.
Although it is sufficient for most games it's lack of DX11, OpenCL 1.1+ (not to mention CUDA) support is quite hindering.
Especially when it comes to GPGPU a lot of applications require more than OpenCL 1.0.
I am currently doing my Master degree in Visual Computing and I am interested in Real-Time Global Illumination algorithms which almost always make heavy use of GPGPU.
So I am now looking for the most future-proof GPU, in respect to supported GPGPU features, on the market.
There are obviously only AMD or NVIDIA cards to choose from.
And for the last couple of years I have always chosen AMD/ATI CPUs/GPUs as I upgraded my PC because they had often the best value for money.
But when it comes to GPGPU a lot of applications are written in CUDA and therefore won't run on AMD cards.
And for me it seems that a lot of developers seem to prefer CUDA over OpenCL.
On example, which is especially annoying for me is, the lack of OpenCL support of the Cycles Renderer in Blender.
According to the developers this is because of insufficient driver or hardware support of AMD graphics cards.
Due to that I am kind of disappointed by AMD as it seems that they are not 100% dedicated to delivering the best OpenCL support and are loosing the GPGPU API race against CUDA/NVIDIA.
I think that AMD could only benefit from providing the best OpenCL implementation, because otherwise they may loose customers to NVIDIA.
Edit: I think I accused AMD wrongly to have bad OpenCL support. As I read online (tomshardware OpenCL benchmarks) that NVIDIAs OpenCL performance is much worse. But the Blender/Cycles issue is still annoying.
So obviously buying a NVIDIA card has the benefit of CUDA support.
On the other hand I don't like CUDA because it is proprietary and seems to hinder OpenCL acceptance and development and therefore I maybe should boycott NVIDIA.
Another reason to buy a AMD card is that the hardware of the next consoles is based on AMD.
And since I am also a Gamer a lot of future games may be more optimized for AMD hardware.
So I tend more towards buying a AMD card, but still need more arguments/reasons to buy an AMD card.
And as NVIDIA already has a beta OpenGL 4.4 driver, while AMD currently has only OpenGL 4.3 support in their driver I wonder if 4.4 support is maybe impossible on their current HD 7xxx hardware and only planned for the next generation.
I agree with all the points you made in your post. The question to ask yourself are:
1. For your use case what features of GL 4.4 are needed. Apart from future proofing reasons. As a developer I would think reaching a larger audience would be more of a priority than anything else. 2. Just like 1, what features of OpenCL 2.0 are you going to be interested in. As for a lot of GPGPU applications are written in CUDA, remember CUDA has a leg up on OpenCL so they are going to
have the lion share of applications because it was a more mature platform at the time. As a develope,r and like you said, I would stay away from proprietary GPGPU platform like CUDA. Most CUDA features
usually have an OpenCL parallel, so there is nothing really barring most of these application to be ported to CL. Again, having a wider audience I would assume to be more important than having the latest
features, unless they are really necessary.
As for Nvidia having a beta 4.4 driver. I used both cards on a daily basis and Nvidia isn't without problem, hop on over to their driver forum and you'll see the list of issue users are having with drivers. First out the
starting block does not necessarily mean anything if drivers are not stable or fully compliant ( I'm not saying that the Nvidia drivers are either because I have not personally tried them myself ). A use case analysis
will probably go a long way in helping your decision along.