1#! /bin/awk -f 2 3BEGIN { 4 purpose = "report times for microbenchmarks" 5 6 nmach = 0; 7 8 test_callind = "18"; 9 test_callimm = "18"; 10 test_addreg = "20"; 11 test_loadreg = "21"; 12} 13 14{ 15 mach = $1 16 test = $2 17 iter = $3 18 time = $6 + $8 19 20 if (machi[mach] == 0) { 21 machn[nmach] = mach; 22 machi[mach] = 1; 23 ++nmach; 24 } 25 26 ns_per_op = time / iter * 1000000 27 times[mach "_" test] = ns_per_op; 28} 29 30 31END { 32 for (i=0; i<nmach; ++i) { 33 m = machn[i]; 34 35 ind = times[m "_" test_callind]; 36 imm = times[m "_" test_callimm]; 37 add = times[m "_" test_addreg]; 38 load = times[m "_" test_loadreg]; 39 printf ("%s|%1.3f|%1.3f|%1.3f|%1.3f\n", m, ind, imm, add, load); 40 } 41} 42