getting a Binary module into the standard libs
Hal Daume III
hdaume@ISI.EDU
Wed, 18 Dec 2002 10:36:14 -0800 (PST)
I tend to agree with Alastair. I just reran the experiments with BinIOs
instead of BinMems to see if there was a greater difference (I expect a
much smaller difference, in fact, due to the high disk overhead and the
fact that putChar is slow). I didn't both with -O0, but with -O2, we get:
bits read 2156
write 2639
bytes read 1617
write 2078
frankly, this shocks me. reading using bits is 33% slower; writing is
about 27% slower. i actually expected the bits version to be *faster*
(relatively, of course) here, due to the fact that we have much smaller
files (the byte-based file is 4200000 bytes while the bit-based file is
3325000 bytes). With a 33% difference, I think I might want separate
instances again :).
I'm having great difficulty explaining to myself why there would be such a
discrepancy. Anyone care to offer an idea?
- Hal
On 18 Dec 2002, Alastair Reid wrote:
>
> Hal Daume <hdaume@ISI.EDU> writes:
> > Hi, another update wrt speed of bit writes; it makes me think it
> > might not be worthwhile to split the instances or anything like
> > that. I'm still looking for some comments though (hint hint).
>
> If the performance difference is just 11%, it sounds like it's best to
> keep the instances combined. (I'm assuming both versions were
> carefully written for speed - seems like a safe assumption given the
> author!) The speed difference is likely to continue as the speed
> difference between processors,memory,etc. and disks,system
> calls,etc. continues to grow.
>
> --
> Alastair Reid alastair@reid-consulting-uk.ltd.uk
> Reid Consulting (UK) Limited http://www.reid-consulting-uk.ltd.uk/alastair/
>
> _______________________________________________
> Libraries mailing list
> Libraries@haskell.org
> http://www.haskell.org/mailman/listinfo/libraries
>