OpenMM Source Build Linux 32-bit tests failed

The functionality of OpenMM will (eventually) include everything that one would need to run modern molecular simulation.
POST REPLY
User avatar
Jack Shultz
Posts: 77
Joined: Thu May 28, 2009 6:49 pm

OpenMM Source Build Linux 32-bit tests failed

Post by Jack Shultz » Fri Mar 19, 2010 6:57 pm

I got the following failures when I did make test.

The following tests FAILED:
25 - TestCudaEwald (Failed)
26 - TestCudaCustomTorsionForce (Failed)
27 - TestCudaGBSAOBCForce (Failed)
28 - TestCudaGBVIForce (Failed)
29 - TestCudaHarmonicAngleForce (Failed)
30 - TestCudaCMMotionRemover (Failed)
31 - TestCudaLangevinIntegrator (Failed)
32 - TestCudaRBTorsionForce (Failed)
33 - TestCudaVariableVerletIntegrator (Failed)
34 - TestCudaVariableLangevinIntegrator (Failed)
35 - TestCudaCustomAngleForce (Failed)
36 - TestCudaNonbondedForce (Failed)
37 - TestCudaRandom (Failed)
38 - TestCudaPeriodicTorsionForce (Failed)
39 - TestCudaBrownianIntegrator (Failed)
40 - TestCudaCustomExternalForce (Failed)
41 - TestCudaHarmonicBondForce (Failed)
42 - TestCudaCustomNonbondedForce (Failed)
43 - TestCudaSettle (Failed)
44 - TestCudaAndersenThermostat (Failed)
45 - TestCudaVerletIntegrator (Failed)
46 - TestCudaCustomBondForce (Failed)
47 - TestCudaUsingParameterFile (Failed)
49 - TestCudaGBVISoftcoreForce (Failed)
50 - TestCudaUsingParameterFile (Failed)
Errors while running CTest
make: *** [test] Error 8
[root@localhost build_openmm]#


User avatar
Christopher Bruns
Posts: 32
Joined: Thu Apr 07, 2005 1:10 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Christopher Bruns » Fri Mar 19, 2010 7:29 pm

Hmm. It looks like all of the Cuda tests are failing. Do the cuda test programs such as deviceQuery, which should be in the cuda sdk, work correctly?


User avatar
Jack Shultz
Posts: 77
Joined: Thu May 28, 2009 6:49 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Jack Shultz » Sat Mar 20, 2010 9:17 pm

I am having trouble compiling the sdk

[root@localhost C]# make
make[1]: Entering directory `/root/NVIDIA_GPU_Computing_SDK/C/common'
make[1]: Leaving directory `/root/NVIDIA_GPU_Computing_SDK/C/common'
make[1]: Entering directory `/root/NVIDIA_GPU_Computing_SDK/C/common'
make[1]: Leaving directory `/root/NVIDIA_GPU_Computing_SDK/C/common'
make[1]: Entering directory `/root/NVIDIA_GPU_Computing_SDK/C/common'
make[1]: Leaving directory `/root/NVIDIA_GPU_Computing_SDK/C/common'
make[1]: Entering directory `/root/NVIDIA_GPU_Computing_SDK/shared'
make[1]: Leaving directory `/root/NVIDIA_GPU_Computing_SDK/shared'
make -C src/asyncAPI/
make[1]: Entering directory `/root/NVIDIA_GPU_Computing_SDK/C/src/asyncAPI'
nvcc fatal : Unsupported gpu architecture 'compute_20'
make[1]: *** [obj/i386/release/asyncAPI.cu.o] Error 255
make[1]: Leaving directory `/root/NVIDIA_GPU_Computing_SDK/C/src/asyncAPI'
make: *** [src/asyncAPI/Makefile.ph_build] Error 2
[root@localhost C]#


User avatar
Jack Shultz
Posts: 77
Joined: Thu May 28, 2009 6:49 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Jack Shultz » Sun Mar 21, 2010 5:22 pm

It was missing the library path.

User avatar
Jack Shultz
Posts: 77
Joined: Thu May 28, 2009 6:49 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Jack Shultz » Sun Mar 21, 2010 7:02 pm

I am trying to compile gromacs openmm now and it does not seem to compile md_openmm. I set the library path

$LD_LIBRARY_PATH
/usr/local/openmm/lib/:/usr/local/cuda/lib:
[root@localhost gromacs-4.0.7]#

Making all in kernel
make[3]: Entering directory `/root/Download/gromacs-4.0.7/src/kernel'
/bin/sh ../../libtool --tag=CC --mode=link cc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-unused -funroll-all-loops -o mdrun glaasje.o gctio.o ionize.o do_gct.o repl_ex.o xutils.o md.o mdrun.o genalg.o libgmxpreprocess.la ../mdlib/libmd.la ../gmxlib/libgmx.la -lxml2 -lnsl -lfftw3f -lm -lSM -lICE -lX11
cc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-unused -funroll-all-loops -o mdrun glaasje.o gctio.o ionize.o do_gct.o repl_ex.o xutils.o md.o mdrun.o genalg.o ./.libs/libgmxpreprocess.a ../mdlib/.libs/libmd.a /root/Download/gromacs-4.0.7/src/gmxlib/.libs/libgmx.a ../gmxlib/.libs/libgmx.a -lxml2 -lnsl -lfftw3f -lm -lSM -lICE -lX11
md.o: In function `do_md':
md.c:(.text+0x64c): undefined reference to `openmm_init'
md.c:(.text+0xd7f): undefined reference to `openmm_take_one_step'
md.c:(.text+0xf05): undefined reference to `openmm_copy_state'
md.c:(.text+0x1423): undefined reference to `openmm_cleanup'
collect2: ld returned 1 exit status
make[3]: *** [mdrun] Error 1
make[3]: Leaving directory `/root/Download/gromacs-4.0.7/src/kernel'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/Download/gromacs-4.0.7/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/root/Download/gromacs-4.0.7/src'
make: *** [all-recursive] Error 1
[root@localhost gromacs-4.0.7]# echo

User avatar
Jack Shultz
Posts: 77
Joined: Thu May 28, 2009 6:49 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Jack Shultz » Mon Mar 22, 2010 6:49 pm

I think the problem is I only have double precision libraries

[root@localhost build_openmm]# ls /usr/local/openmm/lib/
libOpenMM_d.so libOpenMMFreeEnergy_d.so libOpenMMFreeEnergy_static_d.a libOpenMM_static_d.a plugins

Is there a way to build single precision?

User avatar
Michael Sherman
Posts: 807
Joined: Fri Apr 01, 2005 6:05 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Michael Sherman » Mon Mar 22, 2010 8:19 pm

Jack, the "_d" stands for "Debug" - those are debug libraries, not double precision. You need to change the "Debug" to "Release" in the CMake file to build the release libraries. Regards, Sherm

User avatar
Jack Shultz
Posts: 77
Joined: Thu May 28, 2009 6:49 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Jack Shultz » Mon Mar 22, 2010 9:05 pm

You are right. I switched from Debug to Release in cmake advance options.

[root@localhost build_openmm]# ls /usr/local/openmm/lib/
libOpenMM_d.so libOpenMMFreeEnergy_d.so libOpenMMFreeEnergy.so libOpenMMFreeEnergy_static.a libOpenMMFreeEnergy_static_d.a libOpenMM.so libOpenMM_static.a libOpenMM_static_d.a plugins

Still having trouble compiling gromacs. I copied these source files, md_openmm.h, md_openmm.cpp md.c over to the src/kernel on my gromacs distribution. If does not compile unless i comment out the preprocessor condition

/*
#define USE_OPENMM
#ifdef USE_OPENMM
*/

#include "md_openmm.h"

/*
#endif
*/

but then i dont see md_openmm among the binaries. Does it just build as mdrun?

I tried compiling it with this flag hoping it would see this header
./configure CPPFLAGS="-DUSE_OPENMM"

But it did not compile

make[3]: Entering directory `/root/Download/gromacs-4.0.7/src/kernel'
/bin/sh ../../libtool --tag=CC --mode=link cc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-unused -funroll-all-loops -o mdrun glaasje.o gctio.o ionize.o do_gct.o repl_ex.o xutils.o md.o mdrun.o genalg.o libgmxpreprocess.la ../mdlib/libmd.la ../gmxlib/libgmx.la -lxml2 -lnsl -lfftw3f -lm -lSM -lICE -lX11
cc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-unused -funroll-all-loops -o mdrun glaasje.o gctio.o ionize.o do_gct.o repl_ex.o xutils.o md.o mdrun.o genalg.o ./.libs/libgmxpreprocess.a ../mdlib/.libs/libmd.a /root/Download/gromacs-4.0.7/src/gmxlib/.libs/libgmx.a ../gmxlib/.libs/libgmx.a -lxml2 -lnsl -lfftw3f -lm -lSM -lICE -lX11
md.o: In function `do_md':
md.c:(.text+0x64c): undefined reference to `openmm_init'
md.c:(.text+0xd7f): undefined reference to `openmm_take_one_step'
md.c:(.text+0xf05): undefined reference to `openmm_copy_state'
md.c:(.text+0x1423): undefined reference to `openmm_cleanup'
collect2: ld returned 1 exit status
make[3]: *** [mdrun] Error 1
make[3]: Leaving directory `/root/Download/gromacs-4.0.7/src/kernel'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/Download/gromacs-4.0.7/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/root/Download/gromacs-4.0.7/src'
make: *** [all-recursive] Error 1

User avatar
Peter Eastman
Posts: 2568
Joined: Thu Aug 09, 2007 1:25 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Peter Eastman » Tue Mar 23, 2010 3:01 pm

> Does it just build as mdrun?

Correct. We manually rename it to mdrun-openmm.

After copying the modified files for OpenMM into your Gromacs source directory, did you remember to rerun automake and autoconf? That's necessary, since one of the modified files is a Makefile.am.

Peter

User avatar
Jack Shultz
Posts: 77
Joined: Thu May 28, 2009 6:49 pm

RE: OpenMM Source Build Linux 32-bit tests failed

Post by Jack Shultz » Tue Mar 23, 2010 5:46 pm

I'm not sure how to regenerate the build system

[root@localhost gromacs-4.0.7]# automake
aclocal.m4:14: error: this file was generated for autoconf 2.61.
You have another version of autoconf. If you want to use that,
you should regenerate the build system entirely.
aclocal.m4:14: the top level
autom4te: /usr/bin/m4 failed with exit status: 63
automake: autoconf failed with exit status: 63

[root@localhost gromacs-4.0.7]# autoconf
aclocal.m4:14: error: this file was generated for autoconf 2.61.
You have another version of autoconf. If you want to use that,
you should regenerate the build system entirely.
aclocal.m4:14: the top level
autom4te: /usr/bin/m4 failed with exit status: 63
[root@localhost gromacs-4.0.7]#


POST REPLY