From: McNutt, Nick (nmcnutt_at_vols.utk.edu)
Date: Mon Oct 27 2014 - 17:14:25 CDT

Dear VMD users,

I have recently upgraded my operating system, GPU drivers, and CUDA
version. When loading VMD 1.9.2, I get the following:

------------------------------------------------------------------------------------------------
Warning) Detected a mismatch between CUDA runtime and GPU driver
Warning) Check to make sure that GPU drivers are up to date.
Info) No CUDA accelerator devices available.
Info) OpenGL renderer: NVIDIA GeForce GT 650M OpenGL Engine
Info) Features: STENCIL MDE CVA MTX NPOT PP PS GLSL(OVF)
Info) Full GLSL rendering mode is available.
Info) Textures: 2-D (16384x16384), 3-D (2048x2048x2048), Multitexture (8)
Info) Dynamically loaded 2 plugins in directory:
Info) /Applications/VMD 1.9.2.app/Contents/vmd/plugins/MACOSXX86/molfile
vmd >
------------------------------------------------------------------------------------------------

It appears as though the default libraries provided with VMD
(libcuda.dylib, libcudart.dylib, libtlshook.dylib) are compiled with 32-bit
CUDA for a lower GPU driver version. Using "lipo -info vmd_MACOSXX86"
shows that VMD is compiled with an i386 architecture.

So I thought I'd try replacing the local libraries with my system ones:

------------------------------------------------------------------------------------------------
ln -s /usr/local/cuda/lib/libtlshook.dylib
ln -s /usr/local/cuda/lib/libcudart.dylib
ln -s /usr/local/cuda/lib/libcuda.dylib
------------------------------------------------------------------------------------------------

However, loading VMD gives this error message:

------------------------------------------------------------------------------------------------
Nick ~ $ /Applications/VMD\ 1.9.2.app/Contents/MacOS/startup.command ; exit;
dyld: Library not loaded: @executable_path/libcudart.dylib
  Referenced from: /Applications/VMD
1.9.2.app/Contents/MacOS/../Resources/VMD.app/Contents/MacOS/VMD
  Reason: no suitable image found. Did find:
/Developer/NVIDIA/CUDA-6.5/lib/libcudart.dylib: mach-o, but wrong
architecture
/Applications/VMD 1.9.2.app/Contents/vmd/libcudart.dylib: mach-o, but wrong
architecture
/usr/local/lib/libcudart.dylib: mach-o, but wrong architecture
/Applications/VMD 1.9.2.app/Contents/MacOS/startup.command: line 7: 5588
Trace/BPT trap: 5 "$p/../Resources/VMD.app/Contents/MacOS/VMD" $*
logout
------------------------------------------------------------------------------------------------

"lipo -info libcudart.dylib" reveals only x86_64 versions of the CUDA
drivers are provided, and nVidia's website (
http://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#unsupported-features),
provides the following statement:

"(Mac OS X) Support for 32-bit CUDA and OpenCL Applications on Mac OS X -
Developing and running 32-bit CUDA and OpenCL applications on Mac OS X
platforms is no longer supported in the CUDA Toolkit and in the CUDA
Driver. Legacy 32-bit CUDA and OpenCL applications will not run on this
version of the CUDA Driver on Mac OS X platforms."

So... it appears to me that my options at this point are to either try
compiling 64-bit VMD myself for Mac OS (I couldn't find an already compiled
version on the VMD downloads page), or to downgrade my GPU driver, which
isn't really an option.

Is there anything else I can do other than go without CUDA support?

Thanks,
Nick