On Saturday, 18 June 2016 at 01:57:49 UTC, Joerg Joergonson wrote:
Ok. Also, maybe the GC hasn't freed some of those temporaries yet.
The way GC works in general is it allows allocations to just continue until it considers itself under memory pressure. Then, it tries to do a collection. Since collections are expensive, it puts them off as long as it can and tries to do them as infrequently as reasonable. (some GCs do smaller collections to spread the cost out though, so the details always differ based on implementation)
So, you'd normally see it go up to some threshold then stabilize there, even if it is doing a lot of little garbage allocations.
However, once the initialization is done here, it shouldn't be allocating any more. The event loop itself doesn't when all is running normally.