chiark / gitweb /
check: print totals
[version-charset-test.git] / invoke
1 #!/bin/bash
2 set -o pipefail
3 set -ex
4
5 cpus=$(
6         perl -we '
7             use strict;
8             require Sys::CPU;
9             my $ncpus = Sys::CPU::cpu_count();
10             $ncpus *= 1.5;
11             print $ncpus, " " or die $!;
12             print join " ", (0 .. $ncpus-1) or die $!;
13             print "\n" or die $!;
14         ' ||
15         echo 3 0 1 2
16 )
17
18 ncpus=${cpus%% *}
19 cpus=${cpus#* }
20
21 echo >&2 "ncpus=$ncpus cpus=($cpus)"
22
23 pids=()
24
25 for cpu in $cpus; do
26         (
27         ./generate $cpu/$ncpus "$@"                             | \
28         ../dpkg/src/dpkg --filter-valid-versions                | \
29         ./escape                                                | \
30         ./check $cpu
31         echo >&2 "cpu $cpu ok"
32         ) &
33         pids+=( $! )
34 done
35
36 for pid in ${pids[*]}; do
37         wait $pid
38 done
39
40 echo '*** OK EVERYTHING IS FINE ***'
41
42