Begin forwarded message:

> From: Levente Uzonyi <[email protected]>
> Date: December 3, 2009 7:13:27 AM GMT+01:00
> To: The general-purpose Squeak developers list 
> <[email protected]>
> Subject: Re: [squeak-dev] Re: squeak XTream
> Reply-To: The general-purpose Squeak developers list 
> <[email protected]>
> 
> On Tue, 1 Dec 2009, Andreas Raab wrote:
> 
>> Well, I'm still in the business of shopping for a faster version of 
>> FileStream ;-)
>> 
> 
> I uploaded two packages to the inbox (Files-ul.37 and Multilingual-ul.68) 
> which aim to speed up the read performance of FileStreams. Files-ul.37 adds 
> read buffering to StandardFileStream and subclasses, while Multilingual-ul.68 
> inlines a few methods. With these changes I measured ~13.5x speedup for:
> 
> Smalltalk garbageCollect.
> [ FileStream readOnlyFileNamed: 'yourlargefile.txt' do: [ :file |
>       [ file next == nil ] whileFalse ] ] timeToRun
> 
> and ~39.5x speedup for:
> 
> Smalltalk garbageCollect.
> [ StandardFileStream readOnlyFileNamed: 'yourlargefile.txt' do: [ :file |
>       [ file next == nil ] whileFalse ] ] timeToRun
> 
> (where yourlargefile.txt is an 1MB sized file with random data)
> 
> The code is far from clean, some tests fail (15 of 37 BitmapStreamTests), but 
> it seems to be working (though I'm sure there are a few bugs). I would be 
> happy if someone could find out why the tests fail. Also a better test suite 
> would be helpful.
> 
> Note that as soon as a write is performed the read buffer is killed, so mixed 
> read/write behavior is probably slower than before. Also note that loading 
> the changes may harm your image/changes file.
> 
> 
> Levente
> 


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to