See the attached code. If I assign a large numpy array to a cell-scoped variable, then after the cell is done running the memory is still occupied (about 7.5 GB). If I rename the cell-scoped variable and rerun, then the old memory still remains occupied and a new, large chunk of memory is allocated (so now taking about 15 GB).