The official document says, "The tracemalloc module is a debug tool to trace memory blocks allocated by Python."
Python uses memory management as Arena and stores through pools and blocks.
However, even if python actually free the block, python do not return the memory directly to the os. All blocks in the pool must be free to return the memory.
So is it possible that tracemalloc only tracks Python's free, but doesn't know that memory is returned to the actual os, and that Python is actually using more memory than it is tracked?