Size: 78350
Comment:
|
← Revision 523 as of 2015-07-02 11:28:20 ⇥
Size: 86086
Comment: http://theory.cm.utexas.edu/vtsttools/download.html
|
Deletions are marked like this. | Additions are marked like this. |
Line 24: | Line 24: |
We host a yum repository, which contains RPM packages of our software for the following systems: el (RedHat Enterprise Linux, or CentOS), fc (Fedora): | We host a yum repository, which contains RPM packages of our software for the following systems: el (RedHat Enterprise Linux, or CentOS), fc (Fedora), openSUSE (openSUSE): |
Line 32: | Line 33: |
**Note** on a RedHat system the value of $releasever in the `fys_el.repo` file need to be edited manually (changed for example into 5Client, 5Server, etc). **Note** on RedHat 6 or clone systems (Scientific Linux, CentOS) the value of $releasever in the `fys_el.repo` file may need to be edited manually (set explicitly to 6). |
|
Line 33: | Line 38: |
Moreover on a fc system you do not need to include any external repositories (epel, atrpms). | Moreover on a fc system you do not need to include any external repositories. **Note** on an openSUSE system download `fys_openSUSE.repo` instead and save it under `/etc/zypp/repos.d`, and use `fys_openSUSE` identifier in the command below. You need to include additional external openSUSE repositories: see `configure external repositories <https://wiki.fysik.dtu.dk/niflheim/Cluster_software_-_RPMS#configure-external-repos>`_ |
Line 39: | Line 48: |
**Note**: on el `configure external el repositories <https://wiki.fysik.dtu.dk/niflheim/Cluster_software_-_RPMS#configure-external-el-repos>`_ | **Note**: on el `configure external repositories <https://wiki.fysik.dtu.dk/niflheim/Cluster_software_-_RPMS#configure-external-repos>`_ |
Line 43: | Line 52: |
Line 48: | Line 56: |
mkdir fys && cd fys # fys directory stores downloaded RPMS yumdownloader --resolve --enablerepo=fys_el,epel,atrpms campos-dacapo-2.7.16 mkdir tmp && mv campos-dacapo-2.7.16* tmp yum -y localinstall * rpm -ivh --relocate "/usr"="/opt/campos-dacapo-2.7.16" tmp/campos-dacapo-* mv tmp/campos-dacapo-* . && rmdir tmp |
mkdir fys && cd fys # fys directory stores downloaded RPMS yumdownloader --resolve --enablerepo=fys_el,epel,atrpms campos-dacapo-2.7.16 mkdir tmp && mv campos-dacapo-2.7.16* tmp yum -y localinstall * rpm -ivh --relocate "/usr"="/opt/campos-dacapo-2.7.16" tmp/campos-dacapo-* mv tmp/campos-dacapo-* . && rmdir tmp |
Line 61: | Line 69: |
Configure external el repos =========================== |
On systems where you don't have root access you can consider downloading RPMS individually and extracting the contents of the RPMS, for example:: mkdir ~/fys && cd ~/fys rpm2cpio http://packages/pub/linux/fys/el/5/x86_64/campos-dacapo-pseudopotentials-1-2.el5.fys.noarch.rpm | cpio -idmv Configure external repos ======================== On openSUSE, as root: - enable the packman repository as described at http://opensuse-community.org/Repositories/Packman - add `multimedia:/photo` repository, e.g. for opensuse-11.2:: zypper addrepo --repo http://download.opensuse.org/repositories/multimedia:/photo/openSUSE_11.2/multimedia:photo.repo # python-sphinx is there!!! |
Line 108: | Line 130: |
Line 114: | Line 137: |
svn co https://svn.fysik.dtu.dk/projects/rpmbuild/trunk rpmbuild | svn co https://svn.fysik.dtu.dk/projects/rpmbuild/trunk ~/rpmbuild |
Line 121: | Line 144: |
**Note**: if installing on a system different than el5 edit the `rpm_platform` and `egg_info` variables. |
|
Line 161: | Line 186: |
yumdownloader --resolve texlive-latex emacs-auctex tex-preview | yumdownloader --resolve texlive-latex emacs-auctex tex-preview # Fedora yast -i Modules texlive-latex emacs-auctex # openSUSE yast -i python-gtk python-xml python-lxml # openSUSE yast -i python-matplotlib python-numpy # openSUSE yast -i gcc-fortran gcc44-fortran libgfortran44 # openSUSE-11.2 yast -i openmpi-devel blas lapack # openSUSE |
Line 164: | Line 194: |
yumdownloader --resolve gcc-gfortran blas-devel lapack-devel python-devel | yumdownloader --resolve gcc-gfortran blas-devel lapack-devel python-devel python-sphinx |
Line 171: | Line 201: |
yumdownloader --resolve gcc43-c++ gcc43-gfortran |
yumdownloader --resolve perl-XML-SAX # for exciting yumdownloader --resolve ImageMagick # for ASE3 yumdownloader --resolve gcc43-c++ gcc43-gfortran # only on EL5 == 5.2 |
Line 198: | Line 230: |
exclude=netcdf-* netcdf3-* fftw-* fftw2-* fftw3-* python-numeric openmpi-* libgfortran4* gcc4* libstdc++4* libgomp-* | exclude=netcdf-* netcdf3-* fftw-* fftw2-* fftw3-* python-numeric openmpi-* libgfortran4* gcc4* libstdc++4* libgomp-* ScientificPython-* |
Line 240: | Line 272: |
Install icc/ifort compilers (only on the login nodes, packages available under `/home/data/Intel` with restricted access), install (using ``rpm -ivh``) only the following packages from `l_cproc_p_11.1.046_intel64`:: intel-cproc046-11.1-1.x86_64.rpm intel-cproidb046-11.1-1.x86_64.rpm intel-cprolib046-11.1-1.x86_64.rpm intel-cprolibdev046-11.1-1.x86_64.rpm intel-cprotbblib046-11.1-1.noarch.rpm intel-cprotbblibdev046-11.1-1.noarch.rpm intel-cprocsdk046-11.1-1.noarch.rpm intel-cproidbsdk046-11.1-1.noarch.rpm and from `l_cprof_p_11.1.046_intel64`:: intel-cprof046-11.1-1.x86_64.rpm intel-cproflib046-11.1-1.x86_64.rpm intel-cprofsdk046-11.1-1.noarch.rpm , enable them (only on **thul**):: . /opt/intel/Compiler/11.1/046/bin/intel64/ifortvars_intel64.sh . /opt/intel/Compiler/11.1/046/bin/intel64/iccvars_intel64.sh Build intel compatibility packages (only on **thul**):: cd ~/rpmbuild/SPECS rpmbuild -bb ${modules_usage} intel-redist.spec |
**Note**: to enable new intell products upgrading of licenses may be necessary, see http://software.intel.com/en-us/articles/workaround-non-upgraded-serial-numbers-disappear-from-the-intel-registration-center-irc-list/ **Note**: intel changes packaging quite often, here are the installation instructions for the **12.0** compilers: - install RPMS (**only** on the login node) found in `l_ccompxe_2011.1.107` manually (using ``rpm -ivh``):: intel-{compilerpro,idb,idbcdt,ipp,sourcechecker,tbb}*noarch* # exclude intel-compilerpro-common if installed already by mkl intel-{compilerpro,idb,ipp,sourcechecker}*x86_64* and from `l_fcompxe_2011.1.107`:: intel-compilerprof*{noarch,x86_64}* - create a link (only on **thul**):: mkdir -p /opt/intel/Compiler/2011.1 cd /opt/intel/Compiler/2011.1 && ln -s /opt/intel/composerxe-2011.1.107 107 - build intel compatibility packages (only on **thul**):: cd ~/rpmbuild/SPECS rpmbuild -bb ${modules_usage} --with major_version=2011 --with version1=1 --with version2=107 intel-redist.spec |
Line 273: | Line 302: |
cp /scratch/rpmbuild/intel-11.1.046/11.1.046-1.intel64.${disttag} ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort | cp /scratch/rpmbuild/intel-2011.1.107/2011.1.107-1.intel64${disttag} ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort |
Line 275: | Line 304: |
ln -s 11.1.046-1.intel64.${disttag} 11.1-1 | ln -s 2011.1.107-1.intel64${disttag} 12.0-1 **Note**: modify the file so it contains at least:: setenv INTEL_LICENSE_FILE /opt/intel/licenses # generated by intel-redist.spec and installed on compute nodes prepend-path LD_LIBRARY_PATH /opt/intel/Compiler/2011.1/107/lib/intel64 # original locations from intel prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/compiler/lib/intel64 prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/debugger/lib/intel64 prepend-path PATH /opt/intel/composerxe-2011.1.107/bin/intel64 prepend-path MANPATH : prepend-path MANPATH /opt/intel/composerxe-2011.1.107/man # ipp prepend-path PATH /opt/intel/composerxe-2011.1.107/ipp/bin/intel64 prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/ipp/lib/intel64 # sourcechecker prepend-path PATH /opt/intel/composerxe-2011.1.107/bin/sourcechecker/bin/intel64 prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/bin/sourcechecker/lib/intel64 **Note**: intel changes packaging quite often, here are the installation instructions for the **11.1** compilers: - install RPMS (**only** on the login node) found in `l_cproc_p_11.1.046_intel64` manually (using ``rpm -ivh``):: intel-cproc046-11.1-1.x86_64.rpm intel-cproidb046-11.1-1.x86_64.rpm intel-cprolib046-11.1-1.x86_64.rpm intel-cprolibdev046-11.1-1.x86_64.rpm intel-cprotbblib046-11.1-1.noarch.rpm intel-cprotbblibdev046-11.1-1.noarch.rpm intel-cprocsdk046-11.1-1.noarch.rpm intel-cproidbsdk046-11.1-1.noarch.rpm and from `l_cprof_p_11.1.046_intel64`:: intel-cprof046-11.1-1.x86_64.rpm intel-cproflib046-11.1-1.x86_64.rpm intel-cprofsdk046-11.1-1.noarch.rpm - enable them (only on **thul**):: . /opt/intel/Compiler/11.1/046/bin/intel64/ifortvars_intel64.sh . /opt/intel/Compiler/11.1/046/bin/intel64/iccvars_intel64.sh - build intel compatibility packages as rpmbuild (only on **thul**):: cd ~/rpmbuild/SPECS rpmbuild -bb ${modules_usage} intel-redist.spec **Note**: do not install the RPMS generated in the last step on the login node. They need to be installed **only** on compute nodes. On the login node only the module file needs to be deployed under `~rpmbuild/modulefiles`, as rpmbuild. Note that this directory is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk. Here is what need to be done for a new version of the package:: mkdir ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort cp /scratch/rpmbuild/intel-11.1.046/11.1.046-1.intel64${disttag} ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort ln -s 11.1.046-1.intel64${disttag} 11.1-1 # version < 12 ln -s 2011.1.107-1.intel64${disttag} 2011.1.107-1 |
Line 287: | Line 376: |
- install RPMS (on the login and computes nodes) found in `l_cc_p_10.1.015_intel64.tar.gz` and `l_fc_p_10.1.015_intel64.tar.gz` manually (using ``rpm -ivh``):: | - install RPMS (on the login and compute nodes) found in `l_cc_p_10.1.015_intel64.tar.gz` and `l_fc_p_10.1.015_intel64.tar.gz` manually (using ``rpm -ivh``):: |
Line 315: | Line 404: |
- provide the module file `~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort/10.1.015-1.intel64.${disttag}`:: | - provide the module file `~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort/10.1.015-1.intel64${disttag}`:: |
Line 331: | Line 420: |
ln -s 10.1.015-1.intel64.${disttag} 10.1-1 | ln -s 10.1.015-1.intel64${disttag} 10.1-1 |
Line 341: | Line 430: |
Install mkl RPMS (`intel-mkl`, `intel-mkllibdev`, `intel-mkllib`), and build mkl compatibility package (only on **thul**):: |
Install mkl RPMS `intel-mkl-*`, `intel-openmp-*`, `intel-compilerpro-*` (`intel-mkl`, `intel-mkllibdev`, `intel-mkllib` for mkl version < 10.3), and build mkl compatibility package (only on **thul**):: # for mkl 10.3, as root cd /opt/intel/mkl # packaging of mkl changes again so link is necessary ln -s ../composerxe-2011.3.174/mkl/ 10.3.3.174 ln -s /opt/intel/composerxe-2011.3.174/man 10.3.3.174/man # as rpmbuild |
Line 344: | Line 438: |
export mkl=10.1.3.027 | export mkl=10.3.3.174 |
Line 347: | Line 441: |
cp -rp /opt/intel/mkl/${mkl}/doc ${mkl} | cp -rpf /opt/intel/mkl/${mkl}/doc ${mkl} # for mkl < 10.3 cp -rpf /opt/intel/composerxe-2011.3.174/compiler/lib ${mkl} # for mkl >= 10.3 |
Line 350: | Line 445: |
cd ~/rpmbuild/SPECS | cd ~/rpmbuild/SPECS # as rpmbuild rpmbuild -bb --with version1=3 --with version2=3 --with version3=174 ${modules_usage} --with platform=intel64 intel-redist-mkl.spec # **Warning**: mkl < 10.3 uses em64t |
Line 359: | Line 456: |
cp /tmp/intel-mkl-${mkl}/${mkl}-1.${disttag}.em64t ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl | cp /tmp/intel-mkl-${mkl}/${mkl}-1${disttag}.em64t ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl |
Line 361: | Line 458: |
ln -s ${mkl}-1.${disttag}.em64t 10.1p-027 | ln -s ${mkl}-1${disttag}.em64t 10.1p-027 |
Line 378: | Line 475: |
Unfortunately, from 10.3 version mkl depends on intel libraries located in directories outside of mkl. This causes troubles for numpy which requires (is there a way to fix that?) all non-standard libraries to be located in one directory. Therefore one may need to create a link (currently not performed):: cd /opt/intel/mkl/10.3.4.191/lib/intel64 ln -s /opt/intel/composerxe-2011.4.191/compiler/lib/intel64/libiomp5.so . |
|
Line 383: | Line 487: |
# openmpi-1.4.3 wget http://www.open-mpi.org/software/ompi/v1.4/downloads/openmpi-1.4.3.tar.bz2 \ -O ~/rpmbuild/SOURCES/openmpi-1.4.3.tar.bz2 module load open64/4.2.4-0 sh ./buildrpm-1.4.3-1.open64.4.2.4.sh ../SOURCES/openmpi-1.4.3.tar.bz2 2>&1 | tee buildrpm-1.4.3-1.open64.4.2.4.sh.log.${FYS_PLATFORM} module unload open64/4.2.4-0 module load ifort/12.0-4 sh ./buildrpm-1.4.3-1.ifort.12.0.4.sh ../SOURCES/openmpi-1.4.3.tar.bz2 2>&1 | tee buildrpm-1.4.3-1.ifort.12.0.4.sh.log.${FYS_PLATFORM} # thul only module unload ifort/12.0-4 # openmpi-1.3.3 |
|
Line 402: | Line 517: |
rpm -ivh --nodeps --oldpackage ~rpmbuild/${FYS_PLATFORM}/RPMS/openmpi-1.3.3-1.${disttag}.ifort.11.1.x86_64.rpm | rpm -ivh --nodeps --oldpackage ~rpmbuild/${FYS_PLATFORM}/RPMS/openmpi-1.3.3-1${disttag}.ifort.11.1.x86_64.rpm |
Line 433: | Line 548: |
# . fys.set.Niflheim.open64.4.2.1.sh . fys.set.blas.acml.4.3.0.sh . fys.build.acml.sh |
|
Line 455: | Line 565: |
Line 491: | Line 602: |
`GotoBLAS <http://www.tacc.utexas.edu/resources/software/#blas>`_ contains optimized BLAS libraries, and is available for academic community after registration. Does not work in Intel Nehalem. Download **GotoBLAS-1.26.tar.gz** (**Warning** outdated release of GotoBLAS is no longer available) and **GotoBLAS2-1.23.tar.gz** (supports Nehalem) to ~/rpmbuild/SOURCES. |
`GotoBLAS <http://www.tacc.utexas.edu/tacc-projects/gotoblas2/>`_ contains optimized BLAS libraries. Download **GotoBLAS-1.26.tar.gz** (**Warning** outdated release of GotoBLAS is no longer available) and **GotoBLAS2-1.13_bsd.tar.gz** (supports Nehalem) to ~/rpmbuild/SOURCES. |
Line 501: | Line 611: |
blas_version=1.26 | |
Line 504: | Line 613: |
(rpm_prefix=/usr && . fys.build.goto.sh) | (rpm_prefix=/usr && . fys.build.goto2.sh) |
Line 508: | Line 617: |
. fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.goto2.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.goto2.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.build.goto2.sh # . fys.set.Niflheim.open64.4.2.4.sh . fys.build.goto2.sh # older version of goto # |
|
Line 538: | Line 668: |
GotoBLAS2:: . fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.goto2.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.goto2.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.build.goto2.sh |
|
Line 671: | Line 785: |
module load python-setuptools module load python-nose |
|
Line 689: | Line 806: |
module load ${blas}-${compiler}64/${blas_version}-1.${disttag} module load cblas-${blas}-${compiler}64/2.23.3-1.${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version} module load numpy/1.3.0-1.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} |
module load ${blas}-${compiler}64/${blas_version}-1${disttag} module load cblas-${blas}-${compiler}64/2.23.3-1${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version} module load numpy/1.3.0-1${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} |
Line 757: | Line 874: |
module load ${blas}-${compiler}64/${blas_version}-1.${disttag} module load cblas-${blas}-${compiler}64/2.23.3-1.${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version} module load python-numeric/24.2-4.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} |
module load ${blas}-${compiler}64/${blas_version}-1${disttag} module load cblas-${blas}-${compiler}64/2.23.3-1${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version} module load python-numeric/24.2-4${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} |
Line 761: | Line 878: |
ldd `rpm -ql python-numeric-24.2-4.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep lapack_lite.so` ldd `rpm -ql python-numeric-24.2-4.${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep _dotblas.so` |
ldd `rpm -ql python-numeric-24.2-4${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep lapack_lite.so` ldd `rpm -ql python-numeric-24.2-4${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep _dotblas.so` |
Line 775: | Line 892: |
hdf5 ---- `HDF5 <http://www.hdfgroup.org/HDF5/>`_ is a data model, library, and file format for storing and managing data. We prefer version `1.8.6 <http://www.hdfgroup.org/HDF5/release/obtain5.html>`_. On a custom system build the following RPMS:: . fys.set.gfortran.default.sh . fys.set.openmpi.default.sh (rpm_prefix=/usr && . fys.build.hdf5.sh) On Niflheim build the following RPMS:: # module load open64/4.2.4-0 . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.build.hdf5.1.8.6.sh module unload open64/4.2.4-0 # older builds # . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh # module load open64/4.2.3-0 . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh module unload open64/4.2.4-0 # only on thul module load ifort/11.1-1 . fys.set.Niflheim.ifort.11.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh module unload ifort/11.1-1 |
|
Line 793: | Line 964: |
# . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.netcdf4.4.1.2.sh . fys.build.netcdf4.4.1.2.sh # older builds # |
|
Line 827: | Line 1006: |
# only on thul . fys.set.Niflheim.ifort.11.1.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh etsf_io ------- `ETSF_IO <http://www.etsf.eu/resources/software/libraries_and_tools>`_ A library of F90 routines to read/write the ETSF file format has been written. It is called ETSF_IO and available under LGPL. On a custom system build the following RPMS:: . fys.set.gfortran.default.sh . fys.set.netcdf.default.sh . fys.set.hdf5.default.sh (. fys.build.etsf_io.sh) On Niflheim build the following RPMS:: # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.netcdf4.4.0.1.sh hdf=none . fys.build.etsf_io.sh # Oct 4 2010: fatal error: gfc_todo: Not Implemented: complex character array constructors . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.netcdf4.4.0.1.sh hdf=none . fys.build.etsf_io.sh # Oct 04 2010: tests/group_level failed . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh hdf=none . fys.build.etsf_io.sh # Apr 18 2010: tests/group_level failed . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.netcdf4.4.1.2.sh hdf=none . fys.build.etsf_io.sh |
|
Line 872: | Line 1101: |
On Niflheim build the following RPMS:: . fys.build.docutils.0.5.sh If using modules:: |
On Niflheim build the following RPMS:: . fys.build.docutils.0.5.sh If using modules:: |
Line 880: | Line 1109: |
else, if not using the default "/usr" prefix:: | else, if not using the default "/usr" prefix:: |
Line 891: | Line 1120: |
On Niflheim build the following RPMS:: . fys.build.pytz.2008g.sh If using modules:: |
On Niflheim build the following RPMS:: . fys.build.pytz.2008g.sh If using modules:: |
Line 899: | Line 1128: |
else, if not using the default "/usr" prefix:: | else, if not using the default "/usr" prefix:: |
Line 910: | Line 1139: |
On Niflheim build the following RPMS:: . fys.build.python-dateutil.1.4.1.sh If using modules:: |
On Niflheim build the following RPMS:: . fys.build.python-dateutil.1.4.1.sh If using modules:: |
Line 918: | Line 1147: |
else, if not using the default "/usr" prefix:: | else, if not using the default "/usr" prefix:: |
Line 927: | Line 1156: |
(rpm_prefix=/usr && . fys.build.python-matplotlib.0.99.1.2.sh) On Niflheim build the following RPMS:: . fys.build.python-matplotlib.0.99.1.2.sh |
(rpm_prefix=/usr && . fys.build.python-matplotlib.sh) On Niflheim build the following RPMS:: module load NUMPY module load python-docutils module load pytz module load python-dateutil . fys.build.python-matplotlib.1.0.1.sh |
Line 940: | Line 1174: |
On Niflheim build the following RPMS:: . fys.build.ase2.2.3.13.sh |
On Niflheim build the following RPMS:: . fys.build.ase2.2.3.13.sh |
Line 981: | Line 1215: |
# . fys.set.Niflheim.open64.4.2.4.sh . fys.build.fftw2.2.1.5.sh |
|
Line 989: | Line 1228: |
**Note** this package is **not** relocatable! .. _campos-dacapo-pseudopotentials-1.tar.gz: attachment:campos-dacapo-pseudopotentials-1.tar.gz campos-dacapo-pseudopotentials-1.tar.gz_ |
**Note** this package is **not** relocatable! `campos-dacapo-pseudopotentials`_ .. _campos-dacapo-pseudopotentials: http://wiki.fysik.dtu.dk/dacapo-files/campos-dacapo-pseudopotentials-2.tar.gz |
Line 1019: | Line 1256: |
Note that FC's fftw version 3 is incompatible with `dacapo`. | **Note**: fftw version 3 is incompatible with `dacapo`. |
Line 1046: | Line 1283: |
# . fys.set.Niflheim.dacapo.2.7.16.open64.4.2.4.openmpi.1.4.3.acml.4.4.0.acml.4.4.0.fftw2.sh hdf=none . fys.build.dacapo.sh # older builds # |
|
Line 1124: | Line 1369: |
# . fys.set.Niflheim.open64.4.2.4.sh . fys.build.fftw3.3.2.1.sh # only on thul . fys.set.Niflheim.ifort.11.1.sh . fys.build.fftw3.3.2.1.sh |
|
Line 1242: | Line 1495: |
cd ~/rpmbuild/SOURCES&& wget http://ftp.gnu.org/pub/gnu/auctex/auctex-11.85.tar.gz | cd ~/rpmbuild/SOURCES&& wget http://ftp.gnu.org/pub/gnu/auctex/auctex-11.86.tar.gz |
Line 1256: | Line 1509: |
module load NUMPY | |
Line 1264: | Line 1518: |
release=${major_version}.${version1}.${version2}.${version_svn}/1.${disttag}.python${python_version} | release=${major_version}.${version1}.${version2}.${version_svn}/1${disttag}.python${python_version} |
Line 1269: | Line 1523: |
rm /home/camp/rpmbuild/Intel-Nehalem-el5/RPMS/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1.${disttag}.python${python_version}.x86_64.rpm dir=~/Intel-Nehalem-el5/BUILD/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1.${disttag}.python${python_version}-root ln -s ${dir}/etc/modulefiles/campos-ase3/${major_version}.${version1}.${version2}.${version_svn}-1.${disttag}.python${python_version} \ |
rm /home/camp/rpmbuild/Intel-Nehalem-el5/RPMS/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1${disttag}.python${python_version}.x86_64.rpm dir=~/Intel-Nehalem-el5/BUILD/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1${disttag}.python${python_version}-root ln -s ${dir}/etc/modulefiles/campos-ase3/${major_version}.${version1}.${version2}.${version_svn}-1${disttag}.python${python_version} \ |
Line 1289: | Line 1543: |
. fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.build.blacs.sh # older builds # |
|
Line 1317: | Line 1578: |
Line 1346: | Line 1608: |
# . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.2.0.1.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.2.0.1.sh # old builds . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # |
|
Line 1352: | Line 1652: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.0.1.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh |
Line 1361: | Line 1670: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1370: | Line 1679: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh # old old builds |
Line 1379: | Line 1689: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1388: | Line 1699: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1397: | Line 1708: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1407: | Line 1718: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1416: | Line 1727: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1426: | Line 1737: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1435: | Line 1746: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1443: | Line 1754: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1451: | Line 1762: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1460: | Line 1771: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1469: | Line 1780: |
. fys.build.scalapack.sh | . fys.build.scalapack.1.8.0.sh |
Line 1529: | Line 1840: |
On Niflheim build the following RPMS:: |
On Niflheim load first the required modules:: module load ASE3 module load campos-gpaw-setups and build the following RPMS:: . fys.set.Niflheim.gpaw.0.6.5147.open64.4.2.3.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh . fys.build.gpaw.sh # older builds # . fys.set.Niflheim.gpaw.0.6.5147.open64.4.2.4.openmpi.1.4.3.goto2.1.13.acml.4.4.0.sh . fys.build.gpaw.sh # . fys.set.Niflheim.gpaw.0.6.5147.open64.4.2.3.openmpi.1.3.3.goto2.1.13.acml.4.4.0.sh . fys.build.gpaw.sh # |
Line 1620: | Line 1950: |
# # note gpaw version 0.6 --with sl_init_second_underscore=1 is necessary for rpmbuild . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh |
|
Line 1714: | Line 2032: |
# module load ASE3 . fys.set.Niflheim.Asap.3.2.6.open64.4.2.4.openmpi.1.4.3.sh . fys.build.Asap.sh # module load ASE3 . fys.set.Niflheim.Asap.3.2.6.open64.4.2.3.openmpi.1.3.3.sh . fys.build.Asap.sh |
|
Line 1715: | Line 2045: |
module load ASE3 | |
Line 1720: | Line 2051: |
. fys.set.Niflheim.Asap.3.2.6.ifort.11.0.openmpi.1.3.3.sh | module load ASE3 module load ifort/11.1-1 . fys.set.Niflheim.Asap.3.2.6.ifort.11.1.openmpi.1.3.3.sh |
Line 1727: | Line 2060: |
**Note** this package is **not** relocatable! .. _abinit-pseudopotentials-1.tar.gz: attachment:abinit-pseudopotentials-1.tar.gz abinit-pseudopotentials-1.tar.gz_ |
|
Line 1735: | Line 2062: |
On a custom system build the following RPMS:: (default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.abinit-pseudopotentials.1.sh) On Niflheim build the following RPMS:: . fys.build.abinit-pseudopotentials.1.sh |
**Note** this package is **not** relocatable! `abinit-pseudopotentials`_ .. _abinit-pseudopotentials: http://wiki.fysik.dtu.dk/abinit-files/abinit-pseudopotentials-2.tar.gz On a custom system build the following RPMS:: (default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.abinit-pseudopotentials.sh) On Niflheim build the following RPMS:: . fys.build.abinit-pseudopotentials.sh |
Line 1757: | Line 2088: |
hdf=none | |
Line 1801: | Line 2133: |
netcdf_includedir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/include netcdf_libdir=/opt/${netcdf}/4.0.1/1.${disttag}.${compiler}.${compiler_version}/lib64 |
netcdf_includedir=/opt/${netcdf}/4.0.1/1${disttag}.${compiler}.${compiler_version}/include netcdf_libdir=/opt/${netcdf}/4.0.1/1${disttag}.${compiler}.${compiler_version}/lib64 |
Line 1804: | Line 2136: |
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin |
ompi_libdir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/bin |
Line 1808: | Line 2140: |
blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64 | blacsdir=/opt/blacs/1.1/24${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64 |
Line 1810: | Line 2142: |
scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64 release=1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version} |
scalapackdir=/opt/scalapack/1.8.0/1${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64 release=1${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version} |
Line 1869: | Line 2201: |
# version 5.0.1 . fys.set.Niflheim.espresso.5.0.1.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh . fys.build.espresso.5.sh |
|
Line 1880: | Line 2216: |
. fys.set.yambo.3.2.1.448.default.sh | . fys.set.yambo.default.sh |
Line 1887: | Line 2223: |
# Nov 15 2010: ETSF compilation part fails with "Error: Symbol 'default_tel' at (1) has no IMPLICIT type": see http://www.yambo-code.org/forum/viewtopic.php?f=1&t=266 . fys.set.Niflheim.yambo.3.2.3.16.gfortran43.4.3.2.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh hdf=none . fys.build.yambo.sh # |
|
Line 1888: | Line 2230: |
hdf=none | |
Line 1893: | Line 2236: |
hdf=none . fys.build.yambo.sh - yambo NON-GPL This is a NON-GPL version of yambo. On Niflheim build the following RPMS:: . fys.set.Niflheim.yambo-ngpl.3.2.3.735M.gfortran43.4.3.2.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh hdf=none |
|
Line 1907: | Line 2262: |
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.elk-species.1.0.0.sh) On Niflheim build the following RPMS:: . fys.build.elk-species.1.0.0.sh |
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.elk-species.sh) On Niflheim build the following RPMS:: . fys.build.elk-species.sh |
Line 1918: | Line 2273: |
. fys.set.atlas.default.sh (rpm_prefix=/usr && thread_mode=mp && . fys.build.elk.1.0.0.sh) On Niflheim build the following RPMS:: . fys.set.Niflheim.gfortran43.4.3.2.sh |
. fys.set.openmpi.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh (rpm_prefix=/usr && thread_mode=mp && . fys.build.elk.sh) On Niflheim build the following RPMS:: # OpenMP with MPI version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh |
Line 1928: | Line 2287: |
(thread_mode=mp && . fys.build.elk.1.0.0.sh) | (thread_mode=mp && . fys.build.elk.sh) # OpenMP version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.blas.acml.4.3.0_mp.sh . fys.set.lapack.acml.sh (thread_mode=mp && . fys.build.elk.sh) # MPI version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh (thread_mode=nomp && . fys.build.elk.sh) |
Line 1954: | Line 2328: |
--with prefix=/opt/vtkdata/5.4.2/1.${disttag} vtkdata.spec | --with prefix=/opt/vtkdata/5.4.2/1${disttag} vtkdata.spec |
Line 1968: | Line 2342: |
ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin |
ompi_libdir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/bin |
Line 1980: | Line 2354: |
--with prefix=/opt/vtk/5.4.2/1.${disttag_network}.${compiler}.${compiler_version}.python${python_version}.openmpi.${openmpi_version} vtk.spec | --with prefix=/opt/vtk/5.4.2/1${disttag_network}.${compiler}.${compiler_version}.python${python_version}.openmpi.${openmpi_version} vtk.spec |
Line 2093: | Line 2467: |
`vasp <http://cms.mpi.univie.ac.at/vasp/>`_. Download ``vasp.5.X.tar.gz`` and ``vasp.5.lib.tar.gz`` to ``~/rpmbuild/SOURCES``. Optionally download also ``vtstcode.tar.gz`` from http://theory.cm.utexas.edu/vtsttools/downloads/. |
`vasp <http://cms.mpi.univie.ac.at/vasp/>`_. Download ``vasp.5.X.Y.tar.gz`` and ``vasp.5.lib.tar.gz`` to ``~/rpmbuild/SOURCES``. Optionally download also ``vtstcode.tar.gz`` from http://theory.cm.utexas.edu/vtsttools/download.html. |
Line 2099: | Line 2473: |
hdf=none | |
Line 2100: | Line 2475: |
if [ "$tst" == "false" ]; then vasp_tst='.' else vasp_tst='.tst.' fi . fys.set.gfortran.default.sh . fys.set.openmpi.default.sh . fys.set.netcdf.default.sh . fys.set.fftw3.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh blacs=none scalapack=none major_version=5 version1=2 release=1.${disttag_network}${vasp_tst}${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}.${fftw} |
. fys.set.vasp.5.2.11.default.sh |
Line 2123: | Line 2482: |
# gfortran 4.1.2 is the only of our compilers that works! MD 6 Oct 2011 | |
Line 2124: | Line 2484: |
hdf=none | |
Line 2126: | Line 2487: |
. fys.set.Niflheim.vasp.5.2.gfortran.4.1.2.openmpi.1.3.3.acml.4.0.1.acml.4.0.1.sh | . fys.set.Niflheim.vasp.5.2.12.gfortran.4.1.2.openmpi.1.3.3.acml.4.0.1.acml.4.0.1.fftw3.sh |
Line 2131: | Line 2492: |
. fys.set.Niflheim.vasp.5.2.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh |
hdf=none tst=false # or true . fys.set.Niflheim.vasp.5.2.2.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.fftw3.sh |
Line 2136: | Line 2499: |
. fys.set.Niflheim.vasp.5.2.open64.4.2.3.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh | # 11 May 2010: in dfast.f90"LINCOM" is the name of this program unit, therefore it must not be use associated from module "DFAST". hdf=none tst=false # or true . fys.set.Niflheim.vasp.5.2.2.open64.4.2.3.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.fftw3.sh . fys.build.vasp.sh # # only on thul # 15 Feb 2011; 6 Oct 2011: forrtl: severe (174): SIGSEGV, segmentation fault occurred during DAV hdf=none tst=false # or true . fys.set.Niflheim.vasp.5.2.12.ifort.11.1.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.fftw3.sh |
Line 2175: | Line 2551: |
# March 12 2010: build fails on el5 with gfortran 4.1.2 and 4.3.2 . fys.set.gfortran.default.sh . fys.set.openmpi.default.sh . fys.set.arpack.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh (rpm_prefix=/usr && thread_mode=nomp && . fys.build.exciting.9.10.sh) |
|
Line 2199: | Line 2584: |
Build the following RPMS:: cd ~/rpmbuild/SPECS major_version=25 version1=g if [ "$version1" == "None" ]; then fleur_version=${major_version} else fleur_version=${major_version}.${version1} fi compiler=gfortran43 # compiler_version=4.3.2 compiler_libdir=/usr/lib64 compiler_bindir=/usr/bin blas=acml blas_version=4.3.0 blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib lapack=acml lapack_version=4.3.0 lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib openmpi_version=1.3.3 ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin blacs=blacs blacsdir=/opt/blacs/1.1/24.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64 scalapack=scalapack scalapackdir=/opt/scalapack/1.8.0/1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64 release=1.${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version} rpmbuild --bb --with major_version=${major_version} --with version1=${version1} \ --with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \ --with compiler=${compiler} --with compiler_version=${compiler_version} \ --with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \ --with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \ --with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \ --with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \ --with blacs=${blacs} --with blacsdir=${blacsdir} \ --with scalapack=${scalapack} --with scalapackdir=${scalapackdir} \ ${modules_usage} --with default_version=1 \ --with system=${rpm_platform} \ --with prefix=/opt/fleur/${fleur_version}/${release} fleur.spec module load g95 # only on fjorm compiler=g95 # only on fjorm compiler_version=0.91 compiler_libdir=/opt/g95/0.91/lib/gcc-lib/x86_64-unknown-linux-gnu/4.0.3 compiler_bindir=/opt/g95/0.91/bin blas=blas blas_version=3.0.37.el5 blasdir=/usr/lib64 lapack=lapack lapack_version=${blas_version} lapackdir=/usr/lib64 openmpi_version=1.3.3 ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin blacs=none scalapack=none release=1.${disttag_network}.${compiler}.${compiler_version}.${thread_mode}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version} !rpmbuild # as rpmbuild above module load ifort # only on thul compiler=ifort # only on thul compiler_version=11.0 compiler_libdir=/opt/intel/Compiler/11.0/083/lib/intel64 compiler_bindir=/opt/intel/Compiler/11.0/083/bin/intel64 blas=mkl blas_version=10.1.3.027 blasdir=/opt/intel/${blas}/${blas_version}/lib/em64t lapack=mkl_lapack lapack_version=${blas_version} lapackdir=${blasdir} openmpi_version=1.3.3 ompi_libdir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1.${disttag_network}.${compiler}.${compiler_version}/bin blacs=mkl blacsdir=${blasdir} scalapack=mkl scalapackdir=${blasdir} release=1.${disttag_network}.${compiler}.${compiler_version}.${thread_mode}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version} !rpmbuild # as rpmbuild above |
On a custom system build the following RPMS:: . fys.set.fleur.default.sh (rpm_prefix=/usr && . fys.build.fleur.sh) On Niflheim build the following RPMS:: . fys.set.Niflheim.fleur.v26b.gfortran43.4.3.2.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh . fys.build.fleur.sh # only on thul # Sep 04 2010: build fails with forrtl: severe (174): SIGSEGV, segmentation fault occurred . fys.set.Niflheim.fleur.v26b.ifort.11.0.openmpi.1.3.3.mkl.10.1.3.027.mkl_lapack.10.1.3.027.sh . fys.build.fleur.sh |
Line 2300: | Line 2609: |
Build the following RPMS:: major_version=3 version1=4 cd ~/rpmbuild/SPECS thread_mode=nomp compiler=gfortran43 compiler_version=4.3.2 compiler_libdir=/usr/lib64 compiler_bindir=/usr/bin blas=acml blas_version=4.3.0 blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib lapack=acml lapack_version=4.3.0 lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version} rpmbuild --bb --with major_version=${major_version} --with version1=${version1} \ --with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \ --with compiler=${compiler} --with compiler_version=${compiler_version} \ --with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \ --with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \ --with thread_mode=${thread_mode} --with parallel=1 \ ${modules_usage} --with default_version=1 \ --with system=${rpm_platform} \ --with prefix=/opt/gulp/${major_version}.${version1}/${release} gulp.spec # multithreaded thread_mode=mp compiler=gfortran43 compiler_version=4.3.2 compiler_libdir=/usr/lib64 compiler_bindir=/usr/bin blas=acml blas_version=4.3.0 blasdir=/opt/${blas}/${blas_version}/${compiler}64_${thread_mode}/lib lapack=acml lapack_version=4.3.0 lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64_${thread_mode}/lib release=1.${disttag}.${compiler}.${compiler_version}.${thread_mode}.${blas}.${blas_version}.${lapack}.${lapack_version} !rpmbuild # as rpmbuild above |
On a custom system build the following RPMS:: . fys.set.gfortran.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh (rpm_prefix=/usr && thread_mode=mp && . fys.build.gulp.sh) On Niflheim build the following RPMS:: # OpenMP version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.blas.acml.4.3.0_mp.sh . fys.set.lapack.acml.sh (thread_mode=mp && . fys.build.gulp.sh) |
Line 2363: | Line 2644: |
version_svn=51 | # if needed, create tar file |
Line 2366: | Line 2647: |
rpmbuild -bb --with version_svn=${version_svn} \ ${default_version_usage} ${modules_usage} --with cmr_repository="/home/niflheim/repository/db" \ --with prefix=/opt/cmr/${version_svn}/1.${disttag}.python${python_version} cmr.spec |
. fys.build.cmr.sh |
This page below describes:
- configuration of the fys yum repository,
- the necessary steps to build RPM software packages on a custom RPM-based (currently el, fc) system and the login nodes fjorm or thul.
Warning: campos-dacapo-python provides a python interface to campos-dacapo Fortran code, through campos-ase2. On a 64-bit machine campos-ase2 works only with python <= 2.4, due to the unmaintained python-numeric package. Users on modern systems can use instead the campos-ase3 package and skip installation of any packages related to campos-ase2.
Warning: on 64-bit machines el5 installs often only 32-bit versions of packages. Please verify that 64-bit versions are installed, otherwise run the corresponding yum install package again.
Contents
- Configure fys yum repository
- Configure external repos
- Configure rpmbuild
- Install external packages
- It's time to build custom RPMS
- compilers and tools
- openmpi
- acml
- goto
- atlas
- rasmol
- cblas
- python-setuptools
- python-nose
- numpy
- gnuplot-py
- python-numeric
- hdf5
- netcdf
- etsf_io
- ScientificPython 2.6.2
- ScientificPython 2.8 or later
- python-docutils
- pytz
- python-dateutil
- python-matplotlib
- campos-ase2
- fftw2
- campos-dacapo-pseudopotentials
- campos-dacapo-python
- campos-dacapo
- fftw3
- scipy
- povray
- babel
- python-jinja2
- python-pygments
- python-sphinx
- auctex
- campos-ase3
- blacs
- scalapack
- PDSYEVRnew
- campos-gpaw-setups
- campos-gpaw
- Asap
- abinit
- siesta
- espresso
- yambo
- elk
- vtk
- octopus
- TAU
- vasp
- exciting
- fleur
- gulp
- cmr
- Testing packages
Configure fys yum repository
We host a yum repository, which contains RPM packages of our software for the following systems: el (RedHat Enterprise Linux, or CentOS), fc (Fedora), openSUSE (openSUSE):
configure fys yum repository:
yum -y install yum-utils wget cd /etc/yum.repos.d wget --no-check-certificate https://svn.fysik.dtu.dk/projects/rpmbuild/trunk/SOURCES/fys_el.repo
Note on a RedHat system the value of $releasever in the fys_el.repo file need to be edited manually (changed for example into 5Client, 5Server, etc).
Note on RedHat 6 or clone systems (Scientific Linux, CentOS) the value of $releasever in the fys_el.repo file may need to be edited manually (set explicitly to 6).
Note on a Fedora system download fys_fc.repo instead, and use fys_fc identifier in the command below. Moreover on a fc system you do not need to include any external repositories.
Note on an openSUSE system download fys_openSUSE.repo instead and save it under /etc/zypp/repos.d, and use fys_openSUSE identifier in the command below. You need to include additional external openSUSE repositories: see configure external repositories
list all packages available in the fys yum repository, maybe you need some of them?:
yum list available --disablerepo=* --enablerepo=fys_el
Note: on el configure external repositories as installation of most packages requires enabling epel or atrpms repositories:
yum -y install --enablerepo=fys_el,epel,atrpms campos-dacapo
Note: most of the fys packages are relocatable with the default prefix of /usr. As an example one installs campos-dacapo into the /opt/campos-dacapo-2.7.16 prefix as follows:
mkdir fys && cd fys # fys directory stores downloaded RPMS yumdownloader --resolve --enablerepo=fys_el,epel,atrpms campos-dacapo-2.7.16 mkdir tmp && mv campos-dacapo-2.7.16* tmp yum -y localinstall * rpm -ivh --relocate "/usr"="/opt/campos-dacapo-2.7.16" tmp/campos-dacapo-* mv tmp/campos-dacapo-* . && rmdir tmp
Have a look at the /opt/campos-dacapo-2.7.16/share/campos-dacapo/*.*sh to see what environment variables need to be set in case of an installation into a non-default prefix. There is also a template modulefile /opt/campos-dacapo-2.7.16/share/campos-dacapo/campos-dacapo-2.7.16* that contains `prereq`ired modules (modulefiles surely are different on your system).
On systems where you don't have root access you can consider downloading RPMS individually and extracting the contents of the RPMS, for example:
mkdir ~/fys && cd ~/fys rpm2cpio http://packages/pub/linux/fys/el/5/x86_64/campos-dacapo-pseudopotentials-1-2.el5.fys.noarch.rpm | cpio -idmv
Configure external repos
On openSUSE, as root:
enable the packman repository as described at http://opensuse-community.org/Repositories/Packman
add multimedia:/photo repository, e.g. for opensuse-11.2:
zypper addrepo --repo http://download.opensuse.org/repositories/multimedia:/photo/openSUSE_11.2/multimedia:photo.repo # python-sphinx is there!!!
On RedHat Enterprise Linux or CentOS, as root:
- create yum repository definitions (do not enable them):
official way: follow ATrpms installation instructions and edit /etc/yum.repos.d/atrpms.repo so it contains:
enabled=0fast way:
echo '[atrpms]' > /etc/yum.repos.d/atrpms.repo echo 'name=CentOS $releasever - $basearch - ATrpms' >> /etc/yum.repos.d/atrpms.repo echo 'baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable' >> /etc/yum.repos.d/atrpms.repo echo '#baseurl=http://mirrors.ircam.fr/pub/atrpms/el$releasever-$basearch/atrpms/stable' >> /etc/yum.repos.d/atrpms.repo echo 'gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms' >> /etc/yum.repos.d/atrpms.repo echo 'gpgcheck=1' >> /etc/yum.repos.d/atrpms.repo echo 'enabled=0' >> /etc/yum.repos.d/atrpms.repoEPEL:
official way: follow EPEL/FAQ/howtouse and edit /etc/yum.repos.d/epel.repo so it contains:
enabled=0fast way:
echo '[epel]' > /etc/yum.repos.d/epel.repo echo 'name=CentOS $releasever - $basearch - EPEL' >> /etc/yum.repos.d/epel.repo echo 'baseurl=http://download.fedora.redhat.com/pub/epel/$releasever/$basearch' >> /etc/yum.repos.d/epel.repo echo 'gpgkey=http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL' >> /etc/yum.repos.d/epel.repo echo 'gpgcheck=1' >> /etc/yum.repos.d/epel.repo echo 'enabled=0' >> /etc/yum.repos.d/epel.repo
install, as root:
yum install yum-utils wget # /var directories must be created yum search --enablerepo=atrpms arpack-devel yum search --enablerepo=epel jmol
Configure rpmbuild
create and retrieve the rpmbuild project (as rpmbuild user):
cd svn co https://svn.fysik.dtu.dk/projects/rpmbuild/trunk ~/rpmbuild
include the rpmbuild environment configuration script in ~/.bashrc:
copy the script:
cp ~/rpmbuild/SOURCES/.bashrc_rpmbuild ~/Note: if installing on a system different than el5 edit the rpm_platform and egg_info variables.
and add the following to ~/.bashrc:
if [ -r "${HOME}/.bashrc_rpmbuild" ]; then . ${HOME}/.bashrc_rpmbuild fiNote on Niflheim the variables:
export FYS_PLATFORM=Intel-Nehalem-el5 # thul export FYS_PLATFORM=AMD-Opteron-el5 # fjormwill be set automatically by /home/camp/modulefiles.sh if the environment-modules package is installed.
create temporary directory:
mkdir -p /scratch/$USER
apply settings from ~/.bashrc by:
. ~/.bashrc
use the following ~rpmbuild/.rpmmacros:
cp ~/rpmbuild/SOURCES/.rpmmacros ~/
create directories:
mkdir -p ~/${FYS_PLATFORM}/{RPMS,SRPMS,BUILD} mkdir -p ~/${FYS_PLATFORM}/{SPECS,SOURCES} # needed only by openmpi
Install external packages
download official packages, as rpmbuild:
cd ~/${FYS_PLATFORM}/RPMS mkdir external; cd external # packages from other distributions yumdownloader --resolve texlive-latex emacs-auctex tex-preview # Fedora yast -i Modules texlive-latex emacs-auctex # openSUSE yast -i python-gtk python-xml python-lxml # openSUSE yast -i python-matplotlib python-numpy # openSUSE yast -i gcc-fortran gcc44-fortran libgfortran44 # openSUSE-11.2 yast -i openmpi-devel blas lapack # openSUSE # el5 packages yumdownloader --resolve emacs binutils-devel glib-devel libstdc++-devel yumdownloader --resolve gcc-gfortran blas-devel lapack-devel python-devel python-sphinx yumdownloader --resolve gnuplot libXi-devel xorg-x11-fonts-100dpi pexpect tetex-latex tkinter qt-devel yumdownloader --resolve openmpi openmpi-devel openmpi-libs compat-dapl libibverbs librdmacm openib yumdownloader --resolve pygtk2-devel gtk2-devel tk-devel agg ghostscript libtiff-devel xterm yumdownloader --resolve libX11-devel libXext-devel openmotif openmotif-devel gd-devel libXpm-devel yumdownloader --resolve compat-libstdc++-33 # for mathematica yumdownloader --resolve MySQL-python # for CMR yumdownloader --resolve perl-XML-SAX # for exciting yumdownloader --resolve ImageMagick # for ASE3 yumdownloader --resolve gcc43-c++ gcc43-gfortran # only on EL5 == 5.2 yum localinstall * # as root
download atrpms packages, as rpmbuild (vtk-python is currently unavailable 16 Apr 2009):
cd ~/${FYS_PLATFORM}/RPMS/external yumdownloader --resolve --enablerepo=atrpms vtk-python arpack-devel graphviz wget http://ATrpms.net/RPM-GPG-KEY.atrpms rpm --import RPM-GPG-KEY.atrpms # as root yum localinstall * # as root
download the packages from epel, as rpmbuild:
~/${FYS_PLATFORM}/RPMS/external yumdownloader --resolve --enablerepo=epel jmol gsl-devel python-lxml yumdownloader --resolve --enablerepo=epel environment-modules suitesparse-devel wget http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL rpm --import RPM-GPG-KEY-EPEL # as root yum localinstall * # as root
on Niflheim only: remove default openmpi:
yum remove openmpi openmpi-libs
edit /etc/yum.conf so it contains:
exclude=netcdf-* netcdf3-* fftw-* fftw2-* fftw3-* python-numeric openmpi-* libgfortran4* gcc4* libstdc++4* libgomp-* ScientificPython-*
It's time to build custom RPMS
compilers and tools
open64
Install (on the login and computes nodes) Install Open64 Compiler Suite RPM (available under ~rpmbuild/${FYS_PLATFORM}/RPMS/external/prefix), and deploy module file under ` ~rpmbuild/modulefiles/${FYS_PLATFORM}/open64`. Install using --relocate option:
rpm -ivh --relocate "/opt/open64"="/opt/open64/4.2.1" open64-4.2.1-0.x86_64.rpm
The module file is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk. Note: the module file should contain at least:
prepend-path PATH /opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1 prepend-path PATH /opt/open64/4.2.1/bin prepend-path LD_LIBRARY_PATH /opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1
g95
Install (on the login and computes nodes) g95 RPM (available under ~rpmbuild/${FYS_PLATFORM}/RPMS/external/prefix), and deploy module file under ` ~rpmbuild/modulefiles/${FYS_PLATFORM}/g95`. Install using --relocate option:
rpm -ivh --relocate "/usr/local"="/opt/g95/0.91" g95-0.91-4.x86_64.rpm
The module file is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk. Note: the module file should contain at least (do not add the lib directory to LD_LIBRARY_PATH):
prepend-path PATH /opt/g95/0.91/lib/gcc-lib/x86_64-unknown-linux-gnu/4.0.3 prepend-path PATH /opt/g95/0.91/bin
intel
Note: to enable new intell products upgrading of licenses may be necessary, see http://software.intel.com/en-us/articles/workaround-non-upgraded-serial-numbers-disappear-from-the-intel-registration-center-irc-list/
Note: intel changes packaging quite often, here are the installation instructions for the 12.0 compilers:
install RPMS (only on the login node) found in l_ccompxe_2011.1.107 manually (using rpm -ivh):
intel-{compilerpro,idb,idbcdt,ipp,sourcechecker,tbb}*noarch* # exclude intel-compilerpro-common if installed already by mkl intel-{compilerpro,idb,ipp,sourcechecker}*x86_64*
and from l_fcompxe_2011.1.107:
intel-compilerprof*{noarch,x86_64}*
create a link (only on thul):
mkdir -p /opt/intel/Compiler/2011.1 cd /opt/intel/Compiler/2011.1 && ln -s /opt/intel/composerxe-2011.1.107 107
build intel compatibility packages (only on thul):
cd ~/rpmbuild/SPECS rpmbuild -bb ${modules_usage} --with major_version=2011 --with version1=1 --with version2=107 intel-redist.spec
Note: do not install the RPMS generated in the last step on the login node. They need to be installed only on compute nodes. On the login node only the module file needs to be deployed under ~rpmbuild/modulefiles, as rpmbuild. Note that this directory is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk. Here is what need to be done for a new version of the package:
mkdir ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort cp /scratch/rpmbuild/intel-2011.1.107/2011.1.107-1.intel64${disttag} ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort ln -s 2011.1.107-1.intel64${disttag} 12.0-1
Note: modify the file so it contains at least:
setenv INTEL_LICENSE_FILE /opt/intel/licenses # generated by intel-redist.spec and installed on compute nodes prepend-path LD_LIBRARY_PATH /opt/intel/Compiler/2011.1/107/lib/intel64 # original locations from intel prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/compiler/lib/intel64 prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/debugger/lib/intel64 prepend-path PATH /opt/intel/composerxe-2011.1.107/bin/intel64 prepend-path MANPATH : prepend-path MANPATH /opt/intel/composerxe-2011.1.107/man # ipp prepend-path PATH /opt/intel/composerxe-2011.1.107/ipp/bin/intel64 prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/ipp/lib/intel64 # sourcechecker prepend-path PATH /opt/intel/composerxe-2011.1.107/bin/sourcechecker/bin/intel64 prepend-path LD_LIBRARY_PATH /opt/intel/composerxe-2011.1.107/bin/sourcechecker/lib/intel64
Note: intel changes packaging quite often, here are the installation instructions for the 11.1 compilers:
install RPMS (only on the login node) found in l_cproc_p_11.1.046_intel64 manually (using rpm -ivh):
intel-cproc046-11.1-1.x86_64.rpm intel-cproidb046-11.1-1.x86_64.rpm intel-cprolib046-11.1-1.x86_64.rpm intel-cprolibdev046-11.1-1.x86_64.rpm intel-cprotbblib046-11.1-1.noarch.rpm intel-cprotbblibdev046-11.1-1.noarch.rpm intel-cprocsdk046-11.1-1.noarch.rpm intel-cproidbsdk046-11.1-1.noarch.rpm
and from l_cprof_p_11.1.046_intel64:
intel-cprof046-11.1-1.x86_64.rpm intel-cproflib046-11.1-1.x86_64.rpm intel-cprofsdk046-11.1-1.noarch.rpm
enable them (only on thul):
. /opt/intel/Compiler/11.1/046/bin/intel64/ifortvars_intel64.sh . /opt/intel/Compiler/11.1/046/bin/intel64/iccvars_intel64.sh
build intel compatibility packages as rpmbuild (only on thul):
cd ~/rpmbuild/SPECS rpmbuild -bb ${modules_usage} intel-redist.spec
Note: do not install the RPMS generated in the last step on the login node. They need to be installed only on compute nodes. On the login node only the module file needs to be deployed under ~rpmbuild/modulefiles, as rpmbuild. Note that this directory is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk. Here is what need to be done for a new version of the package:
mkdir ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort cp /scratch/rpmbuild/intel-11.1.046/11.1.046-1.intel64${disttag} ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort ln -s 11.1.046-1.intel64${disttag} 11.1-1 # version < 12 ln -s 2011.1.107-1.intel64${disttag} 2011.1.107-1
Note: the above module file should contain at least:
prepend-path LD_LIBRARY_PATH /opt/intel/Compiler/11.1/046/lib/intel64 prepend-path LD_LIBRARY_PATH /opt/intel/Compiler/11.1/046/idb/lib/intel64 prepend-path PATH /opt/intel/Compiler/11.1/046/bin/intel64 prepend-path MANPATH : prepend-path MANPATH /opt/intel/Compiler/11.1/046/man
Note: intel changes packaging quite often, here are the installation instructions for the 10.1.015 compilers:
install RPMS (on the login and compute nodes) found in l_cc_p_10.1.015_intel64.tar.gz and l_fc_p_10.1.015_intel64.tar.gz manually (using rpm -ivh):
intel-icce101015-10.1.015-1.em64t.rpm intel-iidbe101015-10.1.015-1.em64t.rpm intel-isubhe101015-10.1.015-1.em64t.rpm intel-iforte101015-10.1.015-1.em64t.rpm
replace the installation path in the scripts (action necessary only on the login node):
files=`grep "<INSTALLDIR>" -r /opt/intel/cce/ | cut -d":" -f 1 | uniq` for file in $files; do echo $file sed -i 's#<INSTALLDIR>#/opt/intel/cce/10.1.015#g' $file done files=`grep "<INSTALLDIR>" -r /opt/intel/fce/ | cut -d":" -f 1 | uniq` for file in $files; do echo $file sed -i 's#<INSTALLDIR>#/opt/intel/fce/10.1.015#g' $file done files=`grep "<INSTALLDIR>" -r /opt/intel/idbe/ | cut -d":" -f 1 | uniq` for file in $files; do echo $file sed -i 's#<INSTALLDIR>#/opt/intel/idbe/10.1.015#g' $file done
provide the module file ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort/10.1.015-1.intel64${disttag}:
prepend-path LD_LIBRARY_PATH /opt/intel/cce/10.1.015/lib prepend-path LD_LIBRARY_PATH /opt/intel/fce/10.1.015/lib prepend-path PATH /opt/intel/cce/10.1.015/bin prepend-path PATH /opt/intel/fce/10.1.015/bin prepend-path PATH /opt/intel/idbe/10.1.015/bin prepend-path MANPATH : prepend-path MANPATH /opt/intel/cce/10.1.015/man prepend-path MANPATH /opt/intel/fce/10.1.015/man prepend-path MANPATH /opt/intel/idbe/10.1.015/man
and the link:
cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/ifort ln -s 10.1.015-1.intel64${disttag} 10.1-1
Moreover: intel-*intel64* RPMS need to be installed with --nodeps, so move them into a special directory:
mkdir -p ~/${FYS_PLATFORM}/RPMS/nodeps mv ~/${FYS_PLATFORM}/RPMS/intel-*intel64* ~/${FYS_PLATFORM}/RPMS/nodeps
intel mkl
Install mkl RPMS intel-mkl-*, intel-openmp-*, intel-compilerpro-* (intel-mkl, intel-mkllibdev, intel-mkllib for mkl version < 10.3), and build mkl compatibility package (only on thul):
# for mkl 10.3, as root cd /opt/intel/mkl # packaging of mkl changes again so link is necessary ln -s ../composerxe-2011.3.174/mkl/ 10.3.3.174 ln -s /opt/intel/composerxe-2011.3.174/man 10.3.3.174/man # as rpmbuild cd ~/rpmbuild/SOURCES export mkl=10.3.3.174 mkdir ${mkl} cp -rp /opt/intel/mkl/${mkl}/lib ${mkl} cp -rpf /opt/intel/mkl/${mkl}/doc ${mkl} # for mkl < 10.3 cp -rpf /opt/intel/composerxe-2011.3.174/compiler/lib ${mkl} # for mkl >= 10.3 tar zcf intel-redist-mkl-${mkl}.tar.gz ${mkl} cd ~/rpmbuild/SPECS # as rpmbuild rpmbuild -bb --with version1=3 --with version2=3 --with version3=174 ${modules_usage} --with platform=intel64 intel-redist-mkl.spec # **Warning**: mkl < 10.3 uses em64t rpmbuild -bb --with version1=1 --with version2=3 --with version3=027 ${modules_usage} intel-redist-mkl.spec
Note: do not install the resulting RPM on the login node. It needs to be installed only on compute nodes. On the login node only the module file needs to be deployed under ~rpmbuild/modulefiles, as rpmbuild. Note that this directory is available as svn checkout at https://svn.fysik.dtu.dk/projects/modulefiles/trunk. Here is what need to be done for a new version of the package:
mkdir ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl cp /tmp/intel-mkl-${mkl}/${mkl}-1${disttag}.em64t ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl cd ~rpmbuild/modulefiles/${FYS_PLATFORM}/mkl ln -s ${mkl}-1${disttag}.em64t 10.1p-027
Note: the above module file should contain at least:
prepend-path LD_LIBRARY_PATH /opt/intel/mkl/10.1.3.027/lib/em64t
Build mkl/fftw (as root):
export mkl=10.1.3.027 . /opt/intel/Compiler/11.0/083/bin/intel64/ifortvars_intel64.sh cd /opt/intel/mkl/${mkl}/interfaces/fftw2xf make libem64t cd /opt/intel/mkl/${mkl}/lib/em64t ln -s libfftw2xf_intel.a libfftw.a
Logout and login as rpmbuild.
Unfortunately, from 10.3 version mkl depends on intel libraries located in directories outside of mkl. This causes troubles for numpy which requires (is there a way to fix that?) all non-standard libraries to be located in one directory. Therefore one may need to create a link (currently not performed):
cd /opt/intel/mkl/10.3.4.191/lib/intel64 ln -s /opt/intel/composerxe-2011.4.191/compiler/lib/intel64/libiomp5.so .
openmpi
Build a custom openmpi, using torque support:
# openmpi-1.4.3 wget http://www.open-mpi.org/software/ompi/v1.4/downloads/openmpi-1.4.3.tar.bz2 \ -O ~/rpmbuild/SOURCES/openmpi-1.4.3.tar.bz2 module load open64/4.2.4-0 sh ./buildrpm-1.4.3-1.open64.4.2.4.sh ../SOURCES/openmpi-1.4.3.tar.bz2 2>&1 | tee buildrpm-1.4.3-1.open64.4.2.4.sh.log.${FYS_PLATFORM} module unload open64/4.2.4-0 module load ifort/12.0-4 sh ./buildrpm-1.4.3-1.ifort.12.0.4.sh ../SOURCES/openmpi-1.4.3.tar.bz2 2>&1 | tee buildrpm-1.4.3-1.ifort.12.0.4.sh.log.${FYS_PLATFORM} # thul only module unload ifort/12.0-4 # openmpi-1.3.3 wget http://www.open-mpi.org/software/ompi/v1.3/downloads/openmpi-1.3.3.tar.bz2 \ -O ~/rpmbuild/SOURCES/openmpi-1.3.3.tar.bz2 sh ./buildrpm-1.3.3-1.gfortran.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.gfortran.sh.log.${FYS_PLATFORM} sh ./buildrpm-1.3.3-1.gfortran43.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.gfortran43.sh.log.${FYS_PLATFORM} sh ./buildrpm-1.3.3-1.pathscale.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.pathscale.sh.log.${FYS_PLATFORM} sh ./buildrpm-1.3.3-1.ifort.11.0.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.ifort.11.0.sh.log.${FYS_PLATFORM} # thul only sh ./buildrpm-1.3.3-1.ifort.11.1.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.ifort.11.1.sh.log.${FYS_PLATFORM} # thul only module load g95 sh ./buildrpm-1.3.3-1.g95.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.g95.sh.log.${FYS_PLATFORM} # fjorm only module unload g95 module load open64/4.2.1-0 # 24 June 2009: build fails on Nehalem with *configure: error: TM support requested but not found. Aborting* sh ./buildrpm-1.3.3-1.open64.4.2.1.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.open64.4.2.1.sh.log.${FYS_PLATFORM} module unload open64/4.2.1-0 module load open64/4.2.3-0 # 24 June 2009: build fails on Nehalem with *configure: error: TM support requested but not found. Aborting* sh ./buildrpm-1.3.3-1.open64.4.2.3.sh ../SOURCES/openmpi-1.3.3.tar.bz2 2>&1 | tee buildrpm-1.3.3-1.open64.4.2.3.sh.log.${FYS_PLATFORM} module unload open64/4.2.3-0
Note: intel openmpi needs to be installed ignoring dependencies:
rpm -ivh --nodeps --oldpackage ~rpmbuild/${FYS_PLATFORM}/RPMS/openmpi-1.3.3-1${disttag}.ifort.11.1.x86_64.rpm
acml
Note this package is not relocatable!
AMD Core Math Library contains optimized BLAS and LAPACK libraries for AMD opteron processors (work also on intel), and is available for download after registration.
Build the following RPMS:
. fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.blas.acml.4.0.1.sh . fys.build.acml.sh # . fys.set.Niflheim.pathscale.3.2.sh . fys.set.blas.acml.4.0.1.sh . fys.build.acml.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.blas.acml.4.3.0.sh . fys.build.acml.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.blas.acml.4.3.0_mp.sh . fys.build.acml.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.blas.acml.4.4.0.sh . fys.build.acml.sh # . fys.set.Niflheim.ifort.11.0.sh . fys.set.blas.acml.4.4.0.sh . fys.build.acml.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.set.blas.acml.4.4.0.sh . fys.build.acml.shNote problems with dgemm acml 4.1.0 and 4.2.0 have been reported. Moreover campos-dacapo built with acml-4-1-0-pathscale-64bit.tgz fails with "ZINSC 2 returned info= 2" for the following job:
#!/usr/bin/env python from Dacapo import Calculator from ASE.IO.xyz import ReadXYZ from ASE.Dynamics.Langevin import Langevin prefix = 'D' atoms = ReadXYZ('32H2O.xyz') L = 9.8553729 atoms.SetUnitCell([L, L, L], fix=True) atoms.SetBoundaryConditions(True) r = 1 atoms = atoms.Repeat([r, r, r]) n = 48 * r calc = Calculator(nbands=128 * r**3, planewavecutoff=350, densitycutoff=500, xc='PBE') atoms.SetCalculator(calc) from time import time atoms.GetPotentialEnergy() pos=atoms[0].GetCartesianPosition() atoms[0].SetCartesianPosition(pos+0.005) t0=time() atoms.GetPotentialEnergy() print time()-t0Download 32H2O.xyz
goto
GotoBLAS contains optimized BLAS libraries.
Download GotoBLAS-1.26.tar.gz (Warning outdated release of GotoBLAS is no longer available) and GotoBLAS2-1.13_bsd.tar.gz (supports Nehalem) to ~/rpmbuild/SOURCES. The default build process searches your $PATH for available compilers. Priority order is PathScale, PGI, Intel, gfortran, g95 and g77, therefore setting compilers explicitly is needed.
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh (rpm_prefix=/usr && . fys.build.goto2.sh)On Niflheim build RPMS (on the target compute node!) using the following command:
. fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.goto2.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.goto2.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.build.goto2.sh # . fys.set.Niflheim.open64.4.2.4.sh . fys.build.goto2.sh # older version of goto # blas_version=1.26 . fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.goto.sh # blas_version=1.26 . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.goto.sh # blas_version=1.26 . fys.set.Niflheim.pathscale.3.2.sh . fys.build.goto.sh # blas_version=1.26 . fys.set.Niflheim.open64.4.2.1.sh . fys.build.goto.sh # blas_version=1.26 . fys.set.Niflheim.open64.4.2.3.sh . fys.build.goto.shNote - 1.26 version fails on Nehalem with:
../../../param.h:1195:21: error: division by zero in #if
atlas
Note this package is not relocatable!
On a custom system build the following RPMS:
blas_version=3.8.3 . fys.set.gfortran.default.sh (rpm_prefix=/usr/local/atlas && default_version_usage="--with default_version" && . fys.build.atlas.sh)On Niflheim build the following RPMS:
blas_version=3.8.3 . fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.atlas.sh # blas_version=3.8.3 . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.atlas.shNote: - 3.8.3 version fails on Opteron with open64 with:
/scratch/rpmbuild/ATLAS/RpmObjs/..//CONFIG/src/backend/comptestC.c:5: undefined reference to `__pathscale_malloc_alg'
rasmol
Required by campos-ase2.
Note that rasmol is built for 32bit architecture, so make sure that your system fulfills "BuildRequires" for both 64 and 32bit:
rpmbuild --nobuild RasMol.specOn a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.RasMol.2.7.3.sh)On Niflheim build the following RPMS:
. fys.build.RasMol.2.7.3.sh
cblas
Required by campos-ase2.
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.blas.default.sh (rpm_prefix=/usr && . fys.build.cblas.sh)On Niflheim build the following RPMS:
. fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.blas.acml.4.0.1.sh . fys.build.cblas.sh
python-setuptools
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.setuptools.0.6c9.sh)On Niflheim build the following RPMS:
. fys.build.setuptools.0.6c9.shIf using modules:
module load python-setuptoolselse, if not using the default "/usr" prefix:
. /etc/profile.d/python-setuptools.sh
python-nose
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.nose.0.10.4.sh)On Niflheim build the following RPMS:
. fys.build.nose.0.10.4.shIf using modules:
module load python-noseelse, if not using the default "/usr" prefix:
. /etc/profile.d/python-nose.sh
numpy
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.cblas.2.23.3.sh (rpm_prefix=/usr && . fys.build.numpy.1.3.0.sh)On Niflheim build the following RPMS:
module load python-setuptools module load python-nose . fys.set.Niflheim.numpy.1.3.0.gfortran.4.1.2.acml.4.0.1.cblas.none.sh . fys.build.numpy.1.3.0.sh # only on thul . fys.set.Niflheim.numpy.1.3.0.gfortran.4.1.2.mkl.10.1.3.027.cblas.mkl.10.1.3.027.sh . fys.build.numpy.1.3.0.sh # building using cblas/acml causes the test below to fail . fys.set.Niflheim.numpy.1.3.0.gfortran.4.1.2.acml.4.0.1.cblas.2.23.3.sh . fys.build.numpy.1.3.0.shAfter installing python-numeric make a very rough check:
is using modules:
module load ${blas}-${compiler}64/${blas_version}-1${disttag} module load cblas-${blas}-${compiler}64/2.23.3-1${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version} module load numpy/1.3.0-1${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} python -c "import numpy; from numpy.core.multiarray import dot; b = numpy.ones(13, numpy.complex); dot(b, b)" python -c "import numpy; numpy.test()"else, if not using the default "/usr" prefix:
. /etc/profile.d/numpy.sh
gnuplot-py
Required by campos-ase2.
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.gnuplot-py.1.8.sh)On Niflheim build the following RPMS:
. fys.build.gnuplot-py.1.8.shIf using modules:
module load gnuplot-pyelse, if not using the default "/usr" prefix:
. /etc/profile.d/gnuplot-py.sh
python-numeric
Required by campos-ase2.
Warning: on a 64-bit machine works only with python <= 2.4.
We must install 24.2 version, and we keep the default version:
cd ~/${FYS_PLATFORM}/RPMS/external rpm -e --nodeps python-numeric # as root yumdownloader --resolve --disableexcludes=main python-numeric cd ~/rpmbuild/SPECSOn a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.cblas.2.23.3.sh . fys.build.Numeric.24.2.shOn Niflheim build the following RPMS:
. fys.set.Niflheim.Numeric.24.2.gfortran.4.1.2.acml.4.0.1.cblas.2.23.3.sh . fys.build.Numeric.24.2.shNote: (16 Apr 2009) currently Numeric's test.py results in (we ignore this error):
glibc detected *** python: free(): invalid next size (normal): 0x09aee970 ***After installing python-numeric make a very rough check:
is using modules:
module load ${blas}-${compiler}64/${blas_version}-1${disttag} module load cblas-${blas}-${compiler}64/2.23.3-1${disttag}.${compiler}.${compiler_version}.${blas}.${blas_version} module load python-numeric/24.2-4${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} python -c "import lapack_lite" ldd `rpm -ql python-numeric-24.2-4${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep lapack_lite.so` ldd `rpm -ql python-numeric-24.2-4${disttag}.${compiler}.${compiler_version}.python${python_version}.${blas}.${blas_version}.${lapack}.${lapack_version} | grep _dotblas.so`else:
. /etc/profile.d/python-numeric.sh python -c "import lapack_lite" ldd `rpm -ql python-numeric | grep lapack_lite.so` ldd `rpm -ql python-numeric | grep _dotblas.so`and reinstall the default version:
rpm -ivh --oldpackage ~/${FYS_PLATFORM}/RPMS/external/python-numeric-23.*.rpm
hdf5
HDF5 is a data model, library, and file format for storing and managing data.
We prefer version 1.8.6.
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.openmpi.default.sh (rpm_prefix=/usr && . fys.build.hdf5.sh)On Niflheim build the following RPMS:
# module load open64/4.2.4-0 . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.build.hdf5.1.8.6.sh module unload open64/4.2.4-0 # older builds # . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh # module load open64/4.2.3-0 . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh module unload open64/4.2.4-0 # only on thul module load ifort/11.1-1 . fys.set.Niflheim.ifort.11.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.hdf5.1.8.6.sh module unload ifort/11.1-1
netcdf
NetCDF (network Common Data Form) is an interface for array-oriented data access and a library that provides an implementation of the interface. The NetCDF library also defines a machine-independent format for representing scientific data.
We prefer version 3.6.1 or higher (note that version 3.6.2 has fortran interface in libnetcdff.a).
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh (rpm_prefix=/usr && . fys.build.netcdf4.4.0.1.sh)On Niflheim build the following RPMS:
# . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.netcdf4.4.1.2.sh . fys.build.netcdf4.4.1.2.sh # older builds # . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh # only on fjorm . fys.set.Niflheim.pathscale.3.2.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh # only on thul . fys.set.Niflheim.ifort.11.0.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh # only on fjorm . fys.set.Niflheim.open64.4.2.1.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh # only on thul . fys.set.Niflheim.ifort.11.1.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.build.netcdf4.4.0.1.sh
etsf_io
- ETSF_IO
- A library of F90 routines to read/write the ETSF file format has been written. It is called ETSF_IO and available under LGPL.
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.netcdf.default.sh . fys.set.hdf5.default.sh (. fys.build.etsf_io.sh)On Niflheim build the following RPMS:
# . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.netcdf4.4.0.1.sh hdf=none . fys.build.etsf_io.sh # Oct 4 2010: fatal error: gfc_todo: Not Implemented: complex character array constructors . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.netcdf4.4.0.1.sh hdf=none . fys.build.etsf_io.sh # Oct 04 2010: tests/group_level failed . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh hdf=none . fys.build.etsf_io.sh # Apr 18 2010: tests/group_level failed . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.netcdf4.4.1.2.sh hdf=none . fys.build.etsf_io.sh
ScientificPython 2.6.2
Warning: version 2.6.2 required by campos-ase2. Later versions are needed by campos-ase3. Note that versions 2.6.2 and >= 2.8 are mutually exclusive if installed in the default "/usr" prefix.
On a custom system build the following RPMS:
. fys.set.ScientificPython.2.6.2.default.sh (rpm_prefix=/usr && . fys.build.ScientificPython.sh)On Niflheim build the following RPMS:
. fys.set.Niflheim.ScientificPython.2.6.2.gfortran.4.1.2.openmpi.1.3.3.numeric.sh . fys.build.ScientificPython.sh
ScientificPython 2.8 or later
Note that versions 2.6.2 and >= 2.8 are mutually exclusive if installed in the default "/usr" prefix.
Required by campos-ase3.
On a custom system build the following RPMS:
. fys.set.ScientificPython.2.8.default.sh (rpm_prefix=/usr && . fys.build.ScientificPython.sh)On Niflheim build the following RPMS:
. fys.set.Niflheim.ScientificPython.2.8.gfortran.4.1.2.serial_version.only.numpy.sh . fys.build.ScientificPython.sh
python-docutils
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.docutils.0.5.sh)On Niflheim build the following RPMS:
. fys.build.docutils.0.5.shIf using modules:
module load python-docutilselse, if not using the default "/usr" prefix:
. /etc/profile.d/python-docutils.sh
pytz
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.pytz.2008g.sh)On Niflheim build the following RPMS:
. fys.build.pytz.2008g.shIf using modules:
module load pytzelse, if not using the default "/usr" prefix:
. /etc/profile.d/pytz.sh
python-dateutil
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.python-dateutil.1.4.1.sh)On Niflheim build the following RPMS:
. fys.build.python-dateutil.1.4.1.shIf using modules:
module load python-dateutilelse, if not using the default "/usr" prefix:
. /etc/profile.d/python-dateutil.sh
python-matplotlib
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.python-matplotlib.sh)On Niflheim build the following RPMS:
module load NUMPY module load python-docutils module load pytz module load python-dateutil . fys.build.python-matplotlib.1.0.1.sh
campos-ase2
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.ase2.2.3.13.sh)On Niflheim build the following RPMS:
. fys.build.ase2.2.3.13.sh
fftw2
We use version 2.1.5.
On a custom system build the following RPMS:
. fys.set.fftw2.default.sh (rpm_prefix=/usr && . fys.build.fftw2.2.1.5.sh)On Niflheim build the following RPMS:
. fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.fftw2.2.1.5.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.fftw2.2.1.5.sh # . fys.set.Niflheim.pathscale.3.2.sh . fys.build.fftw2.2.1.5.sh # only on fjorm . fys.set.Niflheim.open64.4.2.1.sh . fys.build.fftw2.2.1.5.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.build.fftw2.2.1.5.sh # . fys.set.Niflheim.open64.4.2.4.sh . fys.build.fftw2.2.1.5.sh # Note: 24 June 2009: ifort fails to build static fftw2 . fys.set.Niflheim.ifort.11.0.sh . fys.build.fftw2.2.1.5.sh
campos-dacapo-pseudopotentials
Note this package is not relocatable! campos-dacapo-pseudopotentials
On a custom system build the following RPMS:
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.dacapo-pseudopotentials.1.sh)On Niflheim build the following RPMS:
. fys.build.dacapo-pseudopotentials.1.sh
campos-dacapo-python
Requires campos-ase2.
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.dacapo-python.0.9.4.sh)On Niflheim build the following RPMS:
. fys.build.dacapo-python.0.9.4.sh
campos-dacapo
Note: fftw version 3 is incompatible with dacapo.
If you build only a serial version add "--without parallel" to the rpmbuild options. Another useful option is "--without default_version" that does not put /etc/profile.d scripts, nor modules under /opt/modulefiles that allows the package to be relocatable.
Warning: currently (9 Oct 2008) packaging of openmpi on FC8/FC9 requires the following link to be made:
ln -s /usr/include/openmpi/1.2.4-gcc/32/mpif-config.h /usr/include/openmpi/1.2.4-gcc/mpif-config.hWarning: currently (9 Oct 2008) the default build fails for EL4 due to double underlined symbols in the netcdf from ATrpms, however custom build (i.e. with building your own netcdf should work).
On a custom system build the following RPMS:
. fys.set.dacapo.default.sh . fys.set.atlas.default.sh (rpm_prefix=/usr && . fys.build.dacapo.sh) # optional build using netlib blas/lapack . fys.set.dacapo.default.sh (rpm_prefix=/usr && . fys.build.dacapo.sh)On Niflheim build the following RPMS:
# . fys.set.Niflheim.dacapo.2.7.16.open64.4.2.4.openmpi.1.4.3.acml.4.4.0.acml.4.4.0.fftw2.sh hdf=none . fys.build.dacapo.sh # older builds # . fys.set.Niflheim.dacapo.2.7.16.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.fftw2.sh . fys.build.dacapo.sh # only on fjorm . fys.set.Niflheim.dacapo.2.7.16.open64.4.2.1.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.fftw2.sh . fys.build.dacapo.sh # only on thul . fys.set.Niflheim.dacapo.2.7.16.gfortran43.4.3.2.openmpi.1.3.3.mkl.10.1.3.027.mkl.10.1.3.027.mkl.sh . fys.build.dacapo.sh # optional . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Nilfheim.openmpi.1.3.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.set.Niflheim.fftw2.2.1.5.sh . fys.set.blas.default.sh . fys.set.lapack.acml.sh . fys.build.dacapo.sh # optional . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Nilfheim.openmpi.1.3.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.set.Niflheim.fftw2.2.1.5.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.lapack.acml.sh . fys.build.dacapo.sh # optional . fys.set.Niflheim.open64.4.2.1.sh . fys.set.Nilfheim.openmpi.1.3.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.set.Niflheim.fftw2.2.1.5.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.lapack.acml.sh . fys.build.dacapo.sh # optional # only on thul # multinode jobs fail . fys.set.Niflheim.ifort.11.0.sh . fys.set.Nilfheim.openmpi.1.3.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.set.Niflheim.mkl.10.1.3.027.sh . fys.build.dacapo.sh
fftw3
On a custom system build the following RPMS:
. fys.set.fftw3.default.sh (rpm_prefix=/usr && . fys.build.fftw3.3.2.1.sh)On Niflheim build the following RPMS:
. fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.fftw3.3.2.1.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.fftw3.3.2.1.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.build.fftw3.3.2.1.sh # . fys.set.Niflheim.open64.4.2.4.sh . fys.build.fftw3.3.2.1.sh # only on thul . fys.set.Niflheim.ifort.11.1.sh . fys.build.fftw3.3.2.1.sh
scipy
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.cblas.2.23.3.sh . fys.set.fftw3.default.sh . fys.set.suitesparse.default.sh (rpm_prefix=/usr && . fys.build.scipy.0.7.0.sh)On Niflheim build the following RPMS:
. fys.set.Niflheim.scipy.0.7.0.gfortran.4.1.2.blas.lapack.cblas.2.23.3.sh . fys.build.scipy.0.7.0.sh # optional - not tested! . fys.set.Niflheim.scipy.0.7.0.gfortran.4.1.2.acml.4.0.1.cblas.2.23.3.sh . fys.build.scipy.0.7.0.sh
povray
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.povray.sh)On Niflheim build the following RPMS:
. fys.build.povray.sh
babel
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.Babel.0.9.4.sh)On Niflheim build the following RPMS:
. fys.build.Babel.0.9.4.shIf using modules:
module load babelelse, if not using the default "/usr" prefix:
. /etc/profile.d/babel.sh
python-jinja2
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.Jinja2.2.1.1.sh)On Niflheim build the following RPMS:
. fys.build.Jinja2.2.1.1.shIf using modules:
module load python-jinja2else, if not using the default "/usr" prefix:
. /etc/profile.d/python-jinja2.sh
python-pygments
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.Pygments.1.0.sh)On Niflheim build the following RPMS:
. fys.build.Pygments.1.0.shIf using modules:
module load python-pygmentselse, if not using the default "/usr" prefix:
. /etc/profile.d/python-pygments.sh
python-sphinx
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.Sphinx.0.6.1.sh)On Niflheim build the following RPMS:
. fys.build.Sphinx.0.6.1.shIf using modules:
module load python-sphinxelse, if not using the default "/usr" prefix:
. /etc/profile.d/python-sphinx.sh
auctex
Build the following RPMS:
cd ~/rpmbuild/SOURCES&& wget http://ftp.gnu.org/pub/gnu/auctex/auctex-11.86.tar.gz cd ~/rpmbuild/SPECS rpmbuild -bb auctex.spec
campos-ase3
On a custom system build the following RPMS:
(rpm_prefix=/usr && . fys.build.ase3.sh)On Niflheim build the following RPMS:
module load NUMPY . fys.build.ase3.shSnapshot package is built with, e.g.:
major_version=3 version1=2 version2=0 version_svn=1066 release=${major_version}.${version1}.${version2}.${version_svn}/1${disttag}.python${python_version} rpmbuild -bb --with major_version=${major_version} --with version1=${version1} --with version2=${version2} --with version_svn=${version_svn} --with keep_install=1 \ ${modules_usage} --with default_version -with system=${rpm_platform} \ --with python_version=${python_version} \ --with prefix=/home/camp/rpmbuild/opt/Intel-Nehalem-el5/campos-ase3/${release} campos-ase3.spec rm /home/camp/rpmbuild/Intel-Nehalem-el5/RPMS/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1${disttag}.python${python_version}.x86_64.rpm dir=~/Intel-Nehalem-el5/BUILD/campos-ase3-${major_version}.${version1}.${version2}.${version_svn}-1${disttag}.python${python_version}-root ln -s ${dir}/etc/modulefiles/campos-ase3/${major_version}.${version1}.${version2}.${version_svn}-1${disttag}.python${python_version} \ ~/Intel-Nehalem-el5/modulefiles.testing/campos-ase3 ln -s ${dir}/home/camp/rpmbuild/opt/Intel-Nehalem-el5/campos-ase3/${major_version}.${version1}.${version2}.${version_svn} ~/opt/Intel-Nehalem-el5/campos-ase3
blacs
BLACS is used by ScaLapack.On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.openmpi.default.sh (rpm_prefix=/usr && . fys.build.blacs.sh)On Niflheim build the following RPMS:
. fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.build.blacs.sh # older builds # . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.blacs.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.blacs.sh # . fys.set.Niflheim.pathscale.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.blacs.sh # . fys.set.Niflheim.open64.4.2.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.blacs.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.blacs.sh # . fys.set.Niflheim.ifort.11.0.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.blacs.sh # . fys.set.Niflheim.ifort.11.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.blacs.sh
scalapack
SCALAPACK.On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.openmpi.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.blacs.1.1.sh (rpm_prefix=/usr && . fys.build.scalapack.sh)On Niflheim build the following RPMS:
# . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.2.0.1.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.2.0.1.sh # old builds . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.open64.4.2.4.sh . fys.set.Niflheim.openmpi.1.4.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran.4.1.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.0.1.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # old old builds # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.open64.4.2.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # only on fjorm . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.Niflheim.atlas.3.8.3.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # only on thul . fys.set.Niflheim.ifort.11.0.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh # only on thul . fys.set.Niflheim.ifort.11.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.build.scalapack.1.8.0.sh
PDSYEVRnew
PDSYEVRnew ScaLAPACK's new parallel MRRR algorithm for computing eigenpairs of large real symmetric or complex Hermitian matrices.
On Niflheim build the following RPMS:
. fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.PDSYEVRnew.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.PDSYEVRnew.sh
campos-gpaw-setups
Note this package is not relocatable!
On a custom system build the following RPMS:
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.gpaw-setups.sh)On Niflheim build the following RPMS:
. fys.build.gpaw-setups.sh
campos-gpaw
On a custom system build the following RPMS:
# March 3 2010: results in "orthogonalization failed" with EPEL's atlas on el5.x64_64 and i386. . fys.set.gpaw.default.sh . fys.set.atlas.default.sh (rpm_prefix=/usr && . fys.build.gpaw.sh) # optional build using netlib blas/lapack . fys.set.gpaw.default.sh (rpm_prefix=/usr && . fys.build.gpaw.sh)On Niflheim load first the required modules:
module load ASE3 module load campos-gpaw-setupsand build the following RPMS:
. fys.set.Niflheim.gpaw.0.6.5147.open64.4.2.3.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh . fys.build.gpaw.sh # older builds # . fys.set.Niflheim.gpaw.0.6.5147.open64.4.2.4.openmpi.1.4.3.goto2.1.13.acml.4.4.0.sh . fys.build.gpaw.sh # . fys.set.Niflheim.gpaw.0.6.5147.open64.4.2.3.openmpi.1.3.3.goto2.1.13.acml.4.4.0.sh . fys.build.gpaw.sh # . fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh . fys.build.gpaw.sh # only on fjorm . fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.goto.1.26.acml.4.4.0.sh . fys.build.gpaw.shOptional builds:
. fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh . fys.build.gpaw.sh # . fys.set.Niflheim.gpaw.0.6.5147.gfortran.4.1.2.openmpi.1.3.3.acml.4.0.1.acml.4.0.1.sh . fys.build.gpaw.sh # default gfortran and netlib blas/lapack/scalapack . fys.set.Niflheim.gpaw.0.6.5147.gfortran.4.1.2.openmpi.1.3.3.acml.4.0.1.acml.4.0.1.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # latest gfortran and netlib blas/lapack/scalapack . fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # atlas - gpaw-test fails for diagonalization on fjorm el5 x86_64 18 Jan 2010 . fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh . fys.set.Niflheim.atlas.3.8.3.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # atlas - gpaw-test fails for diagonalization on fjorm el5 x86_64 18 Jan 2010 . fys.set.Niflheim.gpaw.0.6.5147.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh . fys.set.Niflheim.atlas.3.8.3.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto2.1.13.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # only on fjorm # note gpaw version 0.6 --with sl_init_second_underscore=1 is necessary for rpmbuild . fys.set.Niflheim.pathscale.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.0.1.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # only on fjorm # note gpaw version 0.6 --with sl_init_second_underscore=1 is necessary for rpmbuild . fys.set.Niflheim.open64.4.2.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.0.1.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh **Note**: open64 compiler fails with:: /usr/bin/ld: /opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1/libmv.a(vcos.o): relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC /opt/open64/4.2.1/lib/gcc-lib/x86_64-open64-linux/4.2.1/libmv.a: could not read symbols: Bad value # only on fjorm # note gpaw version 0.6 --with sl_init_second_underscore=1 is necessary for rpmbuild . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.goto.1.26.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # # note gpaw version 0.6 --with sl_init_second_underscore=1 is necessary for rpmbuild . fys.set.Niflheim.open64.4.2.3.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # only on thul . fys.set.Niflheim.ifort.11.1.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # only on thul . fys.set.Niflheim.ifort.11.0.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh . fys.set.Niflheim.blacs.1.1.sh . fys.set.Niflheim.scalapack.1.8.0.sh . fys.build.gpaw.sh # only on thul # fails on thul . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.Niflheim.mkl.10.2.4.032.sh . fys.build.gpaw.sh # only on thul # fails on thul . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.Niflheim.mkl.10.2.1.017.sh . fys.build.gpaw.sh # only on thul # fails on thul . fys.set.Niflheim.ifort.11.0.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.Niflheim.mkl.10.1.3.027.sh . fys.build.gpaw.sh # only on thul # fails on thul . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.Niflheim.mkl.10.1.3.027.sh . fys.build.gpaw.sh
Asap
On a custom system build the following RPMS:
. fys.set.Asap.default.sh (rpm_prefix=/usr && . fys.build.Asap.sh)On Niflheim build the following RPMS:
# module load ASE3 . fys.set.Niflheim.Asap.3.2.6.open64.4.2.4.openmpi.1.4.3.sh . fys.build.Asap.sh # module load ASE3 . fys.set.Niflheim.Asap.3.2.6.open64.4.2.3.openmpi.1.3.3.sh . fys.build.Asap.sh # only on fjorm module load ASE3 . fys.set.Niflheim.Asap.3.2.6.pathscale.3.2.openmpi.1.3.3.sh . fys.build.Asap.sh # only on thul module load ASE3 module load ifort/11.1-1 . fys.set.Niflheim.Asap.3.2.6.ifort.11.1.openmpi.1.3.3.sh . fys.build.Asap.sh
abinit
abinit pseudopotentials
Note this package is not relocatable! abinit-pseudopotentials
On a custom system build the following RPMS:
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.abinit-pseudopotentials.sh)On Niflheim build the following RPMS:
. fys.build.abinit-pseudopotentials.sh
abinit
abinit is a Density Functional Theory (DFT) package with pseudopotentials and a planewave basis.
On a custom system build the following RPMS:
. fys.set.abinit.5.4.4p.default.sh . fys.set.atlas.default.sh (rpm_prefix=/usr && . fys.build.abinit.5.4.4p.sh)
On Niflheim build the following RPMS:
. fys.set.Niflheim.abinit.5.4.4p.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.fftw3.sh hdf=none . fys.build.abinit.5.4.4p.sh
siesta
siesta-pseudopotentials-2.tar.gz
siesta pseudopotentials
Build the following RPMS:
cd ~/rpmbuild/SOURCES&& wget --no-check-certificate \ "https://wiki.fysik.dtu.dk/niflheim/Cluster_software_-_RPMS?action=AttachFile&do=get&target=siesta-pseudopotentials-2.tar.gz" \ -O siesta-pseudopotentials-2.tar.gz cd ~/rpmbuild/SPECS rpmbuild -bb ${modules_usage} --with default_version siesta-pseudopotentials.spec
siesta
siesta (Spanish Initiative for Electronic Simulations with Thousands of Atoms) is both a method and its computer program implementation, to perform electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids.
Build the following RPMS:
cd ~/rpmbuild/SPECS major_version=2 version1=0 compiler=gfortran43 compiler_version=4.3.2 compiler_libdir=/usr/lib64 compiler_bindir=/usr/bin blas=acml blas_version=4.3.0 blasdir=/opt/${blas}/${blas_version}/${compiler}64/lib lapack=acml lapack_version=4.3.0 lapackdir=/opt/${lapack}/${lapack_version}/${compiler}64/lib netcdf=netcdf4 netcdf_includedir=/opt/${netcdf}/4.0.1/1${disttag}.${compiler}.${compiler_version}/include netcdf_libdir=/opt/${netcdf}/4.0.1/1${disttag}.${compiler}.${compiler_version}/lib64 openmpi_version=1.3.3 ompi_libdir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/bin blacs=blacs blacsdir=/opt/blacs/1.1/24${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}/lib64 scalapack=scalapack scalapackdir=/opt/scalapack/1.8.0/1${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version}/lib64 release=1${disttag_network}.${compiler}.${compiler_version}.openmpi.${openmpi_version}.${blas}.${blas_version}.${lapack}.${lapack_version} rpmbuild --bb --with major_version=${major_version} --with version1=${version1} \ --with blas=${blas} --with blas_version=${blas_version} --with blasdir=${blasdir} \ --with compiler=${compiler} --with compiler_version=${compiler_version} \ --with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \ --with lapack=${lapack} --with lapack_version=${lapack_version} --with lapackdir=${lapackdir} \ --with netcdf=${netcdf} --with netcdf_includedir=${netcdf_includedir} --with netcdf_libdir=${netcdf_libdir} \ --with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \ --with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \ --with blacs=${blacs} --with blacsdir=${blacsdir} \ --with scalapack=${scalapack} --with scalapackdir=${scalapackdir} \ ${modules_usage} --with default_version=1 \ --with system=${rpm_platform} \ --with prefix=/opt/siesta${major_version}/${major_version}.${version1}/${release} siesta.spec
espresso
Note this package is not relocatable!
espresso pseudopotentials
On a custom system build the following RPMS:
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.espresso_pp.sh)
On Niflheim build the following RPMS:
. fys.build.espresso_pp.sh
espresso
Note March 04 2010: version 4.0.5 does not compile with gfortran >= 4.4 (?)
Note March 04 2010: version 4.1.2 results in and "STOP 1" status for tests if EXX is enabled
On a custom system build the following RPMS:
. fys.set.espresso.4.1.2.default.sh (rpm_prefix=/usr && . fys.build.espresso.sh) # March 06 2010 fc12, el5 with atlas gives for atom-lsda.in: On entry to DSYGVX parameter number 20 had an illegal value . fys.set.espresso.4.1.2.default.sh . fys.set.atlas.default.sh (rpm_prefix=/usr && . fys.build.espresso.sh)
On Niflheim build the following RPMS:
# version used with yambo 3.2.1.426M - enable EXX in the spec file! . fys.set.Niflheim.espresso.4.0.5.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh . fys.build.espresso.sh # version 5.0.1 . fys.set.Niflheim.espresso.5.0.1.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh . fys.build.espresso.5.sh
yambo
yambo
yambo is a FORTRAN/C code for Many-Body calculations in solid state and molecular physics. Yambo relies on the Kohn-Sham wavefunctions generated by two DFT public codes: abinit, and PWscf. This build creates interfaces to abinit and PWscf.
On a custom system build the following RPMS:
. fys.set.yambo.default.sh . fys.set.atlas.default.sh (rpm_prefix=/usr && . fys.build.yambo.sh)
On Niflheim build the following RPMS:
# Nov 15 2010: ETSF compilation part fails with "Error: Symbol 'default_tel' at (1) has no IMPLICIT type": see http://www.yambo-code.org/forum/viewtopic.php?f=1&t=266 . fys.set.Niflheim.yambo.3.2.3.16.gfortran43.4.3.2.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh hdf=none . fys.build.yambo.sh # . fys.set.Niflheim.yambo.3.2.1.448.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh hdf=none . fys.build.yambo.sh # special yambo 3.2.1.426M . fys.set.Niflheim.yambo.3.2.1.426M.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.sh hdf=none . fys.build.yambo.sh
yambo NON-GPL
This is a NON-GPL version of yambo.
On Niflheim build the following RPMS:
. fys.set.Niflheim.yambo-ngpl.3.2.3.735M.gfortran43.4.3.2.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh hdf=none . fys.build.yambo.sh
elk
elk species
Note this package is not relocatable!
On a custom system build the following RPMS:
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.elk-species.sh)
On Niflheim build the following RPMS:
. fys.build.elk-species.sh
elk
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.openmpi.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh (rpm_prefix=/usr && thread_mode=mp && . fys.build.elk.sh)
On Niflheim build the following RPMS:
# OpenMP with MPI version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.3.0_mp.sh . fys.set.lapack.acml.sh (thread_mode=mp && . fys.build.elk.sh) # OpenMP version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.blas.acml.4.3.0_mp.sh . fys.set.lapack.acml.sh (thread_mode=mp && . fys.build.elk.sh) # MPI version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.4.0.sh . fys.set.lapack.acml.sh (thread_mode=nomp && . fys.build.elk.sh)
vtk
cmake
Build the following RPMS:
cd ~/rpmbuild/SOURCES&& wget http://www.cmake.org/files/v2.6/cmake-2.6.4.tar.gz cd ~/rpmbuild/SOURCES&& wget "http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c Super Stable/1.06.35/xmlrpc-c-1.06.35.tgz" cd ~/rpmbuild/SPECS rpmbuild -bb --with bootstrap --without gui cmake.spec # install the resulting RPM rpmbuild -bb xmlrpc-c.spec # install the resulting RPM rpm -e cmake rpmbuild -bb --without gui cmake.spec # install the resulting RPM
vtkdata
Build the following RPMS:
cd ~/rpmbuild/SOURCES&& wget http://www.vtk.org/files/release/5.4/vtkdata-5.4.2.tar.gz cd ~/rpmbuild/SPECS rpmbuild -bb --with version1=4 --with version2=2 ${modules_usage} --with default_version=1 \ --with prefix=/opt/vtkdata/5.4.2/1${disttag} vtkdata.spec
vtk
Build the following RPMS:
cd ~/rpmbuild/SOURCES&& wget http://www.vtk.org/files/release/5.4/vtk-5.4.2.tar.gz cd ~/rpmbuild/SPECS compiler=gfortran compiler_version=4.1.2 compiler_libdir=/usr/lib64 compiler_bindir=/usr/bin openmpi_version=1.3.3 ompi_libdir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/lib64 ompi_includedir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/include ompi_bindir=/opt/openmpi/${openmpi_version}-1${disttag_network}.${compiler}.${compiler_version}/bin rpmbuild -bb --without qt4 --with version1=4 --with version2=2 \ --with compiler=${compiler} --with compiler_version=${compiler_version} \ --with compiler_bindir=${compiler_bindir} --with compiler_libdir=${compiler_libdir} \ --with parallel=1 --with openmpi=openmpi --with openmpi_version=${openmpi_version} \ --with ompi_libdir=${ompi_libdir} --with ompi_includedir=${ompi_includedir} --with ompi_bindir=${ompi_bindir} \ ${modules_usage} --with default_version=1 \ --with system=${rpm_platform} \ --with python_version=${python_version} \ --with prefix=/opt/vtk/5.4.2/1${disttag_network}.${compiler}.${compiler_version}.python${python_version}.openmpi.${openmpi_version} vtk.spec
octopus
octopus
Note March 15 2010: gfortran 4.1.2 on el5: Segmentation fault
On a custom system build the following RPMS:
. fys.set.octopus.default.sh . fys.set.atlas.default.sh (rpm_prefix=/usr && . fys.build.octopus.3.2.0.sh)
On Niflheim build the following RPMS:
. fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.Niflheim.netcdf4.4.0.1.sh . fys.set.Niflheim.fftw3.3.2.1.sh . fys.set.blas.acml.4.3.0.sh . fys.set.lapack.acml.sh . fys.set.gsl.default.sh . fys.set.arpack.default.sh . fys.build.octopus.3.2.0.sh
TAU
pdtoolkit
Program Database Toolkit is a framework for analyzing source code written in several programming languages and for making rich program knowledge accessible to developers of static and dynamic analysis tools. PDT is required by TAU.
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh (rpm_prefix=/opt/pdtoolkit && . fys.build.pdtoolkit.sh)
On Niflheim build the following RPMS:
. fys.set.Niflheim.gfortran.4.1.2.sh . fys.build.pdtoolkit.sh # . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.build.pdtoolkit.sh
tau
TAU Performance System® is a portable profiling and tracing toolkit for performance analysis of parallel programs written in Fortran, C, C++, Java, Python.
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.openmpi.default.sh (rpm_prefix=/opt/tau && . fys.build.tau.sh)
On Niflheim build the following RPMS:
pdtoolkit_version=3.15 module purge unset PDTROOT . fys.set.Niflheim.gfortran.4.1.2.sh module load PDTOOLKIT/${pdtoolkit_version}-1.el5.fys.${compiler}.${compiler_version}.python${python_version} . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.tau.sh # module purge unset PDTROOT . fys.set.Niflheim.gfortran43.4.3.2.sh module load PDTOOLKIT/${pdtoolkit_version}-1.el5.fys.${compiler}.${compiler_version}.python${python_version} . fys.set.Niflheim.openmpi.1.3.3.sh . fys.build.tau.sh
vasp
Installed with restricted access under vasp UNIX group (needs te be created in advance).
vasp potentials
Download potpaw/potcar.date.tar, potpaw_GGA/potcar.date.tar, and potpaw_PBE/potcar.date.tar to ~/rpmbuild/SOURCES. Create links to the downloaded files so the files are named explicitly with the string date (not the actual dates), for example:
ls -al ~/rpmbuild/SOURCES/potpaw_*potcar.date.tar lrwxrwxrwx 1 rpmbuild campnone 29 Sep 25 17:15 ../SOURCES/potpaw_GGA_potcar.date.tar -> potpaw_GGA/potcar.06Feb03.tar lrwxrwxrwx 1 rpmbuild campnone 29 Sep 25 17:14 ../SOURCES/potpaw_PBE_potcar.date.tar -> potpaw_PBE/potcar.05Feb03.tar lrwxrwxrwx 1 rpmbuild campnone 25 Sep 25 17:14 ../SOURCES/potpaw_potcar.date.tar -> potpaw/potcar.05Feb03.tar
Note this package is not relocatable!
On a custom system build the following RPMS:
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.vasp-potpaw.sh)
On Niflheim build the following RPMS:
. fys.build.vasp-potpaw.sh
vasp
vasp. Download vasp.5.X.Y.tar.gz and vasp.5.lib.tar.gz to ~/rpmbuild/SOURCES. Optionally download also vtstcode.tar.gz from http://theory.cm.utexas.edu/vtsttools/download.html.
On a custom system build the following RPMS:
# Compile with VASP TST library: http://theory.cm.utexas.edu/vtsttools/downloads/ hdf=none tst=false # or true . fys.set.vasp.5.2.11.default.sh (rpm_prefix=/usr && . fys.build.vasp.sh)
On Niflheim build the following RPMS:
# gfortran 4.1.2 is the only of our compilers that works! MD 6 Oct 2011 # Compile with VASP TST library: http://theory.cm.utexas.edu/vtsttools/downloads/ hdf=none tst=false # or true . fys.set.Niflheim.vasp.5.2.12.gfortran.4.1.2.openmpi.1.3.3.acml.4.0.1.acml.4.0.1.fftw3.sh . fys.build.vasp.sh # # 25 Sep 2009: segmentation fault when compiling dipol.f90 hdf=none tst=false # or true . fys.set.Niflheim.vasp.5.2.2.gfortran43.4.3.2.openmpi.1.3.3.acml.4.3.0.acml.4.3.0.fftw3.sh . fys.build.vasp.sh # # 11 May 2010: in dfast.f90"LINCOM" is the name of this program unit, therefore it must not be use associated from module "DFAST". hdf=none tst=false # or true . fys.set.Niflheim.vasp.5.2.2.open64.4.2.3.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.fftw3.sh . fys.build.vasp.sh # # only on thul # 15 Feb 2011; 6 Oct 2011: forrtl: severe (174): SIGSEGV, segmentation fault occurred during DAV hdf=none tst=false # or true . fys.set.Niflheim.vasp.5.2.12.ifort.11.1.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.fftw3.sh . fys.build.vasp.sh
exciting
exciting species
Note this package is not relocatable!
On a custom system build the following RPMS:
(default_version_usage="--with default_version" && modules_usage="--without modules" && . fys.build.exciting-species.9.10.sh)
On Niflheim build the following RPMS:
. fys.build.exciting-species.9.10.sh
exciting
Note: currently (24 Nov 2009) perl-XML-SAX-0.14-5 is broken https://bugzilla.redhat.com/show_bug.cgi?id=438291 on EL5; if exciting's tests complain about:
could not find ParserDetails.ini
do as root:
perl -MXML::SAX -e "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()"
On a custom system build the following RPMS:
# March 12 2010: build fails on el5 with gfortran 4.1.2 and 4.3.2 . fys.set.gfortran.default.sh . fys.set.openmpi.default.sh . fys.set.arpack.default.sh . fys.set.atlas.default.sh (rpm_prefix=/usr && thread_mode=nomp && . fys.build.exciting.9.10.sh) # March 12 2010: build fails on el5 with gfortran 4.1.2 and 4.3.2 . fys.set.gfortran.default.sh . fys.set.openmpi.default.sh . fys.set.arpack.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh (rpm_prefix=/usr && thread_mode=nomp && . fys.build.exciting.9.10.sh)
On Niflheim build the following RPMS:
# only on fjorm . fys.set.Niflheim.g95.0.91.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.blas.acml.4.3.0_mp.sh . fys.set.lapack.acml.sh (thread_mode=mp && . fys.build.exciting.9.10.sh) # only on thul . fys.set.Niflheim.ifort.11.0.sh . fys.set.Niflheim.openmpi.1.3.3.sh . fys.set.Niflheim.mkl.10.1.3.027.sh (thread_mode=nomp && . fys.build.exciting.9.10.sh)
fleur
fleur
fleur. Download the source to ~/rpmbuild/SOURCES.
On a custom system build the following RPMS:
. fys.set.fleur.default.sh (rpm_prefix=/usr && . fys.build.fleur.sh)
On Niflheim build the following RPMS:
. fys.set.Niflheim.fleur.v26b.gfortran43.4.3.2.openmpi.1.3.3.acml.4.4.0.acml.4.4.0.sh . fys.build.fleur.sh # only on thul # Sep 04 2010: build fails with forrtl: severe (174): SIGSEGV, segmentation fault occurred . fys.set.Niflheim.fleur.v26b.ifort.11.0.openmpi.1.3.3.mkl.10.1.3.027.mkl_lapack.10.1.3.027.sh . fys.build.fleur.sh
gulp
Installed with restricted access under gulp UNIX group (needs te be created in advance).
gulp
gulp. Download gulp.3.4.source.tar.gz ~/rpmbuild/SOURCES.
On a custom system build the following RPMS:
. fys.set.gfortran.default.sh . fys.set.blas.default.sh . fys.set.lapack.default.sh (rpm_prefix=/usr && thread_mode=mp && . fys.build.gulp.sh)
On Niflheim build the following RPMS:
# OpenMP version . fys.set.Niflheim.gfortran43.4.3.2.sh . fys.set.blas.acml.4.3.0_mp.sh . fys.set.lapack.acml.sh (thread_mode=mp && . fys.build.gulp.sh)
cmr
Computational Materials Repository.
On a custom system build the following RPMS:
(rpm_prefix=/usr && rpmbuild -bb ${default_version_usage} ${modules_usage} cmr.spec)
On Niflheim build the following RPMS:
module load DACAPO module load GPAW module unload ASE3 module load ASE3 module load SCIENTIFICPYTHON/2.8 # if needed, create tar file cd ~/rpmbuild/SOURCES && python cmr_release.py cd ~/rpmbuild/SPECS . fys.build.cmr.sh
Testing packages
Note this section is outdated.
Test dacapo installation (as normal user!).
If you use modules:
module load campos-dacapo # fulfill all dependencies requested by module ulimit -s 500000 # dacapo needs a large stack
Test with (make sure that /scratch/$USER exists):
cp -r `rpm -ql campos-dacapo-python | grep "share/campos-dacapo-python$"` /tmp cd /tmp/campos-dacapo-python/Tests python test.py 2>&1 | tee test.log
It can take up to 1 day. Please consider disabling these "long" tests in test.py:
tests.remove('../Examples/Wannier-ethylene.py') tests.remove('../Examples/Wannier-Pt4.py') tests.remove('../Examples/Wannier-Ptwire.py') tests.remove('../Examples/Wannier-Fe-bcc.py') tests.remove('../Examples/transport_1dmodel.py')
Note all vtk related tests will fail.
Test gpaw installation (as normal user!):
If you use modules:
module load campos-gpaw # fulfill all dependencies requested by module
Test with:
cp -r `rpm -ql campos-gpaw | grep "share/campos-gpaw/test$"` /tmp/test.gpaw.$$ cd /tmp/test.gpaw.* python test.py 2>&1 | tee test.log
It takes about 20 minutes.