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

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

Download raw body.

Thread
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.