[RFC/patch] Fixing libstdc++/11378 and, while at it... ;)
Paolo Carlini
pcarlini@unitus.it
Wed Jul 2 03:03:00 GMT 2003
Hi,
now the new non unified scheme for filebuf is in place
there are additional chances for improvement in the
xsputn virtual. The below is my current approach for
11378 (~ sputn not as fast as sputc) but, as suggested
privately by Nathan some time ago, in the common,
buffered case we could, for instance issue directly
writes, bypassing the buffer, whenever the argument of
sputn is sufficiently big.
Anyway, the attached passes make check and gives on
my machine, P4-2400, -O2:
time ./speed stdio 1000000 10
0.460u 2.900s 0:03.58 93.8% 0+0k 0+0io 231pf+0w
time ./speed iostream 1000000 10
- mainline:
5.780u 28.790s 0:34.84 99.2% 0+0k 0+0io 235pf+0w
- mainline + patch:
0.490u 2.810s 0:03.33 99.0% 0+0k 0+0io 203pf+0w
time ./speed stdio 100000 100
0.020u 0.350s 0:00.37 100.0% 0+0k 0+0io 231pf+0w
time ./speed iostream 100000 100
- mainline:
5.750u 28.710s 0:36.68 93.9% 0+0k 0+0io 235pf+0w
- mainline + patch:
0.020u 0.340s 0:00.36 100.0% 0+0k 0+0io 203pf+0w
Comments appreciated!
Paolo.
////////////
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch_11378
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20030702/e4aa1105/attachment.ksh>
More information about the Libstdc++
mailing list