[Call for testers] "BSD ar"
Arjan van Leeuwen
avleeuwen at gmail.com
Thu Jan 17 01:13:58 PST 2008
2008/1/11, Kai Wang <kaiwang27 at gmail.com>:
> Hi list,
> I think it's time for "BSD ar" to get a public review after months of
> bug hunting and cleaning up done by jkoshy@ and me. The majority of
> the coding work was done during the summer of 2007 and was sponsored
> by Google SoC 2007 programme.
> You can find the tarball at:
> BSD ar is mostly compatible with GNU ar and it has advantages like:
> * BSD licensed.
> * hopefully cleaner and simpler. (build on libarchive and libelf)
> * inherited compression support from libarchive.
> (the usefulness of this function is limited though, since ld(1)
> does not recognize compressed .a files)
> * faster, due to the adoption of libarchive and libelf.
> (see benchmark below)
> Some details on the speedup brought by BSD ar:
> Below is a speed comparison of processing 5329 .o files (38 MB in
> total) in create, list and extract mode of both ar. The benchmark was
> done by the acp.sh script (you can find it in the tarball) which was
> adapted from Jan Psota's Tar Comparison Program.
> outcast% sh acp.sh ~/arobj .
> bsdar: BSD ar 1.0.0 - libarchive 2.4.10
> gnuar: GNU ar 2.15 [FreeBSD] 2004-05-23
> best time of 3 repetitions
> src=/home/kaiw/arobj, 38M in 5329 files
> archive=./acp.a, extract to ./acptmp
> program operation real user system speed
> bsdar create 2.17 0.26 0.68 15741 KB/s
> gnuar create 8.80 5.30 2.89 3881 KB/s
> bsdar list 0.04 0.00 0.04 854000 KB/s
> gnuar list 0.70 0.51 0.18 48800 KB/s
> bsdar extract 4.10 0.02 1.22 8331 KB/s
> gnuar extract 4.95 0.68 1.65 6901 KB/s
> Any feedback would be appreciated. After more thorough test, I'd
> like to bring it to the tree as an alternative ar.
I've been using this (and its updated versions) to build a large software
project (file created by ar is 405MB) several times a day for the last week.
I didn't encounter any problems during building or debugging. It's indeed
faster :). Thanks a lot!
More information about the freebsd-current