Page 1 of 1

Volta support

Posted: Thu Oct 26, 2017 1:19 pm
by sshrinivasan
Hi all

AWS just got some Volta instances, and I noticed some ongoing work for Volta support in the github pull requests. What is the current status of this effort? I tried using OpenMM 7.0.1 with CUDA 7 which we have used so far, and get
Exception: Error downloading array interactionCount: clEnqueueReadBuffer (-36)
which I assume has to do with some driver incompatibility.

Re: Volta support

Posted: Fri Oct 27, 2017 1:14 pm
by peastman
If you use the latest version of the code from github and compile against CUDA 9.0, it should work. CUDA 7 doesn't support Volta.

Re: Volta support

Posted: Fri Oct 27, 2017 1:16 pm
by sshrinivasan
So I would have to compile from source, and not use the precompiled binaries?

Re: Volta support

Posted: Fri Oct 27, 2017 1:19 pm
by peastman
Correct. The next OpenMM release (7.2) will be compiled against CUDA 9.0, so it will support Volta automatically.

Re: Volta support

Posted: Fri Oct 27, 2017 1:31 pm
by sshrinivasan
Brilliant, thanks!

Re: Volta support

Posted: Mon Oct 30, 2017 6:42 pm
by sshrinivasan
Hi there

I managed to get the latest OpenMM to compile from source. However I am trying to build the Python API as mentioned in the user guide, and get
siddharth@node505 ~/Downloads/build_openmm $ make PythonInstall
-- Configuring done
-- Generating done
-- Build files have been written to: /Network/filer003/aws_homes/siddharth/Downloads/build_openmm
[ 0%] Built target ApiWrappers
[ 50%] Built target OpenMM
[ 50%] Installing OpenMM Python binary module...
....
creating /opt/zymeworks/base/13/lib/python2.7/site-packages/simtk
error: could not create '/opt/zymeworks/base/13/lib/python2.7/site-packages/simtk': Permission denied
[100%] Built target PythonInstall
I have specified a different installation directory for the rest of the process, however it seems to be trying to install to a non-writable location for the wrappers. How do I install the Python API in this case?

I have set the OPENMM_PLUGIN_DIR and LD_LIBRARY_PATH variables to point to the openmm installation directory, but then I try and use the Python wrappers, I get
>>> from simtk.openmm.app import *
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/openmm-7.0.1/lib/python2.7/site-packages/simtk/openmm/__init__.py", line 19, in <module>
from simtk.openmm.openmm import *
File "/usr/local/openmm-7.0.1/lib/python2.7/site-packages/simtk/openmm/openmm.py", line 28, in <module>
_openmm = swig_import_helper()
File "/usr/local/openmm-7.0.1/lib/python2.7/site-packages/simtk/openmm/openmm.py", line 24, in swig_import_helper
_mod = imp.load_module('_openmm', fp, pathname, description)
ImportError: /usr/local/openmm-7.0.1/lib/python2.7/site-packages/simtk/openmm/_openmm.so: undefined symbol: _ZN6OpenMM7Context12reinitializeEv
>>>
indicating that it is still looking in the global location (/usr/local)

Re: Volta support

Posted: Mon Oct 30, 2017 10:22 pm
by sshrinivasan
Actually I ended up delving into the "python" directory and doing a
python setup.py install --prefix=..
and it seemed to work.