ZheNing Hu <adlternative@xxxxxxxxx> 于2021年8月3日周二 上午10:37写道: > > Christian Couder <christian.couder@xxxxxxxxx> 于2021年8月2日周一 下午2:25写道: > > > > On Sun, Aug 1, 2021 at 8:45 AM ZheNing Hu <adlternative@xxxxxxxxx> wrote: > > > > > in some cases, this is the result of the performance test of > > > `t/perf/p1006-cat-file.sh`: > > > > > > ``` > > > Test HEAD~ HEAD > > > ------------------------------------------------------------------------------------ > > > 1006.2: cat-file --batch-check 0.10(0.09+0.00) > > > 0.11(0.10+0.00) +10.0% > > > 1006.3: cat-file --batch-check with atoms 0.09(0.08+0.01) > > > 0.09(0.06+0.03) +0.0% > > > 1006.4: cat-file --batch 0.62(0.58+0.04) > > > 0.57(0.54+0.03) -8.1% > > > 1006.5: cat-file --batch with atoms 0.63(0.60+0.02) > > > 0.52(0.49+0.02) -17.5% > > > ``` > > > > > > We can see that the performance of `git cat-file --batch` has been a > > > certain improvement! > > > > Yeah, sure -8.1% or -17.5% is really nice! But why +10.0% for > > `cat-file --batch-check`? > > > > I think it's not very important. Because our optimization is skipping > parse_object_buffer(), git cat-file --batch-check will not set oi->contentp > by default, parse_object_buffer() will not be executed, Therefore, we did > not optimize `git cat-file --batch-check` at all. 10% may be small enough > for git cat-file --batch-check. The noise of environment even will cover it... > By the way, its performance may still be worse than "upstream/master", but it will be better than before optimization. Test HEAD~ this tree ------------------------------------------------------------------------------------ 1006.2: cat-file --batch-check 0.10(0.09+0.01) 0.09(0.08+0.01) -10.0% 1006.3: cat-file --batch-check with atoms 0.09(0.07+0.02) 0.08(0.05+0.03) -11.1% 1006.4: cat-file --batch 0.61(0.59+0.02) 0.53(0.51+0.02) -13.1% 1006.5: cat-file --batch with atoms 0.60(0.57+0.02) 0.52(0.49+0.03) -13.3% Test upstream/master this tree ------------------------------------------------------------------------------------ 1006.2: cat-file --batch-check 0.08(0.07+0.01) 0.10(0.07+0.02) +25.0% 1006.3: cat-file --batch-check with atoms 0.06(0.05+0.01) 0.08(0.08+0.00) +33.3% 1006.4: cat-file --batch 0.49(0.46+0.03) 0.53(0.50+0.03) +8.2% 1006.5: cat-file --batch with atoms 0.48(0.45+0.03) 0.51(0.48+0.02) +6.3% Test upstream/master HEAD~ ------------------------------------------------------------------------------------ 1006.2: cat-file --batch-check 0.08(0.07+0.01) 0.10(0.07+0.03) +25.0% 1006.3: cat-file --batch-check with atoms 0.06(0.05+0.00) 0.08(0.08+0.00) +33.3% 1006.4: cat-file --batch 0.48(0.46+0.02) 0.60(0.57+0.03) +25.0% 1006.5: cat-file --batch with atoms 0.47(0.44+0.03) 0.63(0.59+0.04) +34.0% Thanks. -- ZheNing Hu