Scripts to Measure Python Runtimes
One Time Test
import sys
from datetime import datetime
if __name__ == "__main__":
print(f"Running {sys.argv[1]}")
start_time = datetime.now()
exec(open(sys.argv[1]).read())
end_time = datetime.now()
print(f"Total Runtime: {end_time - start_time}")
To use this script, simply run python <scriptname> <pythonfiletorun>
Multiple Time Test
import sys
from datetime import datetime
if __name__ == "__main__":
print(f"Running {sys.argv[1]} {sys.argv[2]} time(s).")
start_times = []
end_times = []
for i in range(0,int(sys.argv[2])):
start_time = datetime.now()
exec(open(sys.argv[1]).read())
end_time = datetime.now()
start_times.append(start_time)
end_times.append(end_time)
times = []
i = 0
while i<len(end_times):
times.append(end_times[i] - start_times[i])
i+=1
print(f"Fastest Runtime: {min(times)}")
To run this script, simply run python <scriptname> <pythonfiletorun> <numberoftimes>
… for example: python averagetime.py day1.py 40
would run day1.py 40 times, and return the fastest runtime.