The CUDA toolkit version 6.5 obsoletes sm_10. This means that in order for me to upgrade from 6.0 to 6.5 to get (for example) VS2013 support, I will lose support for cards such as 9600GT. I market a CUDA application based on the driver API and it is troublesome for me to have to abandon users with sm_10 cards.
Worse, 6.5 now warns that sm_11, sm_12, and sm_13 are deprecated and going by the sm_10 precedent I can expect to have to drop all those cards as well when I upgrade the toolset again, for example to add a new architecture.
What can I do to support all my existing users for product upgrades without having to maintain multiple versions of the product as well as multiple development environments containing different versions of the CUDA toolkit?
This seems like a terrible strategy taken by the CUDA team. Am I missing something or are things as bad as they seem?
It’s hard to believe there is no reply about this significant issue.
Do nVidia people frequent these forums?
Sorry this is causing trouble. Actually, support for cc1.x devices is being dropped from the NVIDIA unified driver in the near future. This does not just pertain to CUDA support. Users of these devices will not be able to upgrade to newer drivers in the near future. Since the driver will (soon) not support cc1.x devices, CUDA will not, either.
There is not much that can be done about it from a CUDA SW perspective, and I don’t really have an answer for your question. I can make a few suggestions:
You could suggest to your user base on these very old products that they replace them with a new GPU, such as the GTX 750, which is on the newest architecture (cc 5.0), can be had for ~$110, and will run faster than any cc 1.0 - 1.2 device, I expect, on any code.
You could keep a maintenance-only release on the old toolkit for customers who do not wish to upgrade.
The CUDA SW development team is aware of your concern. If there are any additional comments forthcoming, I’ll make sure they get posted.