git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* how to benchmark git commands
@ 2012-06-20 19:28 Neal Kreitzinger
  2012-06-21  7:28 ` Thomas Rast
  0 siblings, 1 reply; 2+ messages in thread
From: Neal Kreitzinger @ 2012-06-20 19:28 UTC (permalink / raw)
  To: git

I want to benchmark how long it takes commands like git-gc, git-fsck, 
etc. to run against our canonical repo.  What is the correct way to do 
this?  I am being asked how much time such commands would add to 
automated on-demand push scripts.

v/r,
neal

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: how to benchmark git commands
  2012-06-20 19:28 how to benchmark git commands Neal Kreitzinger
@ 2012-06-21  7:28 ` Thomas Rast
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Rast @ 2012-06-21  7:28 UTC (permalink / raw)
  To: Neal Kreitzinger; +Cc: git

Neal Kreitzinger <nkreitzinger@gmail.com> writes:

> I want to benchmark how long it takes commands like git-gc, git-fsck,
> etc. to run against our canonical repo.  What is the correct way to do
> this?  I am being asked how much time such commands would add to
> automated on-demand push scripts.

Umm, what's wrong with

$ time git fsck

The bigger question is: do you want to measure hot or cold performance?
For most operations it is more useful to measure the hot performance, as
the repo will be hot anyway.  But in the fsck case I wouldn't be so
sure; it's entirely possible that it "usually" faults a bunch of loose
objects that were otherwise unused, taking some extra time.  So there
may be some value in first running (as root)

$ echo 3 >/proc/sys/vm/drop_caches

to get cold-cache measurements.

Besides, if you feel like properly evaluating performance in your
repository, you can look in t/perf/README.  Then point GIT_PERF_REPO at
your repo of choice, and write tests as needed (for example, there is
currently no perf test for fsck).

That said, both gc and fsck are so slow on even medium-size repositories
(like git.git) that you should probably put them in a nightly cronjob
instead.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-06-21  7:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-20 19:28 how to benchmark git commands Neal Kreitzinger
2012-06-21  7:28 ` Thomas Rast

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).