From: Catalin Marinas <catalin.marinas@gmail.com>
To: git@vger.kernel.org
Subject: Quilt vs. StGIT Performance
Date: Tue, 04 Oct 2005 10:09:30 +0100 [thread overview]
Message-ID: <tnxirwdfy2d.fsf@arm.com> (raw)
I ran some benchmarks on both Quilt and StGIT (only the push/pop
operations) with the -mm series (2.6.14-rc2-mm2, 566 patches). All the
patches were refreshed since GIT does not support fuzzy patches. The
tools output was directed to /dev/null (a slight advantage for Quilt
since it prints more information). For the StGIT benchmarks, the base
of the stack was modified before each 'stg push -a' command because
otherwise pushing would just fast-forward the patches (timing similar
to the pop command).
As you can see below, 'quilt push' is much faster than 'stg push'. The
profiling information on the latest snapshot shows that StGIT spends
most of the time (~75%) in git-write-tree (which calculates the SHA1
value of the index file after every push). Unfortunately, this cannot
be avoided (otherwise, we would simply re-write Quilt).
There are other advantages of StGIT vs. Quilt but I won't go through
them in this e-mail. For huge number of patches, it's up to you to
decide whether speed is more important than the other StGIT features.
Quilt vs. StGIT (push/pop)
==========================
No. patches: 566 (linux-2.6.14-rc2-mm2)
Machine: P4 @ 2.5GHz, 512MB RAM, WDC IDE disk
OS: Linux 2.6.8-2-686 #1 Thu May 19 17:53:30 JST 2005 i686 GNU/Linux
StGIT version: snapshot of 2005-10-04
Quilt version: 0.39-2 (on Debian)
GIT version: 0.99.8.GIT
run 1 run 2 run 3 run 4 run 5 average per patch
---------------------------------------------------------------------------
stg push
---------------------------------------------------------------------------
real 4:56.261 4:07.660 3:37.361 4:20.393 4:16.312 4:15.597 0.452s
user 1:44.004 1:44.051 1:44.047 1:43.802 1:43.718 1:43.924
sys 0:49.803 0:49.812 0:49.458 0:49.714 0:49.954 0:49.748
---------------------------------------------------------------------------
stg pop
---------------------------------------------------------------------------
real 0:27.918 0:14.123 0:17.280 0:45.767 0:26.957 0:26.409 0.047s
user 0:01.857 0:01.852 0:01.864 0:01.883 0:01.867 0:01.865
sys 0:00.761 0:00.703 0:00.680 0:00.796 0:00.740 0:00.736
---------------------------------------------------------------------------
quilt push
---------------------------------------------------------------------------
real 1:00.584 0:36.191 0:34.728 0:24.723 0:30.498 0:37.345 0.066s
user 0:05.687 0:05.551 0:05.632 0:05.591 0:05.618 0:05.616
sys 0:07.835 0:07.588 0:07.454 0:07.536 0:07.552 0:07.593
---------------------------------------------------------------------------
quilt pop
---------------------------------------------------------------------------
real 0:55.772 0:44.721 0:45.503 0:58.081 0:51.621 0:51.140 0.090s
user 0:13.606 0:13.601 0:13.646 0:13.725 0:13.590 0:13.634
sys 0:24.813 0:24.762 0:24.697 0:24.658 0:24.833 0:24.750
--
Catalin
reply other threads:[~2005-10-04 9:09 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=tnxirwdfy2d.fsf@arm.com \
--to=catalin.marinas@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).