Mail Archives: djgpp/1994/11/03/23:14:03
I've done some benchmarking on disk i/o rates using various compilers
and dos extenders and have come up with the following results :
Time to read a 32 Mbyte file in block sizes of 4k and 32k using
fread() :
System 4K 32K
===================
Native 21 16 Turbo-C compiler - 16 bit code
X32 22 17 Watcom C 9.5 with X32 DOS extender
DOS4GW 24 21 Watcom C 9.5 with DOS4GW DOS extender
DJGPP 27 27 GCC with GO32 ( 1.12.maint2 )
===================
Values in the table are time in seconds to read the entire file.
This is running on a 100MHz Pentium, 48Mbytes RAM using a SCSI hard
drive running QEMM 7.03 with DPMI services.
X32 is a DOS extender from Flashtek Inc.
DOS4GW is the DOS extender supplied with Watcom C 9.5.
I think the results show that the 4k buffer is not the only reason
for slow file i/o with GCC. There's probably some inefficiency in
the real mode interrupt call to DOS too.
Any comments ?
--
Martin martin AT snsystems DOT co DOT uk
- Raw text -