chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] [PATCH] Improve performance of read-u8vector


From: Alaric Snell-Pym
Subject: Re: [Chicken-hackers] [PATCH] Improve performance of read-u8vector
Date: Sat, 18 Jul 2015 23:19:21 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20140704 Thunderbird/17.0.11

On 13/07/15 11:48, Alaric Snell-Pym wrote:
> On 13/07/15 11:38, Evan Hanson wrote:
>> Less code, more tests. Great patch. :)
>>
>> I've pushed this to all three branches. I also took this opportunity to
>> fix Alaric's name in the acknowledgements.
> 
> Good work, that man! Like I did with write-u8vector, I'll give it a run
> through some Ugarit torture tests at the weekend and report back :-D

Ok, I did a test where I snapshot about 197MiB of audiobooks (86 files)

With chicken from git 702f3f259 (just before the patch):

Snapshotting /home/alaric/archive/audiobooks to tag test...
Root hash: d0be496389dac1daad9eca8257188b7d542ab52f8e5b4d0c
Successfully snapshotted /home/alaric/archive/audiobooks to tag test
Snapshot hash: 6cca2c3b3bd651f381085b04cdd76524e871b2cc13051fbe
Written 197MiB to the vault in 270 blocks, and reused 0B in 0 blocks
(before compression)

real    0m12.180s
user    0m5.137s
sys     0m1.816s

With chicken from git 474cb9fa5 (with the patch):

Snapshotting /home/alaric/archive/audiobooks to tag test...
Root hash: d0be496389dac1daad9eca8257188b7d542ab52f8e5b4d0c
Successfully snapshotted /home/alaric/archive/audiobooks to tag test
Snapshot hash: 022ffa3ab8dbd2350b1a4607f9630ed4a1e4b638818f3078
Written 197MiB to the vault in 270 blocks, and reused 0B in 0 blocks
(before compression)

real    0m13.638s
user    0m5.578s
sys     0m1.713s

...about the same time on this test, but most importantly, the "Root
hash" is the same in both - so we read the same data in both cases!

Let's time extracting that data out again. Still with the patch:

Extracted contents into .

real    0m4.270s
user    0m3.199s
sys     0m1.348s

Then taking the patch back out:

Extracted contents into .

real    0m4.376s
user    0m3.255s
sys     0m1.426s

...again, about the same time. I checked checksums and the extracted
files are the same (and the same as the original import).

So: it seems to work in an I/O torture test, but for Ugarit, doesn't
make much difference ;-) I suspect my inefficient copying of blocks
around is currently the limiting factor, not Chicken's I/O! Which is
good news for Chicken :-)

Thanks,

ABS

-- 
Alaric Snell-Pym
http://www.snell-pym.org.uk/alaric/

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]