blob: 801bad001d1e1b27612660a62bd297ec2c22e707 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#!/bin/sh
# This script can be used to run benchmarks for vcube, similar to the
# benchmarks for H48 run by run-h48-benchmarks.sh. Before running this script,
# move it to the vcube folder and and adjust the paths below if necessary.
scr="../nissy-core/benchmarks/scrambles"
out="../nissy-core/benchmarks/results_vcube.py"
get_solve_time() {
./vc-optimal -w "$1" -c "$2" <"$3" \
2>&1 >/dev/null | sed 's/Total time: //; s/ real.*//'
}
do_all() {
t=$1
name=$2
printf '%s = {\n' "$name" >> "$out"
for i in 112 208 308 404 212 ; do
t17="$(get_solve_time $t $i "$scr/scrambles-17.txt")"
t18="$(get_solve_time $t $i "$scr/scrambles-18.txt")"
t19="$(get_solve_time $t $i "$scr/scrambles-19.txt")"
printf '\t%s: {17: %s, 18: %s, 19: %s' $i $t17 $t18 $t19 >> "$out"
if [ "$i" -ge 212 ]; then
t20="$(get_solve_time $t $i "$scr/scrambles-20.txt")"
printf ', 20: %s' $t20 >> "$out"
if [ "$t" = 1 ]; then
tsf="$(get_solve_time $t $i "$scr/superflip.txt")"
printf ', "superflip": %s},\n' $tsf >> "$out"
else
printf '},\n' >> "$out"
fi
else
printf '},\n' >> "$out"
fi
done
printf '}\n\n' >> "$out"
}
printf '' > "$out"
do_all 1 "vcube_single_thread"
do_all 4 "vcube_4_threads"
do_all 16 "vcube_16_threads"
|