radical-cybertools / ExTASY

MDEnsemble
Other
1 stars 1 forks source link

CoCo not working on STAMPEDE due to changes in STAMPEDE #170

Closed ashkurti closed 9 years ago

ashkurti commented 9 years ago

To be rebuilt overwriting the currently installation directory.

vivek-bala commented 9 years ago

I tried using the new python/2.7.9 module, while loading I noticed the following note at the end (m).

Currently Loaded Modules:
  1) TACC-paths         5) mvapich2/1.9a2   9) python/2.7.9      13) amber/12.0
  2) Linux              6) xalt/0.4.6      10) mpi4py/1.3
  3) cluster-paths      7) cluster         11) netcdf/4.3.2 (m)
  4) intel/13.0.2.146   8) TACC            12) hdf5/1.8.13  (m)

  Where:
   (m):  built for host and native MIC

Running a job (https://gist.github.com/vivek-bala/6c7f3ffb755edb147666) with the following modules loaded gives the following error:

ImportError: netCDF4 package missing.
netcdf4-python with the netCDF and HDF5 libraries must be installed for the AMBER ncdf Reader.

Entire error: https://gist.github.com/vivek-bala/85c9a1d1b9ec27ffd5e5

The netcdf and hdf5 modules don't seem to be working with the python/2.7.9, I think. I'll create a ticket with TACC to confirm.

I created a local installation of CoCo for this from https://bitbucket.org/extasy-project/coco and modified PATH and PYTHONPATH.

ashkurti commented 9 years ago

CoCo is now installed on Stampede at the same directory accessible as previously, tested it locally on stampede and it is working!

vivek-bala commented 9 years ago

Some changes on Stampede modules seem to have caused this error. The fix, it seems, is to install netcdf directly from pip as it is not available with python 2.7.9. The python version used earlier was 2.7.3-epd. Reply for the TACC ticket:

 It was the netcdf4-python requirement that was causing the problem.

  I cleared everything out of .local, as you instructed, and installed
coco.
  Then I installed netcdf4-python (not with the github version and the
instructions there-- that didn't work), but using pip.
  After loading up the modules:

export PATH=$HOME/.local/bin:$PATH
export PYTHONPATH=$HOME/.local/lib/python2.7/site-packages:$PYTHONPATH

module load python/2.7.9
module load mpi4py
module load netcdf/4.3.2
module load hdf5/1.8.13
module load amber

I used the following command in my $HOME directory:
(cd )

  HDF5_DIR=$TACC_HDF5_DIR pip install netcdf4 --user

Then I used idev to get a note and interactively executed your command
(in my own directory)

ibrun -o 0 -n 16 /bin/bash "-l" "-c" "pyCoCo --grid 5 --dims 3
--frontpoints 16 --topfile penta.top --mdfile *.ncdf --output
pentaopt1 --logfile coco.log --mpi"

I got an annoying warning from each process:

home1/00770/milfeld/.local/lib/python2.7/site-packages/extasy.coco-
0.1-py2.7.egg/extasy/cofasu.py:528: FutureWarning: comparison to
`None` will result in an elementwise object comparison in the future.

but, otherwise the execution was successful (no error reported) and 16
files were created with names

pentaopt###.pdb

along with a tmp.pcz file.
ashkurti commented 9 years ago

After investigating several issues - as per emails - of the last few weeks, I have made a few changes to pyCoCo related to data structures that take "None" values at a cofasu level (lines 192-193 at https://bitbucket.org/extasy-project/coco/src/c0210da22d125a8e6545dca88fa4313e31f88353/src/extasy/cofasu.py?at=coco-0.8) when the rank does not match the id of the current thread. I have done this on a pyCoCo level though.

I have tagged the new version with the fixes as coco-0.9 and installed it on stampede at /work/02998/ardi/coco-0.9_installation/bin that I have made publicly accessible.

After testing it in both sequential and parallel environment things look to work. Please, consider this new version further on with extasy.