WiscSort / pmem_benchmark / util / mx_avg_calc.py
mx_avg_calc.py
Raw
#!/usr/bin/python
import sys
block_size = sys.argv[3:]
f = open(sys.argv[1], "r")
vals = f.readlines()

avg_lst = [0] * len(block_size)
read_lst = [0] * len(block_size)
write_lst = [0] * len(block_size)

i = 0
for val in vals:
    if i == len(block_size):
        i = 0
    ab = val.split(":")
    if ab[0] == "Write":
        write_lst[i] += float(ab[1].strip())
    elif ab[0] == "Read":
        read_lst[i] += float(ab[1].strip())
    else:
        avg_lst[i] += float(ab[1].strip())
    i += 1
avg_lst[:] = [x / float(sys.argv[2]) for x in avg_lst]
read_lst[:] = [y / float(sys.argv[2]) for y in read_lst]
write_lst[:] = [z / float(sys.argv[2]) for z in write_lst]
for j in range(len(block_size)):
#     print block_size[j],avg_lst[j]
     print read_lst[j],write_lst[j],avg_lst[j]