112027Sjungma@eit.uni-kl.de#! /bin/awk -f 212027Sjungma@eit.uni-kl.de 312027Sjungma@eit.uni-kl.deBEGIN { 412027Sjungma@eit.uni-kl.de purpose = "report times for microbenchmarks" 512027Sjungma@eit.uni-kl.de 612027Sjungma@eit.uni-kl.de nmach = 0; 712027Sjungma@eit.uni-kl.de 812027Sjungma@eit.uni-kl.de test_callind = "18"; 912027Sjungma@eit.uni-kl.de test_callimm = "18"; 1012027Sjungma@eit.uni-kl.de test_addreg = "20"; 1112027Sjungma@eit.uni-kl.de test_loadreg = "21"; 1212027Sjungma@eit.uni-kl.de} 1312027Sjungma@eit.uni-kl.de 1412027Sjungma@eit.uni-kl.de{ 1512027Sjungma@eit.uni-kl.de mach = $1 1612027Sjungma@eit.uni-kl.de test = $2 1712027Sjungma@eit.uni-kl.de iter = $3 1812027Sjungma@eit.uni-kl.de time = $6 + $8 1912027Sjungma@eit.uni-kl.de 2012027Sjungma@eit.uni-kl.de if (machi[mach] == 0) { 2112027Sjungma@eit.uni-kl.de machn[nmach] = mach; 2212027Sjungma@eit.uni-kl.de machi[mach] = 1; 2312027Sjungma@eit.uni-kl.de ++nmach; 2412027Sjungma@eit.uni-kl.de } 2512027Sjungma@eit.uni-kl.de 2612027Sjungma@eit.uni-kl.de ns_per_op = time / iter * 1000000 2712027Sjungma@eit.uni-kl.de times[mach "_" test] = ns_per_op; 2812027Sjungma@eit.uni-kl.de} 2912027Sjungma@eit.uni-kl.de 3012027Sjungma@eit.uni-kl.de 3112027Sjungma@eit.uni-kl.deEND { 3212027Sjungma@eit.uni-kl.de for (i=0; i<nmach; ++i) { 3312027Sjungma@eit.uni-kl.de m = machn[i]; 3412027Sjungma@eit.uni-kl.de 3512027Sjungma@eit.uni-kl.de ind = times[m "_" test_callind]; 3612027Sjungma@eit.uni-kl.de imm = times[m "_" test_callimm]; 3712027Sjungma@eit.uni-kl.de add = times[m "_" test_addreg]; 3812027Sjungma@eit.uni-kl.de load = times[m "_" test_loadreg]; 3912027Sjungma@eit.uni-kl.de printf ("%s|%1.3f|%1.3f|%1.3f|%1.3f\n", m, ind, imm, add, load); 4012027Sjungma@eit.uni-kl.de } 4112027Sjungma@eit.uni-kl.de} 42