git-annex/doc
Joey Hess b086e32c63 unused: Reduce memory usage significantly.
Much of the memory bloat turned out to be due to getKeysReferenced
containing a mapM, which is strict and buffered the whole list
rather than streaming it.

The other half of the bloat was due to building a temporary Set
in order to call S.difference. While that is more cpu efficient,
I switched to successive S.delete, since with it, I can run a whole
git annex unused in less than 8 mb of memory.

The whole Set of keys with content available is still stored in memory,
so running unused in a repo with a whole lot of file content will still
use more memory. In a repo containing 6000 files, it needed 40 mb.

Note that the status command still uses the bloatful getKeysReferenced.
2012-03-11 16:24:07 -04:00
..
bugs do a cleanup commit after moving data from or to a git remote 2012-02-25 18:02:49 -04:00
design
download
encryption
forum fix link 2012-03-11 11:52:26 -04:00
install
news add news item for git-annex 3.20120309 2012-03-09 20:15:29 -04:00
special_remotes clarification 2012-03-04 10:51:25 -04:00
sync Added a comment: very nice 2012-02-25 15:02:18 +00:00
templates add a bug template 2012-02-06 21:38:05 -04:00
tips foo 2012-03-04 13:16:35 -04:00
todo unused: Reduce memory usage significantly. 2012-03-11 16:24:07 -04:00
upgrades
use_case
users
walkthrough
backends.mdwn
bare_repositories.mdwn
bugs.mdwn add a bug template 2012-02-06 21:38:05 -04:00
comments.mdwn
contact.mdwn
copies.mdwn
design.mdwn
distributed_version_control.mdwn
download.mdwn merged ghc 7.4 support into master 2012-02-07 14:15:37 -04:00
encryption.mdwn
feeds.mdwn
forum.mdwn
future_proofing.mdwn update 2012-02-15 19:46:29 -04:00
git-annex-shell.mdwn add git-annex-shell commit 2012-02-25 16:47:28 -04:00
git-annex.mdwn add remote start and stop hooks 2012-03-04 19:12:58 -04:00
git-union-merge.mdwn
GPL
how_it_works.mdwn
index.mdwn add scalability page 2012-02-14 18:50:25 -04:00
install.mdwn note 7.4 needed 2012-02-04 14:51:52 -04:00
internals.mdwn
location_tracking.mdwn
logo.png
logo_small.png
meta.mdwn
news.mdwn
NixOS.mdwn
not.mdwn
repomap.png
scalability.mdwn add tips 2012-02-15 14:34:40 -04:00
sitemap.mdwn
special_remotes.mdwn instructions for using Box.com as a special remote 2012-03-04 00:14:42 -04:00
summary.mdwn tweak wording 2012-02-15 19:43:15 -04:00
sync.mdwn
tips.mdwn
todo.mdwn
transferring_data.mdwn
trust.mdwn
upgrades.mdwn
users.mdwn
walkthrough.mdwn