# #! NTHREADS=80 NEVENTS=999 NSTAT=1 STEP=24 START=0 rm -rf make_tbbtime_E7_0.txt make_tbbtime_E7_1.txt make_tbbtime_E7_2.txt make_tbbtime_E7_3.txt FILE0="make_tbbtime_E7_0.txt" FILE1="make_tbbtime_E7_1.txt" FILE2="make_tbbtime_E7_2.txt" FILE3="make_tbbtime_E7_3.txt" PREF0=`pwd` PREF1=$PREF0/../../build/ for iProc in {0..3} do for ii in {0..7} do threadNumberToCpuMap[$(( 2 * ii + 0 + iProc*20))]=$((4 * ii + iProc)); threadNumberToCpuMap[$(( 2 * ii + 1 + iProc*20))]=$((4*$ii + 32 + $iProc)); done for ii in {0..1} do threadNumberToCpuMap[$((2*ii + 0 + 16 + iProc*20))]=$((4*ii + iProc + 64)); threadNumberToCpuMap[$((2*ii + 1 + 16 + iProc*20))]=$((4*ii + 8 + iProc + 64)); done done SLEEP_TIME=10 NSOCKETS=4 iProc=0 for i in {1..20} do j=1 while [ $j -le $NSTAT ] do echo -e " tbb $i - $j" NThreads=`expr $i + 0` echo -e "$NThreads" >> $FILE0 # cd $PREF1; if [ $i -eq 1 ] then CoreList1=${threadNumberToCpuMap[iProc]} else CoreList1=$CoreList1,${threadNumberToCpuMap[iProc]} fi iProc=`expr $iProc + 1` echo $CoreList1 taskset -c $CoreList1 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads $i -Step $i -iSocket 0 >> $FILE0 j=`expr $j + 1` done done for i in {1..20} do j=1 while [ $j -le $NSTAT ] do echo -e " tbb $i - $j" NThreads=`expr $i + 20` echo -e "$NThreads" >> $FILE0 echo -e "$NThreads" >> $FILE1 # cd $PREF1; if [ $i -eq 1 ] then CoreList2=${threadNumberToCpuMap[iProc]} else CoreList2=$CoreList2,${threadNumberToCpuMap[iProc]} fi iProc=`expr $iProc + 1` echo $CoreList1 echo $CoreList2 taskset -c $CoreList2 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads $i -Step $i -iSocket 1 >> $FILE1 & taskset -c $CoreList1 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads 20 -Step 20 -iSocket 0 >> $FILE0 sleep $SLEEP_TIME j=`expr $j + 1` done done for i in {1..20} do j=1 while [ $j -le $NSTAT ] do echo -e " tbb $i - $j" NThreads=`expr $i + 40` echo -e "$NThreads" >> $FILE0 echo -e "$NThreads" >> $FILE1 echo -e "$NThreads" >> $FILE2 # cd $PREF1; if [ $i -eq 1 ] then CoreList3=${threadNumberToCpuMap[iProc]} else CoreList3=$CoreList3,${threadNumberToCpuMap[iProc]} fi iProc=`expr $iProc + 1` echo $CoreList1 echo $CoreList2 echo $CoreList3 taskset -c $CoreList3 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads $i -Step $i -iSocket 2 >> $FILE2 & taskset -c $CoreList1 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads 20 -Step 20 -iSocket 0 >> $FILE0 & taskset -c $CoreList2 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads 20 -Step 20 -iSocket 1 >> $FILE1 sleep $SLEEP_TIME j=`expr $j + 1` done done for i in {1..20} do j=1 while [ $j -le $NSTAT ] do echo -e " tbb $i - $j" NThreads=`expr $i + 60` echo -e "$NThreads" >> $FILE0 echo -e "$NThreads" >> $FILE1 echo -e "$NThreads" >> $FILE2 echo -e "$NThreads" >> $FILE3 # cd $PREF1; if [ $i -eq 1 ] then CoreList4=${threadNumberToCpuMap[iProc]} else CoreList4=$CoreList4,${threadNumberToCpuMap[iProc]} fi iProc=`expr $iProc + 1` echo $CoreList1 echo $CoreList2 echo $CoreList3 echo $CoreList4 taskset -c $CoreList4 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads $i -Step $i -iSocket 3 >> $FILE3 & taskset -c $CoreList1 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads 20 -Step 20 -iSocket 0 >> $FILE0 & taskset -c $CoreList2 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads 20 -Step 20 -iSocket 1 >> $FILE1 & taskset -c $CoreList3 $PREF1/CA_parallel -dir "/d/cbm02/ikulakov/STAP/mbias_0maps_1000ev_11012012/" -ev 0 $NEVENTS -nThreads 20 -Step 20 -iSocket 2 >> $FILE2 sleep $SLEEP_TIME j=`expr $j + 1` done done