This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: pipe performance problem


Ok now i really found the problem. If i always return from
fhandler_base::ready_for_read with 1 at the first line and skip all the
checks in there everything works.

$ time cat test.iso | nice -0 dd of=/dev/null
352512+0 records in
352512+0 records out

real    0m5.528s
user    0m2.155s
sys     0m3.342s

$ time cat test.iso | nice --1 dd of=/dev/null
352512+0 records in
352512+0 records out

real    0m4.188s
user    0m1.592s
sys     0m2.452s


nice --1 is faster like it should be. Just to be on the safe side i also
did:

$ cat test.iso | nice --1 dd of=test1
$ cat test.iso | nice -0 dd of=test0

$ diff -q -s --binary test0 test1
Files test0 and test1 are identical

$ diff -q -s --binary test0 test.iso
Files test0 and test.iso are identical


So that workaround works perfectly for my purposes. But i guess the
checks were put in there for good reason to fix sth. that happened on
the way. Just that it broke sth. else.
I already did some mkisofs | cdrecord checks and it also works
perfectly!

thomas


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]