Не дешевле делать снапшот в памяти и тупо копировать?
Нет, stub это самый дешевый вариант если не нужно освобождать память. Потом можно либо погасить инстанс и завести новый, либо просто вызвать __reset который вернет состояние кучи обратно к __heap_base и можно не очищая память снова работать с чистого листа (ну почти если не брать во внимание глобальные переменные)