We could have done the timing of the programs in 15 separate runs instead than consecutively but that would have added delays to each run instead of just the first of the tests. In order to have a more precise calculation of times (as far as possible), it was decided to perform the 15 runs without unloading/reloading the program.
But this opens the door to those who, using a cache, remember the values already calculated and reduce all the following 14 runs to tiny times.
This use of caching is unfair to your peers so it is prohibited.
For this reason I will add to the VM, after the final expiration of HW 4, a secret test to check if your program modifies global data structures of various types.
But this opens the door to those who, using a cache, remember the values already calculated and reduce all the following 14 runs to tiny times.
This use of caching is unfair to your peers so it is prohibited.
For this reason I will add to the VM, after the final expiration of HW 4, a secret test to check if your program modifies global data structures of various types.