Page 1 of 1

SanderOpenmm tests: Segmentation fault error

Posted: Thu Aug 18, 2011 1:24 pm
by vivekbharadwaj
Hi everyone,

I have been trying to install & test the sanderOpenmm version on our cluster. The cluster has a Ubuntu 10.04 OS. The login node has all the softwares installed while the GPUs are on the compute nodes. Amongst the compute nodes, we have 2 nodes with 1 Tesla1060 each, 2 nodes with 1 GTX580 each and 2 nodes with 2 GTX580s each. I was able to successfully compile the Openmm version of Sander on the login node.

When I try to run the test, with the acetamide I get the following error,

vbharadwaj@deepblue-1-5:~/sanderOpenMM_0.2.0/tests/acetamide$ ./runSander.sh
./runSander.sh: line 25: 20328 Segmentation fault $AMBERHOME/bin/sander_openmm -i peptide.in -o peptide.out -p peptide.top -c peptide.crd -r peptide.rst -x peptide.trj -e peptide.en
At line 1298 of file _ew_box.f (unit = 9, file = 'fort.9')
Fortran runtime error: End of file


What could be the issue? How can I rectify this?

Please advise.

RE: SanderOpenmm tests: Segmentation fault error

Posted: Thu Aug 18, 2011 3:15 pm
by jchodera
Hi Vivek,

Can you package up the input files you're using here?

I think I've seen this error before, and in the cases I ran into, I was trying to use the wrong format for input coordinates. Is your peptide.crd file a proper restart file, with six coordinates per line, or is it a frame of a trajectory file, with ten coordinates per line?

John

RE: SanderOpenmm tests: Segmentation fault error

Posted: Fri Aug 19, 2011 12:22 pm
by vivekbharadwaj
Hi John,

Thank you for the response.

I was trying to run the test suite as recommended in the README file. The test I am running is located in
sanderOpenMM_0.2.0/tests/acetamide/runSander.sh

Here is the peptide.crd file

9
1.8031844 -5.0919278 21.5797694 1.0900000 -4.4850000 21.0220000
0.5802651 -3.8040940 21.7036419 0.3573196 -5.1336948 20.5419234
1.7960000 -3.6580000 19.9400000 3.0040000 -3.7260000 19.7860000
1.0440000 -2.8770000 19.1910000 0.0459803 -2.8411639 19.3419122
1.4656417 -2.3142308 18.4660111

Vivek

Re: SanderOpenmm tests: Segmentation fault error

Posted: Tue Nov 15, 2011 11:36 am
by mgarraha
openmm_sander as distributed gave me segfaults too with OpenMM 3.1.1. With OpenMM 2.0 it terminated normally or at least reported an "invalid argument launching kernel" error.

OpenMM seems to have added an argument to Context::getState between releases.
  1. copy OpenMMFortranModule.f90 from the OpenMM 3.1.1 include directory to AMBERHOME/src/openmm_sander
  2. modify openmm_sander.f as shown
  3. recompile openmm_sander
Then my openmm_sander runs to completion. I chose enforcePeriodicBox=OpenMM_False because its default value is false in the C++ API.

Code: Select all

@@ -700,7 +700,7 @@
       if (nstep>0 .AND. ntwx>0 .AND. (mod(nstep,ntwx) == 0)) then
             openmm_state_types = IOR(openmm_state_types, OpenMM_State_Positions)
       end if
-      call OpenMM_Context_getState(context, openmm_state_types, state)
+      call OpenMM_Context_getState(context, openmm_state_types, OpenMM_False, state)
       if (nstep==0 .AND. irest==0) then
          ! Back velocities by half a time step.  This is how Sander does it.
          call OpenMM_State_getVelocities(state, allVelInNmAmberTime)