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

one performance observation/question and one commit/segfault issue

From: Stefan Urbat <stefan.urbat_at_apastron.lb.shuttle.de>
Date: 2004-07-24 12:15:58 CEST

1. performance: since short I run svnserve 1.0.5 on a PIV 2.8 GHz HT
machine with Debian Sarge, Kernel 2.6.7 and SMT switched on, with a SATA
RAID array (xfs as filesystem) attached, and I think this server performs
great as subversion server.

But when it comes to the clients, there are huge performance differences
among different platforms, I tend to make essentially three performance
classes of them:

a) the fastest are GNU/Linux and Solaris; on the fast machines I can
checkout our huge company library in just one minute, especially our Dual
Opteron (2x1.6 GHz), running SuSE 9.1 x86_64 and ext3 can do so easily,
using both CPUs in parallel results in a little server overload, so the
client performance seems indeed to be best possible. Taking into account
the slower CPUs of our other GNU/Linux and Solaris clients, they seem to
be all on the same level regarding OS and filesystem (also with reiserfs
respective ufs/logging).

b) the medium class are the MS Win clients, approximately requiring three
times of class a) to check out the very same repository, seemingly both
with FAT as with NTFS, same CPU speed compared of course.

c) the worst are the HP-UX and AIX systems, they require up to the 10th
time of class a), for example a POWER 4+ 1.2 GHz AIX 5.2 machine (using
jfs2) is taking about 20 times of the Dual Opteron (using only one cpu
then!), to check this out. Also the older AIX 4.3.3 system performs rather
poor (running jfs) while checking out.

Does anybody know a reason for these striking client performance
differences? It is a switched 100 Mbit/s network, where all these machines
operate without bridges or the like. I have not yet watched the time
behaviour of Mac OS X 10.3 with hfs+, but will do so next week, by the
way, FreeBSD may be tested to in the near future (from the last I would
suppose good client performance, but that's just a guess).

The effect is rather clear client side, because I see virtually no
activity on the server (but then rather slow increasing CPU time of the
svnserve process of course) with c), low activity with class b) and medium
to high (depending on the clients CPU) activity on class a), all requiring
the same total CPU time on the server, as expected.

2. segmentation fault on HP-UX during commit: every time I try to commit a
test file in a test repository or a productive file in the mentioned
library I get a segfault there, since 1.0.5 at least (update to 1.0.6
didn't change behaviour), regardless if I use the default editor vim or the -m
parameter. System is HP-UX 11 on PARISC, 500 MHz.

Here is the final part of the truss output while committing a test file
(that subsequently the directory is locked and needs a cleanup is clear,
no inconsistency is introduced, but I can't check a file in this way of
course), the file is named nochwas, the content in the read statements
contains only the values of the repository version, no changed version
part is seen herein, though sending file is announced:

rename("/home/build/projects/trunk/testCVS/.svn/tmp/text-base/nochwas.svn-base.t
mp", "/home/build/projects/trunk/testCVS/.svn/tmp/text-base/nochwas.svn-base") =
 0
 open("/home/build/projects/trunk/testCVS/.svn/text-base/nochwas.svn-base", O_RDO
 NLY, 0666) = 5
 read(5, "u m u c o m m i t t e s t \n", 1024) = 16
 read(5, 0x7a000f68, 1024) = 0
 close(5) = 0
 open("/home/build/projects/trunk/testCVS/.svn/text-base/nochwas.svn-base", O_RDO
 NLY, 0666) = 5
 poll(0x7a0010a0, 1, 0) = 0
 open("/home/build/projects/trunk/testCVS/.svn/tmp/text-base/nochwas.svn-base", O
 _RDONLY, 0666) = 6
 brk(0x400a0000) = 0
 read(5, "u m u c o m m i t t e s t \n", 102400) = 16
 read(5, 0x40050260, 102384) = 0
 read(6, "u m u c o m m i t t e s t ".., 102400) = 53
 read(6, 0x40050295, 102347) = 0
   Received signal 11, SIGSEGV, in user mode, [SIG_DFL], partial siginfo
       Siginfo: si_code: I_NONEXIST, faulting address: 0x40083390, si_errno: 0
           PC: 0xc04fb657, instruction: 0x0cbc0094
           exit(11) [implicit] WIFSIGNALED(SIGSEGV)|
           WCOREDUMP

Thanks for any advice or comment to those two items in advance...

--
Registered GNU/Linux-User #169380 on http://counter.li.org/
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Sat Jul 24 12:16:21 2004

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