Thread overview | |||||
---|---|---|---|---|---|
|
March 31, 2004 performance enhancements to std.stream | ||||
---|---|---|---|---|
| ||||
I've put up a modified version of std.stream that buffers files on Windows and has other tweaks that result in 10x performance improvement on some large test files I threw at it. http://home.comcast.net/~benhinkle/stream.d I've banged on it a bit on Windows but I can't seem to get it running on linux yet - when you try to use a stream it seg-v's. Give it a shot - it should be backwards compatible except for a few deprecated features that I think we should remove. There are probably plenty of bugs in the buffering code when you mix reads and write and seeks since the flushing logic is kinda messy (ps - why aren't there flush calls in windows.d and linux.d?) I also started in on an experimental stream.dprintf that prints D strings using %s and D Objects using %D. Objects are stringified by calling toString. -Ben |
April 01, 2004 Re: performance enhancements to std.stream | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ben Hinkle | an update: linux works fine. I also took out the dprintf
stuff for now until I have more time - plus I'd like to
see how it compares to just using regular printf.
On linux though the buffering didn't give any speed
improvements so it must be that the OS already buffers.
I had actually though windows buffered, too, but I guess
not since it seems to make such a big difference.
On Tue, 30 Mar 2004 21:18:09 -0500, Ben Hinkle <bhinkle4@juno.com> wrote:
>I've put up a modified version of std.stream that buffers files on Windows and has other tweaks that result in 10x performance improvement on some large test files I threw at it.
>
>http://home.comcast.net/~benhinkle/stream.d
>
>I've banged on it a bit on Windows but I can't seem to get it running on linux yet - when you try to use a stream it seg-v's.
>
>Give it a shot - it should be backwards compatible except for a few deprecated features that I think we should remove. There are probably plenty of bugs in the buffering code when you mix reads and write and seeks since the flushing logic is kinda messy (ps - why aren't there flush calls in windows.d and linux.d?)
>
>I also started in on an experimental stream.dprintf that prints D strings using %s and D Objects using %D. Objects are stringified by calling toString.
>
>-Ben
|
April 02, 2004 Re: performance enhancements to std.stream | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ben Hinkle | 10x performance? Nice job Ben! "Ben Hinkle" <bhinkle4@juno.com> wrote in message news:3r0n605cm7v0ncjnbv7oe0jdcku4b17ksa@4ax.com... > an update: linux works fine. I also took out the dprintf > stuff for now until I have more time - plus I'd like to > see how it compares to just using regular printf. > On linux though the buffering didn't give any speed > improvements so it must be that the OS already buffers. > I had actually though windows buffered, too, but I guess > not since it seems to make such a big difference. > > On Tue, 30 Mar 2004 21:18:09 -0500, Ben Hinkle <bhinkle4@juno.com> wrote: > > >I've put up a modified version of std.stream that buffers files on Windows and has other tweaks that result in 10x performance improvement on some large test files I threw at it. > > > >http://home.comcast.net/~benhinkle/stream.d > > > >I've banged on it a bit on Windows but I can't seem to get it running on linux yet - when you try to use a stream it seg-v's. > > > >Give it a shot - it should be backwards compatible except for a few deprecated features that I think we should remove. There are probably plenty of bugs in the buffering code when you mix reads and write and seeks since the flushing logic is kinda messy (ps - why aren't there flush calls in windows.d and linux.d?) > > > >I also started in on an experimental stream.dprintf that prints D strings using %s and D Objects using %D. Objects are stringified by calling toString. > > > >-Ben > |
Copyright © 1999-2021 by the D Language Foundation