> > $ time gtar -xjf
> ~/Downloads/kde/KDEkderequired-341.tar.bz2
> > 
> > $ bzcat ~/Downloads/kde/KDEkderequired-341.tar.bz2
> | time tar -xf -
> 
> It's dangerous compairing these two - in one you're
> running time on the
> entire decompress/untar process, whilst in the second
> you're only time'ing
> the untar.
> 
> The "real" time _should_ be roughly the same for
> both, but it's still
> a very unscientific way of doing it.
> 
> Start with an uncompressed archive, and try again.
> You should also be
> careful to make sure that any disk caching/etc
> doesn't get in the way...

Okay, I did a more "scientific" test and uncompressed the archive first.  Then 
I ran every version of tar at least twice (gtar three times b/c the first two 
runs were so different).  I ran star at the end to  make sure the results 
weren't getting slower over time, and star ran even faster than the initial 
runs, the clear winner by 36-48 seconds.  Solaris tar placed second, with 
gnutar and bsdtar slightly (and unpredictably) slower than "tar".

Another interesting thing to note is that star uses 50% more system time than 
Solaris tar, despite finishing faster.  Since it is reading the same amount of 
data and creating the same destination files and directories, I'm curious why 
Solaris would take more CPU time to run star and yet finish faster.  Time for 
me to practice my dtrace skills.

Test system:  2.8GHz Pentium 4, 512MB DDR333 RAM, 120GB Seagate ST3120026A 
drive, OpenSolaris w/ JDS and 2 terminal windows open, bonnie++ gives read 
speed as 50588K/sec, write speed as 44935K/sec.

--
Jake Hamby

$ bzcat ~/Downloads/kde/KDEkderequired-341.tar.bz2 >KDEkderequired-341.tar
$ sync
$ time star xf KDEkderequired-341.tar
star: 72176 blocks + 4608 bytes (total of 739086848 bytes = 721764.50k).

real    2m53.636s
user    0m1.280s
sys     0m32.205s
$ rm -r KDEkderequired-341
$ sync
$ time star xf KDEkderequired-341.tar
star: 72176 blocks + 4608 bytes (total of 739086848 bytes = 721764.50k).

real    2m52.759s
user    0m1.270s
sys     0m32.265s
$ rm -r KDEkderequired-341
$ sync
$ time star -fifo -x -f KDEkderequired-341.tar
star: 72176 blocks + 4608 bytes (total of 739086848 bytes = 721764.50k).

real    2m50.476s
user    0m1.284s
sys     0m32.364s
$ rm -r KDEkderequired-341
$ sync
$ time star -fifo -x -f KDEkderequired-341.tar
star: 72176 blocks + 4608 bytes (total of 739086848 bytes = 721764.50k).

real    2m51.473s
user    0m1.246s
sys     0m32.482s
$ rm -r KDEkderequired-341
$ sync
$ time tar xf KDEkderequired-341.tar

real    3m30.329s
user    0m1.000s
sys     0m21.336s
$ rm -r KDEkderequired-341
$ sync
$ time tar xf KDEkderequired-341.tar

real    3m31.520s
user    0m1.001s
sys     0m21.403s
$ rm -r KDEkderequired-341
$ sync
$ time gtar xf KDEkderequired-341.tar

real    3m35.212s
user    0m1.000s
sys     0m21.449s
$ rm -r KDEkderequired-341
$ sync
$ time gtar xf KDEkderequired-341.tar

real    3m31.336s
user    0m0.997s
sys     0m21.249s
$ rm -r KDEkderequired-341
$ sync
$ time gtar xf KDEkderequired-341.tar

real    3m34.473s
user    0m1.012s
sys     0m21.478s
$ rm -r KDEkderequired-341
$ sync
$ time bsdtar xf KDEkderequired-341.tar

real    3m34.560s
user    0m1.444s
sys     0m29.968s
$ rm -r KDEkderequired-341
$ sync
$ time bsdtar xf KDEkderequired-341.tar

real    3m36.310s
user    0m1.434s
sys     0m30.115s
$ rm -r KDEkderequired-341
$ sync
$ time star -fifo -x -f KDEkderequired-341.tar
star: 72176 blocks + 4608 bytes (total of 739086848 bytes = 721764.50k).

real    2m48.757s
user    0m1.264s
sys     0m32.515s
This message posted from opensolaris.org
_______________________________________________
opensolaris-discuss mailing list
[email protected]

Reply via email to