Re: New pty implementation is really slow
Am 22.03.2020 um 06:51 schrieb Marco Atzeri via Cygwin: Am 22.03.2020 um 04:21 schrieb Joe via Cygwin: I'm using cygwin 3.1.4 on Windows 10. The new pseudo terminal stuff seems really slow. For example: $ time seq 1 (output omitted) real 0m23.510s user 0m1.515s sys 0m4.483s If I minimize the mintty window while seq is running, it gets slightly better: real 0m4.562s user 0m0.390s sys 0m1.202s But when I set CYGWIN=disable_pcon before starting mintty, I get: $ time seq 1 (output omitted) real 0m0.366s user 0m0.109s sys 0m0.093s So the new implementation seems to be over 60 times slower than the old one. -- only factor 10x on my test, amd only impacting mintty case Curious that 32bit disabled is 2x faster than 64bit disabled 64 bit Mintty with enabled (default) real 0m2.674s user 0m0.234s sys 0m0.859s mintty with disabled real 0m0.247s user 0m0.015s sys 0m0.046s CMD with enabled real 0m1.121s user 0m0.109s sys 0m0.187s CMD with disabled real 0m1.084s user 0m0.078s sys 0m0.312s 32 bit Mintty with enabled (default) real 0m2.548s user 0m0.281s sys 0m0.686s Mintty with disabled real 0m0.058s user 0m0.030s sys 0m0.000s CMD with enabled real 0m1.021s user 0m0.124s sys 0m0.296s CMD with disabled real 0m1.018s user 0m0.109s sys 0m0.265s I have the impression that the slow is due to some type of buffer expansion as I seem to notice a not uniform progress of the print the screen. But it could be just my eye... With disable_pcon, output is sent to mintty in bunches of 256 bytes at each read() invocation. With pcon enabled, typical output size is 12 bytes. That doesn't seem to be the whole story, though. Thomas -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
Re: New pty implementation is really slow
Am 22.03.2020 um 04:21 schrieb Joe via Cygwin: I'm using cygwin 3.1.4 on Windows 10. The new pseudo terminal stuff seems really slow. For example: $ time seq 1 (output omitted) real0m23.510s user0m1.515s sys 0m4.483s If I minimize the mintty window while seq is running, it gets slightly better: real0m4.562s user0m0.390s sys 0m1.202s But when I set CYGWIN=disable_pcon before starting mintty, I get: $ time seq 1 (output omitted) real0m0.366s user0m0.109s sys 0m0.093s So the new implementation seems to be over 60 times slower than the old one. -- only factor 10x on my test, amd only impacting mintty case Curious that 32bit disabled is 2x faster than 64bit disabled 64 bit Mintty with enabled (default) real0m2.674s user0m0.234s sys 0m0.859s mintty with disabled real0m0.247s user0m0.015s sys 0m0.046s CMD with enabled real0m1.121s user0m0.109s sys 0m0.187s CMD with disabled real0m1.084s user0m0.078s sys 0m0.312s 32 bit Mintty with enabled (default) real0m2.548s user0m0.281s sys 0m0.686s Mintty with disabled real0m0.058s user0m0.030s sys 0m0.000s CMD with enabled real0m1.021s user0m0.124s sys 0m0.296s CMD with disabled real0m1.018s user0m0.109s sys 0m0.265s I have the impression that the slow is due to some type of buffer expansion as I seem to notice a not uniform progress of the print the screen. But it could be just my eye... $ uname -svr CYGWIN_NT-10.0 3.1.4(0.340/5/3) 2020-02-19 08:49 Regards Marco -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
New pty implementation is really slow
I'm using cygwin 3.1.4 on Windows 10. The new pseudo terminal stuff seems really slow. For example: $ time seq 1 (output omitted) real0m23.510s user0m1.515s sys 0m4.483s If I minimize the mintty window while seq is running, it gets slightly better: real0m4.562s user0m0.390s sys 0m1.202s But when I set CYGWIN=disable_pcon before starting mintty, I get: $ time seq 1 (output omitted) real0m0.366s user0m0.109s sys 0m0.093s So the new implementation seems to be over 60 times slower than the old one. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple