runOFI.sh 1.33 KB
Newer Older
1
2
3
4
5
6
7
8
#!/bin/bash

#SBATCH -N 8
#SBATCH -p P1
#SBATCH --exclude=c01,c00,c02


dirM="/home/martini/SparseMatrix/"
9
dirCG="/home/martini/malleable_cg"
10
11
12
13
14
#matrix="Queen_4147.rb"
#matrix="audikw_1.rb"
matrix="bcsstk01.rsa"

#procs=(2 10 20 40 80 120 160)
15
procs=(2 4)
16
17
18
msm=(0 1)
mss=(1 2)
mrm=(0 1)
19
is_syncs=(1 0)
20
21
22
23
24

echo $matrix
for proc in "${procs[@]}"
do
  echo "------------------------------------------run np=$proc next=0"
25
  for proc_c in "${procs[@]}"
26
  do
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
    if [ $proc -ne $proc_c ]
    then

      max_numP=$proc
      if [ "$proc_c" -gt "$proc" ];
      then
        max_numP=$proc_c
      fi
      node_qty=$(($max_numP / 20))
      if [ $node_qty -eq 0 ]
      then
        node_qty=1
      fi

      for sm_type in "${msm[@]}"
42
      do
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
        for rm_type in "${mrm[@]}"
        do
          for is_sync in "${is_syncs[@]}"
          do
            if [ $is_sync -eq 1 ] # Matrix is send syncrhonously
            then
              sbatch -p P1 -N $node_qty $dirCG/generalRun.sh $proc $dirM$matrix $proc_c $sm_type 1 $rm_type 1 $is_sync
  	    else # Matrix is send asyncrhonously
              for ss_type in "${mss[@]}"
              do
                sbatch -p P1 -N $node_qty $dirCG/generalRun.sh $proc $dirM$matrix $proc_c $sm_type $ss_type $rm_type $ss_type $is_sync
	      done
 	    fi
          done
        done
58
      done
59
    fi
60
61
62
63
  done
done

echo "End"