From: Phillip Wood Date: Thu, 21 Mar 2019 14:40:08 GMT Subject: Re: [RFC PATCH 00/11] rebase -i run without forking rebase--interactive Message-ID: <0f1ee77b-90e6-ef61-0aee-ff182c20a98c@gmail.com> In-Reply-To: <87y359cfjj.fsf@evledraar.gmail.com> On 20/03/2019 23:05, Ævar Arnfjörð Bjarmason wrote: > > On Tue, Mar 19 2019, Phillip Wood wrote: > >> From: Phillip Wood >> >> When the builtin rebase starts an interactive rebase it parses the >> options and then repackages them and forks `rebase--interactive`. This >> series refactors rebase--interactive so that interactive rebases can >> be started by the builtin rebase without forking. My motivation was to >> make it easier to debug the sequencer but this should help future >> maintainability. >> >> This series involves some code movement so viewing the diffs with >> --color-moved is recommended. >> >> These patches are based on a merge of master [e902e9bcae ("The second >> batch", 2019-03-11)] and ag/sequencer-reduce-rewriting-todo ed35d18841 >> ("rebase--interactive: move transform_todo_file()", 2019-03-05). They >> can be fetched from the tag rebase-i-no-fork/rfc at >> https://github.com/phillipwood/git.git > > Just a that the t/perf/*rebase* numbers look much better with this. I > don't have these in front of me anymore, but over 10 runs with -O3 one > of those long-runnings test was 30% faster. That's surprising I wouldn't expect that much change as the time taken to fork shouldn't be that significant compared to the overall running time. I'll make a note to have a look at those tests. > Another one (rebase -i) went from 0.02 to 0.01 sec, with that short > amount of time I wonder (but didn't dig) if the test itself is broken... Yeah, that sounds suspicious Thanks for sharing those results Phillip