https://issues.dlang.org/show_bug.cgi?id=18005
[email protected] changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #4 from [email protected] --- don't think is the AA that does it, as the following exposes the same behavior: +++++++++++++++++++++++++++++++++++++++ void main(string[] args) { foreach (i; 0..300) { import core.memory; import std.stdio : writefln; writefln(`%g MB used, %g MB free`, GC.stats.usedSize / 1024f / 1024, GC.stats.freeSize / 1024f / 1024); new bool[13 * 1024 * 1024]; // <- this collects differently on Windows GC.collect; GC.minimize; } } +++++++++++++++++++++++++++++++++++++++ Running it: 0.000137329 MB used, 0.999863 MB free 13.004 MB used, 7.49988 MB free 26.0079 MB used, 13.9999 MB free 39.0118 MB used, 20.4999 MB free 52.0157 MB used, 26.9999 MB free 65.0197 MB used, 33.4999 MB free 78.0236 MB used, 39.9999 MB free 78.0236 MB used, 42.496 MB free 91.0275 MB used, 51.4921 MB free 104.031 MB used, 63.4882 MB free 104.031 MB used, 66.4882 MB free 117.035 MB used, 53.4843 MB free 130.039 MB used, 68.4803 MB free 143.043 MB used, 55.4764 MB free 143.043 MB used, 86.4764 MB free 143.043 MB used, 55.4764 MB free 143.043 MB used, 86.4764 MB free 143.043 MB used, 55.4764 MB free 143.043 MB used, 86.4764 MB free 143.043 MB used, 55.4764 MB free 143.043 MB used, 86.4764 MB free 143.043 MB used, 55.4764 MB free 143.043 MB used, 86.4764 MB free 143.043 MB used, 55.4764 MB free 143.043 MB used, 86.4764 MB free ................................ It stabilizes at 143.043 MB On Linux it collects eagerly and stabilizes around 13.0042 MB used, 7.49976 MB free --
