[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnu-arch-users] Tla working slower than cvs, how to speedup?
From: |
Alexander Litvinov |
Subject: |
[Gnu-arch-users] Tla working slower than cvs, how to speedup? |
Date: |
Sat, 5 Mar 2005 09:50:56 +0600 |
User-agent: |
KMail/1.6.2 |
Hello,
I have large project managed by cvs. After playing with GNU Arch (tla) I made
the decision to move it to tla. Stable versions of this project is tagged in
cvs. To test how it will work I get first version and import it into tla
(including CVS directories) using tla_load_dirs. Then I get second version
and again import it into tla using tla_load_dirs. And so on. After these
steps I get HEAD of cvs and load it again. to speedup future work I make
cachedrev of latest tla revision. From this time after each cvs commit I
update my version of project from cvs and import it into tla.
Everything is working good except speed of tla operations. Pay attention: cvs
repo is a remote repository accessed via ssh. Tla uses local archive. Some
timeings are at the end of the mail.
As a conclusion: tla work at least the same time as cvs does, but usualy 2
times slower. It where way to speedup it ?
Machine info: SuSE 9.1 (linux kernel 2.6.5), SATA drive, 1G RAM.
Tla from SuSE dist:
> tla -V
tla address@hidden/dists--devo--1.0--patch-9
(configs/emf.net-tla/devo.tla-1.2) from regexps.com
Here is some timings:
today's first update:
> time cvs -q up -dPA
real 0m29.760s
next update (seems disk caches are working)
> time cvs -q up -dPA
real 0m5.751s
first tla operation:
> time tla changes
* looking for XXX/XXX--patch-30 to compare with
* comparing to XXX/XXX--patch-30
real 1m6.190s
second tla changes (again disk cache):
> time tla changes
* looking for XXX/XXX--patch-30 to compare with
* comparing to XXX/XXX--patch-30
real 0m10.246s
change one file and commit it:
> time cvs -q ci -m "Test commit"
Checking in XXX.java;
XXX.java,v <-- XXX.java
new revision: 1.52; previous revision: 1.51
done
real 0m7.279s
after the same change in tla:
> time tla commit -s "Test commit"
M XXX.java
* update pristine tree (XXX/XXX--patch-30 => XXX--patch-31)
* committed XXX/XXX--patch-31
real 0m27.405s
checking out cvs project to new directory:
> time cvs co XXX
real 1m6.938s
get by tla:
> time tla get XXX--mainline bt
* from archive cached: XXX/XXX--patch-16
* patching for revision: XXX/XXX--patch-17
* patching for revision: XXX/XXX--patch-18
* patching for revision: XXX/XXX--patch-19
* patching for revision: XXX/XXX--patch-20
* patching for revision: XXX/XXX--patch-21
* patching for revision: XXX/XXX--patch-22
* patching for revision: XXX/XXX--patch-23
* patching for revision: XXX/XXX--patch-24
* patching for revision: XXX/XXX--patch-25
* patching for revision: XXX/XXX--patch-26
* patching for revision: XXX/XXX--patch-27
* patching for revision: XXX/XXX--patch-28
* patching for revision: XXX/XXX--patch-29
* patching for revision: XXX/XXX--patch-30
* patching for revision: XXX/XXX--patch-31
* making pristine copy
* tree version set XXX/XXX
real 1m52.731s
Patching takes about 3-7 seconds each. This seems to be long because patches
are small:
> ls -lah patch-*/XXX--patch-*.patches.tar.gz
1,3K 2005-03-03 19:00 patch-17/XXX--patch-17.patches.tar.gz
767 2005-03-03 19:08 patch-18/XXX--patch-18.patches.tar.gz
5,0K 2005-03-04 10:54 patch-19/XXX--patch-19.patches.tar.gz
3,9K 2005-03-04 11:02 patch-20/XXX--patch-20.patches.tar.gz
2,7K 2005-03-04 11:18 patch-21/XXX--patch-21.patches.tar.gz
3,1K 2005-03-04 11:25 patch-22/XXX--patch-22.patches.tar.gz
4,7K 2005-03-04 11:43 patch-23/XXX--patch-23.patches.tar.gz
5,9K 2005-03-04 12:43 patch-24/XXX--patch-24.patches.tar.gz
6,2K 2005-03-04 13:03 patch-25/XXX--patch-25.patches.tar.gz
3,8K 2005-03-04 13:17 patch-26/XXX--patch-26.patches.tar.gz
33K 2005-03-04 15:19 patch-27/XXX--patch-27.patches.tar.gz
1,9K 2005-03-04 15:49 patch-28/XXX--patch-28.patches.tar.gz
3,4K 2005-03-04 15:53 patch-29/XXX--patch-29.patches.tar.gz
14K 2005-03-04 16:55 patch-30/XXX--patch-30.patches.tar.gz
1,1K 2005-03-05 09:21 patch-31/XXX--patch-31.patches.tar.gz
Some project stats:
> du -sh
84M .
> find -type f | wc -l
13220
> find -type d | wc -l
2732
> find -type f -name '*.java' -exec cat {} \; | wc -l
315224
> find -type f -name '*.java' | wc -l
2738
- [Gnu-arch-users] Tla working slower than cvs, how to speedup?,
Alexander Litvinov <=