#!/bin/sh ################################################### # ATLAS BENCHMARK KICKSTART # Alessandro De Salvo - 20100511 # # # By default this script will install and validate # release 14.1.0 of the ATLAS software sending # the test results to the GKV portal # https://kv.roma1.infn.it/KV # # To start the benchmark simply execute the script # without any parameter # # ./atlas-benchmark # # If you want to benchmark a different release invoke # the script as # # ./atlas-benchmark # # Check the options below to customize the actions # to your needs ################################################### # Select the action to perform: # "validate" : install and test a release # "test" : test an existing release # The default is "validate" ACTION="validate" # Set this where you want to install the release VO_ATLAS_SW_DIR=$PWD # The release number you want to benchmark [ "$1" == "" ] && RELEASE=15.6.9 || RELEASE=${1} # The top project. Leave it set as "AtlasOffline" for base releases # or change it to "AtlasProduction" for production patches [ "`echo $RELEASE | cut -d. -f 4`" != "" ] && PROJECT="AtlasProduction" || PROJECT="AtlasOffline" # Set this as "release" for main releases and "patch" for patches [ "`echo $RELEASE | cut -d. -f 4`" != "" ] && PTYPE="patch" || PTYPE="release" # The base architecture for this release ARCH="_i686_slc5_gcc43" # The pacman version you want to use PACMAN_VER=3.29 # The logical (displaced) location of the release, i.e. the user entry-point # You need a few MB here LOGPATH=$VO_ATLAS_SW_DIR/software/$RELEASE # The physical location of the release, i.e. where the release will be # actually installed. You will need about 8GB here PHYSPATH=$VO_ATLAS_SW_DIR/releases # The Benchmark suite you want to run. Available suites are: # CSC, CSCalt1, RecoStandAlone, MC09, MC09ext [ -z "$KVSUITE" ] && KVSUITE=MC09ext # The number of concurrent threads for this test [ -z "$THREADS" ] && THREADS="`cat /proc/cpuinfo | grep ^processor | wc -l`" # The user tag you want to associate to this test, useful for later retrieval # and analysis in GKV, https://kv.roma1.infn.it/KV [ -z "$KVTAG" ] && KVTAG="`/bin/hostname -d | cut -d. -f 1 | tr a-z A-Z`_benchmark_`/bin/cat /proc/cpuinfo | grep "model name" | tail -n 1 | sed -e 's#([rR])##g' -e 's#([tT][mM])##g' -e 's#CPU##g' -e 's#Processor##g' -e 's# ##g' -e 's#@#_#g' | cut -d: -f 2`_`echo $KVSUITE | sed 's#,#_#g'`_`cat /proc/cpuinfo | grep ^processor | wc -l`c_${THREADS}t" # The location of the sw-mgr script. The script will be downloaded from GKV # at the beginning of the tests. You should not need to change this. SW_MGR="https://kv.roma1.infn.it/KV/sw-mgr" # ##################################################### # You should not need to touch anything below here... ##################################################### # wget --no-check-certificate -N ${SW_MGR} -o wget.log EXE="${PWD}/`basename ${SW_MGR}`" if [ -s ${EXE} ] ; then chmod +x ${EXE} if [ "`echo $ARCH | sed 's/.*\(slc.\).*/\1/'`" == "slc5" ] ; then KVCONF=http://kv.roma1.infn.it/KV/KV_benchmark_slc5.xml else KVCONF=http://kv.roma1.infn.it/KV/KV_benchmark.xml fi if [ "$ACTION" == "validate" ] ; then SW_MGR_OPTS="-i $RELEASE --validate" if [ "`echo $ARCH | sed 's/.*\(gcc..\).*/\1/'`" == "gcc43" ] ; then ${EXE} -i 4.3.2 --validate -p $VO_ATLAS_SW_DIR/atlas-gcc/432/x86_64 \ -n -o --no-tag -P gcc -T ext -t _x86_64_slc5_gcc43 -O opt \ -m $PACMAN_VER --site-config $VO_ATLAS_SW_DIR/AtlasSiteConfig.sh \ --kit-cache http://classis01.roma1.infn.it/pacman/cache/gcc ${EXE} -i 4.3.2 --validate -p $VO_ATLAS_SW_DIR/atlas-gcc/432/i686 \ -n -o --no-tag -P gcc -T ext -t _i686_slc5_gcc43 -O opt \ -m $PACMAN_VER --site-config $VO_ATLAS_SW_DIR/AtlasSiteConfig.sh \ --kit-cache http://classis01.roma1.infn.it/pacman/cache/gcc SW_MGR_OPTS="$SW_MGR_OPTS --site-config $VO_ATLAS_SW_DIR/AtlasSiteConfig.sh" KVCONF=http://kv.roma1.infn.it/KV/KV_benchmark_slc5.xml fi else SW_MGR_OPTS="--test $RELEASE" fi ${EXE} ${SW_MGR_OPTS} -l $LOGPATH -p $PHYSPATH \ -o -P $PROJECT -T $PTYPE -t $ARCH -O opt \ -m $PACMAN_VER --no-tag --kv-conf $KVCONF \ --kv-disable ALL --kv-enable $KVSUITE --tthreads $THREADS \ --kvpost --kvpost-tag "$KVTAG" else echo "Cannot get ${SW_MGR}" fi