Using DONE_SET method to make algorithm faster

What we do is like to maintain a dict {DONE_SET: memory peak}, then Each time when we execute Node X, we make a check if the peak in dict and the current peak bigger than that peak. If yes(or equal), break and start a new branch. if no, update the peak in dict and continue.
@nouiz 
I thought about this part and tested it.
If we set equal here, the result would be wrong(higher than the result we preciously get)
So I thought the "=" might be kept here.