Hi Mason,
Thanks for the question: I've run into a similar behavior before, and I believe it's to do with something fundamental about DMRG. I think what's going on is that for first sweep where the max bond dimension is the largest one you set, or the one you are hoping will continue to fit in memory for subsequent sweeps, actually many of the MPS link or bond indices have not yet reached their maximum value. So even though they are allowed to reach this value, they actually haven't yet. Relatedly, tensors such as the "projections" of the Hamiltonian into pieces of the MPS have indices which are not yet as large as they could be.
Then, in the next sweep, finally all indices start to reach their maximum values and this is when you run out of memory.
Does that sound plausible? At any rate, the key point is that you are running out of memory somewhere even if it's not where you were initially expecting. So then the main thing you can do is to start having DMRG store tensors to disk before that point.
Best regards,
Miles