]> git.ipfire.org Git - thirdparty/git.git/commit - name-hash.c
trace: measure where the time is spent in the index-heavy operations
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>
Sat, 27 Jan 2018 12:27:56 +0000 (19:27 +0700)
committerJunio C Hamano <gitster@pobox.com>
Fri, 2 Feb 2018 19:20:16 +0000 (11:20 -0800)
commitca54d9baa4a8e73141d4c963245ee6f09dcc994d
treed0418cefb4c51789cc338eed93c7b0933644d012
parent5be1f00a9a701532232f57958efab4be8c959a29
trace: measure where the time is spent in the index-heavy operations

All the known heavy code blocks are measured (except object database
access). This should help identify if an optimization is effective or
not. An unoptimized git-status would give something like below:

    0.001791141 s: read cache ...
    0.004011363 s: preload index
    0.000516161 s: refresh index
    0.003139257 s: git command: ... 'status' '--porcelain=2'
    0.006788129 s: diff-files
    0.002090267 s: diff-index
    0.001885735 s: initialize name hash
    0.032013138 s: read directory
    0.051781209 s: git command: './git' 'status'

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff-lib.c
dir.c
name-hash.c
preload-index.c
read-cache.c