printf is faster when piped through tee

Jonas Jensen bones0_list@hotmail.com
Sat Sep 2 07:11:00 GMT 2000


Something's wrong with the performance of printf. When compiling with gcc,
printf executes much slower than with Microsoft's "cl". The funny thing is
that when I pipe those programs through "tee", they're both (equally) fast.

This is my test program:
------------------------------------------------
#include <stdio.h>
#include <stdlib.h>

void main(int argc, char** argv)
{
   register int i;
   if (argc != 2) return 1;
   i = atoi(argv[1]);
   while (i--)
      printf("%i bottles of beer on the wall...\n", i);
}
------------------------------------------------

Here are the scores of 1000 loops through this program, in seconds, measured
with the "time" keyword in bash.

cl: 0.561
gcc: 10.055
gcc/tee: 0.861
cl/tee 0.861

It appears that there's a way to print faster, because "cat" has no problem,
while "ls" and others suffer badly from it.
Can anyone explain/fix this?

I'm using Win2k, Cygwin 1.1.4.

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



More information about the Cygwin mailing list