I was wondering why nVidia chose the same name (cudart.dll) for both the 32 bit and 64 bit CUDA runtime. Wouldn’t it be preferrable to have different names there to allow both 32 bit and 64 bit binaries to look for the appropriate versions of the runtime DLL?
Maybe my understanding of the DLL loaded in Windows is flawed, but my assumption is that for example if I have installed the 64 bit CUDA toolkit, any 32 bit app looking for cudart.dll will find the 64 bit version only and fail to start - unless the application developer ships the appropriate cuda runtime as part of the program, e.g. in the application folder.
Using names like cudart32.dll and cudart64.dll might have worked around this issue, right?