So far we have simply looked at the execution times and ignored the memory usage of the scripts. In many cases, the execution times are the most important, but memory usage should not be ignored. In almost all cases, CPU and memory are traded; a code either uses a lot of CPU or a lot of memory, which means that both do matter a lot.
Monitoring memory usage used to be something that was only possible through external Python modules such as Dowser or Heapy. While those modules still work, they are largely obsolete now because of the
tracemalloc module. Let's give the
tracemalloc module a try to see how easy memory usage monitoring is nowadays:
import tracemalloc if __name__ == '__main__': tracemalloc.start() # Reserve some ...