urbit/pkg
Philip Monk fa6748a7e1
jets: cap memo cache and remove peek, play, and fond jets
With these changes, about 90% less memory and 15% less time is needed to
compile hoon.hoon.  The produced noun is within 3% of the same size,
which suggests this results in little if any duplication.

These are three of the four most commonly hit +ut jets.  The other is
+nest, which cannot be un-memoized without taking much longer to compile
(it didn't finish in my test).  These four jets combined for 2.3 million
out of the 2.4 million cache entries, the other +ut jets combine for
less than 100k, and literal ~+ accounted for about 50k entries.

This also caps the memo cache at 50k entries.  Even with these jets not
memoized, the memo cache grows to 357k entries and 122 MB.  Capping at
50k entries has no effect on time and reduces memory usage of the hash
table to about 25MB.  Entries are reclaimed with the clock algorithm,
which seems to be sufficient for this use.
2020-06-22 19:29:00 -07:00
..
arvo release: urbit-os-v1.0.23 2020-06-18 17:51:16 -06:00
ent Add 'pkg/ent/' from commit '31ac2913f14c6f7631f5792ad942605fb2d9fb87' 2019-03-04 16:49:14 -08:00
ge-additions Pull in latest v0.8.0.rc changes 2019-07-16 15:59:39 -07:00
herb gitignore: tweaks [ci skip] 2020-02-29 18:00:25 +04:00
hs Merge pull request #2830 from urbit/king-https-fix 2020-04-30 13:08:13 -07:00
interface interface/config: fix production build 2020-06-18 18:04:30 -04:00
libaes_siv jets: switch openssl to the loom allocator. 2020-05-29 15:51:53 -07:00
urbit jets: cap memo cache and remove peek, play, and fond jets 2020-06-22 19:29:00 -07:00