comparison tests/test-pull-update.t @ 23226:5dcaed20b27c stable

changegroup: sparsely populate fnodes Previously, fnodes had a key and empty dict value for every element in changedfiles. This is somewhat wasteful. Empty dicts in CPython consume a lot more memory than you would expect - 280 bytes. On mozilla-central, which has ~190,000 files/fnodes keys, the previous loop populating fnodes allocated 91,924 KB of memory, most of that for the empty dicts. With this patch in place, our peak RSS during mozilla-central clone drops: before: 364,356 KB after: 326,008 KB delta: -38,348 KB When combined with the previous patch, total peak RSS decrease is now 190,116 KB.
author Gregory Szorc <gregory.szorc@gmail.com>
date Thu, 06 Nov 2014 22:48:20 -0800
parents 76df01e56e7f
children 216cc65cf227
comparison
equal deleted inserted replaced
23225:bdf7b1ea1dae 23226:5dcaed20b27c