Subject: Re: [GSOC Patch v2 0/4] Move generation, graph_pos to a slab

From: [email-masked] (Jakub Narębski)
Date: Mon, 08 Jun 2020 18:22:39 +0200

Abhishek Kumar <[email-masked]> writes:

> The struct commit is used in many contexts. However, members
> `generation` and `graph_pos` are only used for commit graph related
> operations and otherwise waste memory.
>
> This wastage would have been more pronounced as we transition to
> generation number v2, which uses 64-bite generation number instead of
> current 32-bits.

It would be nice (though not required) to have some specific data:
benchmarks with time and memory (RSS maybe?) of Git commands using
commit-graph and those not using it, before and after this patch series.
Maybe time to run the test suite, or the perf suite...

But this is not a show stopper, in my opinion.

Best,

  Jakub Narębski

> Abhishek Kumar (4):
>   commit-graph: introduce commit_graph_data_slab
>   commit: move members graph_pos, generation to a slab
>   commit-graph: use generation directly when writing commit-graph
>   commit-graph: minimize commit_graph_data_slab access
>
>  alloc.c                         |   2 -
>  blame.c                         |   2 +-
>  bloom.c                         |   7 +-
>  commit-graph.c                  | 127 ++++++++++++++++++++++++--------
>  commit-graph.h                  |  10 +++
>  commit-reach.c                  |  69 ++++++++++-------
>  commit.c                        |   8 +-
>  contrib/coccinelle/commit.cocci |  18 +++++
>  revision.c                      |  20 +++--
>  9 files changed, 190 insertions(+), 73 deletions(-)