"GOT", but the "O" is a cute, smiling pufferfish. Index | Thread | Search

Stefan Sperling <stsp@stsp.name>
Re: Got is kinda slow
Christian Weisgerber <naddy@mips.inka.de>, gameoftrees@openbsd.org
Mon, 17 Apr 2023 13:36:12 +0200

Download raw body.

On Mon, Apr 17, 2023 at 01:07:33PM +0200, Stefan Sperling wrote:
> The profiler breaks got_object_parse_tree_entry() run-time down as follows:
>  80% commit_traversal_request
>  70% open_tree

Looking at commit_traversal_request again, we should be able to speed
it up by caching trees. Currently this function loops and opens two
trees per iteration. One of those trees has likely already been parsed
during the previous loop iteration but has since been discarded.
And when tree_path_changed() traverses into subtrees there is no caching
either, which means quite some effort might be spent parsing the same
trees over and over again.