|
| 1 | +import subprocess |
| 2 | + |
| 3 | +#workloads = [(1024,16,16,2048,1024,1,1,1,1), |
| 4 | +#(960,8,8,160,960,1,1,1,1), |
| 5 | +#(256,56,56,512,256,1,1,1,1), |
| 6 | +#(64,56,56,128,64,1,1,1,1), |
| 7 | +#(512,10,10,512,512,3,3,1,1), |
| 8 | +#(192,16,16,160,192,3,3,1,1), |
| 9 | +#(64,65,65,128,64,3,3,1,1), |
| 10 | +#(320,65,65,384,320,3,3,1,1), |
| 11 | +#(384,8,8,384,384,1,3,1,1), |
| 12 | +#(192,23,23,192,192,7,1,1,1), |
| 13 | +#(3,224,224,64,3,7,7,2,2), |
| 14 | +#(1024,15,15,2048,1024,1,1,2,2), |
| 15 | +#(128,65,65,256,128,3,3,2,2)] |
| 16 | +# |
| 17 | +#workloads = [(1, 288, 35, 35, 384, 288, 3, 3, 2, 2), (1, 160, 9, 9, 224, 160, 3, 3, 1, 1), (1, 1056, 7, 7, 192, 1056, 1, 1, 1, 1), (1, 80, 73, 73, 192, 80, 3, 3, 1, 1), (1, 128, 16, 16, 128, 128, 3, 3, 1, 1), (1, 192, 16, 16, 192, 192, 3, 3, 1, 1), (1, 256, 16, 16, 256, 256, 3, 3, 1, 1), (1, 1024, 14, 14, 512, 1024, 1, 1, 1, 1), (1, 128, 16, 16, 160, 128, 3, 3, 1, 1), (1, 576, 14, 14, 192, 576, 1, 1, 1, 1), (1, 96, 16, 16, 128, 96, 3, 3, 1, 1), (1, 1024, 14, 14, 256, 1024, 1, 1, 1, 1), (1, 576, 14, 14, 128, 576, 1, 1, 1, 1), (1, 64, 29, 29, 96, 64, 3, 3, 1, 1), (1, 64, 56, 56, 128, 64, 1, 1, 2, 2), (1, 608, 14, 14, 192, 608, 1, 1, 1, 1)] |
| 18 | +# |
| 19 | +workloads = [ |
| 20 | +(256, 16, 16, 256, 3, 1), |
| 21 | +(512, 9, 9, 512, 3, 1), |
| 22 | +(128, 30, 30, 128, 3, 1), |
| 23 | +(64, 56, 56, 128, 1, 2), |
| 24 | +(64, 58, 58, 64, 3, 1), |
| 25 | +(128, 28, 28, 256, 1, 2), |
| 26 | +(256, 16, 16, 512, 3, 2), |
| 27 | +(64, 58, 58, 128, 3, 2), |
| 28 | +(4, 230, 230, 64, 7, 2), |
| 29 | +(128, 30, 30, 256, 3, 2), |
| 30 | +(256, 14, 14, 512, 1, 2) |
| 31 | +] |
| 32 | + |
| 33 | +for i in workloads: |
| 34 | + exec_time = [] |
| 35 | + with open('input', 'w') as f: |
| 36 | + lst = list(i) |
| 37 | + #for j in (i[1:5] + i[6:]): |
| 38 | + # f.write(str(j) + '\n') |
| 39 | + f.write(str(i[0]) + '\n') |
| 40 | + f.write(str(i[1]) + '\n') |
| 41 | + f.write(str(i[2]) + '\n') |
| 42 | + f.write(str(i[3]) + '\n') |
| 43 | + f.write(str(i[4]) + '\n') |
| 44 | + f.write(str(i[4]) + '\n') |
| 45 | + f.write(str(i[5]) + '\n') |
| 46 | + f.write(str(i[5]) + '\n') |
| 47 | + try: |
| 48 | + avg = [] |
| 49 | + for j in range(10): |
| 50 | + res = subprocess.check_output('./mkldnn_conv3d.out < input', shell=True).decode('utf-8') |
| 51 | + res = res.split('\n')[1] |
| 52 | + res = res.lstrip('Exec time: ').rstrip('us') |
| 53 | + res = float(res) * 1e6 |
| 54 | + res = int(res) |
| 55 | + avg.append(res) |
| 56 | + exec_time.append(sum(avg) / len(avg)) |
| 57 | + except: |
| 58 | + print(i, 'fails') |
| 59 | + print(i, min(exec_time)) |
| 60 | + |
0 commit comments