I have gone part way to implementing a driver/framework matrix installer. This version of this driver (Tesla, quadro, amd, geforce) for this platform (w10,w7, linuxen, bsd,osx, docker), and this version of that framework (CUDA, cuDNN etc). Turns out it is not that bad, hardware profiles under wXP would have been nice, thanks for killing them off MSNSA... Anaconda environments help, as does wrangling path and environment variables, registry keys are entropically difficult without a robust differencing mechanism - no easy thing. Easier to do under linux, for the moment. Drivers in 'kernel' cause issues though, as do excessively restrictive header files. The latest incarnation of vs2017 has broken a lot of things... It IS possible to get cuda examples running on VS2017, compiling *without updating* previous incarnations (vs2015, vs2013, vs2010 e.g.) CASLR and ASLR ameliorations have covertly broken a lot of things (linking to non-canon libraries and tools under OSX for example). We live in very difficult times as developers, unless we swallow the paywalled cool-aid and go into the cloud, we are faced with massive regression and combinatorial complexities designed to break us. This applies especially if you are an alien, non-minority (in other words deemed not in vogue by the powers of spin orchestrating and hiding all of this in plain sight). Containerisation will only get you so far, especially if you want CUDA, uninvestigated for games. If you get the layers of frameworks right, you can do Tensorflow accelerated in a Container - which is very difficult to keep going though, when you have little Russian dollies pissing over everything. But it can be done! I am surprised some anarchistic types have not seen the opportunity for implementing such a devops tool for the consumer - could be worth a buck or two...