Solid container

From Hall A Wiki
Revision as of 15:12, 5 March 2018 by Zwzhao (Talk | contribs) (New page: (testing as 2018/03) = introduction = jlab ifarm and farm support singularity container. Users can run docker or singularity container on any local machines. singularity can load docke...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

(testing as 2018/03)

introduction

jlab ifarm and farm support singularity container. Users can run docker or singularity container on any local machines. singularity can load docker image.

A docker image is made for solid. This could be a standard way to run solid software on any machine for consistent result without need for installation.

Read Note_about_container for any general things using container

how to use it

get image
sudo docker pull jlabsolid/jlabsolidapps:test
sudo singularity pull docker://jlabsolid/jlabsolidapps:test
location on ifarm, /group/solid/apps/jlabsolidapps-test.simg (build by singularity-2.4.2 pull from docker
location on web, http://www.phy.duke.edu/~zz81/package/jlabsolidapps-test.simg with md5 e41378641735ce5ae15e74d77526a248
run it with singularity anywhere
setenv image_FULL_PATH (/group/solid/apps on ifarm or where you have it on local machine)
setenv $solid_repo_FULL_PATH (/group/solid/solid_svn on ifarm or where you have it on your local machine)
module load singularity-2.4.2
cd your_work_dir (so that your_work_dir will be auto mounted in the container)
singularity shell --bind  $solid_repo_FULL_PATH:/solid_svn $image_FULL_PATH/jlabsolidapps-test.simg 
env -i tcsh
source /jlabsolidapps/JLAB_ROOT/setup
setenv LD_LIBRARY_PATH ${GEMC}/source:${LD_LIBRARY_PATH}
setenv SoLID_GEMC /solid_svn/solid_gemc2
setenv PATH ${SoLID_GEMC}/source/${GEMC_VERSION}:${PATH}
cd $SoLID_GEMC/script
solid_gemc solid_SIDIS_He3_full.gcard -USE_GUI=0                    (batch mode)
(not working on ifarm yet) solid_gemc solid_SIDIS_He3_full.gcard    (graphic mode)
exit or ctrl-c  (leave container)
run it with docker on your local machine
sudo docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --ipc=host jlabsolid/jlabsolidapps:test


How to use it to run jlab farm job
examples are at /work/halla/solid/sim/solid_gemc/PVDIS_LD2_JLAB_VERSION_1.3/pass6