inline: Use caching of inlined pages to speed up builds of inlines that include feeds.
authorJoey Hess <joey@gnu.kitenet.net>
Tue, 17 Nov 2009 06:29:28 +0000 (01:29 -0500)
committerJoey Hess <joey@gnu.kitenet.net>
Tue, 17 Nov 2009 06:29:28 +0000 (01:29 -0500)
commitda92e91769945648500819508374e2b15b79fdc8
tree90bb4043ce8016100fd211ef3b939a05bd3c9e17
parentc46b19371a983d5e066494143dd66a3a05f305bd
inline: Use caching of inlined pages to speed up builds of inlines that include feeds.

Speedup of about 25% for small inlines; could be much larger for inlines of
many, or complex pages.

Not bloating memory with excessive memoization data was the key to this.
The method chosen does not squeeze out every erg of speed possible when
inlines are nested, but that's rare. It uses less memory than other
optimisation hacks (I'm looking at you,
f937c1fb8074a512d8bb788fa275f5e90595cd47 !) already used in inline.pm.
IkiWiki/Plugin/inline.pm
debian/changelog