[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

upcoming patch set: delta_files() speedup

From: Stefan Fuhrmann <stefanfuhrmann_at_alice-dsl.de>
Date: Sun, 28 Mar 2010 14:27:27 +0200

Hi devs,

in an attempt to speed up the SVN back-end,
I profiled the code path that reads file contents
from the repository. As hoped, I found some
points of action resulting in a small patch set
that gives roughly a 20% speedup.

This is what I did. On a svnsync'ed copy of the
TSVN repository, I ran an export of /trunk over
ra_local to minimize overhead. All data was in
file cache and the export target was a RAM disk.

Although analysis and development was conducted
for 1.6.x on Win32, I confirmed the results with 1.7
on my xeon workstation:

~$ uname -s -r -m
Linux 2.6.28-18-generic x86_64

~$ time ~/1.7-928181/svn export --ignore-externals -q $REPO/trunk /dev/shm/t
real 0m3.727s
user 0m3.189s
sys 0m0.542s

~$ time ~/1.7-patched/svn export --ignore-externals -q $REPO/trunk /dev/shm/t
real 0m3.147s
user 0m2.583s
sys 0m0.570s

(179 folders, 3660 files, 81.8MB)

All numbers shown are the average of the 2nd to
4th of 4 consecutive runs. There is still some
inevitable variation in the "sys" timing but "real"
is accurate within less than 2 percent.

All patches are against /trunk rev 928181.

-- Stefan^2.
Received on 2010-03-28 14:28:14 CEST

This is an archived mail posted to the Subversion Dev mailing list.