TL;DR - Two releases coming up : Where we at ?
Here’s a quick update of where we’re at1
Abinit is configured to build for:
- OS : u1404, sl6
- VERSION : 7.10.5
- GCC Version : 4.9.2, 5.1.0
All of the dependencies of Abinit are passing :
This is a good place to be, but abinit itself is failing on all targets due to the FFTW3 dependency. The error is described in #4.
TODO - check what kind of FFT Abinit wants.
GADGET is configured to be compiled with
The job is not yet complete, since the
deploy.sh scripts are missing. There seems to be some misconfiguration with the makefiles, which need to be checked.
Gromacs is configured for the targets:
- VERSION : 5.1.1
- GCC Version : 4.9.2, 5.1.0
- OpenMPI version : 1.8.1, 1.8.8
Gromacs depends on
as well as the aforementioned GCC and OpenMPI. GROMACS is currently suffering from the wrong FFTW configuration. The build is configured as :
However, this is failing with the following error message :
– pkg-config could not detect fftw3f, trying generic detection Could not find fftw3f library named libfftw3f, please specify its location in CMAKE_PREFIX_PATH or FFTWF_LIBRARY by hand (e.g. -DFFTWF_LIBRARY=’/path/to/libfftw3f.so’) CMake Error at cmake/gmxManageFFTLibraries.cmake:81 (MESSAGE):
Cannot find FFTW 3 (with correct precision - libfftw3f for mixed-precision GROMACS or libfftw3 for double-precision GROMACS). Either choose the right precision, choose another FFT(W) library (-DGMX_FFT_LIBRARY), enable the advanced option to let GROMACS build FFTW 3 for you (-DGMX_BUILD_OWN_FFTW=ON), or use the really slow GROMACS built-in fftpack library (-DGMX_FFT_LIBRARY=fftpack).
The error doesn’t seem to be in
CMAKE_PREFIX_PATH, so it is likely in one of the FFTW variables.
TODO : Find out how to specify the correct FFTW3 configuration
Update : 10/02 - fixed in d8e48ec5, however GROMACS in the repo only contains
mdp_mpi and none of the other executables. Need to revisit the configuration.
Python is one of the generic frameworks which is difficult to treat like the other applications in CODE-RADE, because it has it’s own package management tools and internal dependency management. It also doesn’t usually deal with modules, rather using it’s own
virtualenv to deal with different versions of Python and different modules within it. However, it can still be built from source, and the supporting applications which it uses -
easy_install, etc can be added to it. Care should be taken to use the python environment variables properly in order to ensure that the subsequent python modules such as those in the SciPy suite, are installed and delivered correctly.
The current overview of the status of python is :
Python currently depends on
which are all currently passing.
Python 2.6 and Python 2.7 are failing as follows.
Python 2.6 needs setuptools. This is downloaded as part of the build script, but fails immediately with :
It seems that Python has not built the sha256 library.
Python 2.7 seems to have passed
check-build, but when cleaning the build directory at the start of
deploy we get the following error :
This is thrown by the lines
This could easily be circumvented by a quick hack, but the origin of the problem is not understoo (yet)
Quantum Espresso is having issues compiling against the LAPACK libraries provided.
The Weather Research and Forecasting model is very widely used in meteorology and climatology. It depends on
- hdf5 (compiled with MPI)
- netcdf (compiled with MPI)
all of which are passing.
The project files are not yet ready, so this build is failing to find the scripts. Although the build has been tested locally using the artifacts in
fastrepo, this has only been done by hand and the scripts have not yet been committed to the repo.
There are several applications which have been proposed for the Public Release. Apart from those described above, we have the list below. A short summary of the status of each is given.
|GAMESS||HDF5||Dependencies all fulfilled, but not tested locally|
|Repast Symphony||Java||Dependencies all fulfilled, but not tested locally|
|ABySS||BOOST, Sqlite, SparseHash||SparseHash is not yet in Foundation Release, but is WIP.|
|OpenFOAM||BOOST, OpenMPI, gnuplot, readline, ncurses||gnuplot is not yet in Foundation Release.. The OpenFOAM job and repo are present, but only the build script is prepared.|
|AutoDock||None, apparently||Low hanging fruit ? Need to add the scripts to the repo and create the Jenkins job.|
|Velvet||OpenMP||Low hanging fruit ? Need to add the scripts to the repo and create the Jenkins job.|
|OASES||OpenMP, zlib, Velvet||Low hanging fruit ? Need to add the scripts to the repo and create the Jenkins job.|
|WEKA||Java JDK||JDK has been added with build 113 of fastrepo and WEKA has been tested manually. Compilation is not clear yet.|
|PLink||zlib (uses it's own compiled version), LAPACK||Manual tests have passed.|
|Pythia8||Several CLHEP and CERN libraries necessary||This one will take a while still.|
|FreeFem++||GSL, OpenMPI/MPICH, PETSc, LAPACK, BLAS, SuiteSparse, FFTW3, HDF5.||Most of these can be downloaded by the compilation scripts proivded by the package, but that would be a bit couter to the CODE-RADE philosophy.|
|CosmoMC||pmclib, CAMB, GSL, FFTW3, LAPACK, WMAP, fitsio||WMAP, pmclib, CAMB and WMAP are missing. The rest have been integrated. CAMB needs HealPix and Fisher. Work has started on Healpix|
|Gadget 2||FFTW2, GSL, HDF5||Work has started, the repo has been created as well as the job. Check and deploy scripts are still to be committed. FFWT2 needs to be compiled with MPICH, it is currently only compiled with OpenMPI|
|HTK||none||Low hanging fruit ? Need to add the scripts to the repo and create the Jenkins job.|
|MITML||none||Low hanging fruit ? Need to add the scripts to the repo and create the Jenkins job.|
|GAMA-Platform||Java JDK||JDK has been added with build 113 of fastrepo and Gama has been tested manually. Compilation is not clear yet.|
|IMA-2||none||Low hanging fruit ? Need to add the scripts to the repo and create the Jenkins job.|
The applications which have been described as low-hanging fruit are going to be added over the next few days. Significant work needs to be done for a few of the other ones, and lower-lying dependencies need to be added and compiled for different targets. We look forward to having some contribution from those interested, and using some of these as example applications in the upcoming Sci-GaIA winter school.
For now, let’s keep
Footnotes and References
We’ll report only on the user applications in the Public Release ↩