Page History
Guidelines (Rules)
- see also this Building External Packages From Git Tags
- start
Desing Notes
- We will start our build numbers at 100 to get conda to pick our channel builds over other channels
- We will also add descriptive build strings to help specify uniquify our package canonical names
MPI
- We maintain our own installation of openmpi to make it lsf aware and build with verbs
- We add lsf_verbs to the package name
- It appears possible to build other mpi vendor implementations for lsf, google lsf aware mpi
Updating MPI
- We will maintain the file manage/config/package_build_order
- This will tell us the order to rebuild packages, ie, openmpi, szip, hdf, mpi4py, h5py, pytables.
- Usually szip doe not need to be rebuilt
Build MPI Package
- like openmpi_verbs_lsf
- record log files of all builds
- print environment and compiler used at the top of all build.sh scripts
- record the md5 sum of the package file in the meta.yaml
- just use the root environment of the miniconda install on the correct host, deactivate any conda environments you might be in
- use from the conda root dir, in a dev miniconda, do: ana-rel-manage -c bld-pkg -r manage/recipes/system/openmpi-1.10.3
- Do this on rhel5/6/7
- We'll build packages in the dev and install them in both dev and prod
Test Built MPI Package
- to build packages. This does the following extra things:
- save a log file, manage the filename, repeat builds of same package name get new name
- moved built package into our file based channel
- re-indexes the channel so we can install the package
- sudo as psreldev
- setup_condadev7
- source activate _test
- Gets you in the _test environment that was just used to build openmpi
- cd $CONDA_ROOT/test/mpi
- mpicc one of the C programs
- bsub -n 3 mpirun -o output.log ./a.out
- Check that it ran correctly
Overview
Content Tools