- module load python3 (for conda)
- module load gcc (for gcc7)
- conda create -n lcls2 python=3.6
- source activate lcls2
- conda install cmake cython numpy matplotlib mpi4py pytest rapidjson pymongo mongodb requests (NOTE: NERSC recommends building mpi4py. See this link: Building MPI4PY)
- source setup_env.sh (removing psconda.sh line) to set PYTHONPATH
- export CRAYPE_LINK_TYPE=dynamic (to disable default static linking)
- ./build_all.sh -d ("-d" to not build the daq)
- pytest psana/psana/tests (currently 3 tests fail, perhaps because I haven't built mpi4py)
Note: To run a program that imports mpi4py at NERSC you have to be on a compute node. Google "nersc interactive" to see how to get an interactive session on a compute node. Also, use the "srun" command instead of mpirun. If you try to run on a login node you will see an error like:
(lcls2) cpo@cori11:~/git/lcls2> python junk1.py [Mon Jan 14 14:07:25 2019] [unknown] Fatal error in PMPI_Init_thread: Other MPI error, error stack: MPIR_Init_thread(537): MPID_Init(246).......: channel initialization failed MPID_Init(638).......: PMI2 init failed: 1 Aborted
Overview
Content Tools