Student: Xinsheng Zhang (xz1757)
Reviewer: yx1350, dov205
Original script execution time: 1m39.423s
Version_1 Improvement: Reducing function call overhead
Version_1 script execution time: 0m45.447s
Comparing with original version, Relative Speedup (R): 2.366
Improvement ranking: 1st
Version_2 Improvement: Using alternatives to membership testing of lists
Improvement detail: change list to set at Line 81 and Line 108
Version_2 script execution time: 1m41.464s
Comparing with original version, Relative Speedup (R): 1.059
Improvement ranking: 3rd
Version_3 Improvement: Using local rather than global variables
Version_3 script execution time: 1m42.002s
Comparing with original version, Relative Speedup (R): 1.054
Improvement ranking: 4th
Version_4 Improvement: Using data aggregation to reduce loop overheads
Version_4 script execution time: 1m29.640s
Comparing with original version, Relative Speedup (R): 1.199
Improvement ranking: 2nd
Version_opt Improvement: combine all the improvement made by version_1 to version_4
Version_opt script execution time: 0m31.287s
Comparing with original version, Relative Speedup (R): 3.436
Version_opt script after code review, execution time: 0m28.863s
Comparing with original version, Relative Speedup (R): 3.725