Hi, Corinna, Ken, and other cygwin developers, I tried to fix the following performance problem of non-cygwin pipe and succeeded by applying the patch attached. Although it is not smart enough, it works as far as I tested. What do you think of this patch? Any other idea? Comments or suggestions will be appreciated. On Thu, 8 Dec 2022 18:46:56 +0900 Takashi Yano wrote: > On Wed, 07 Dec 2022 19:38:19 +0000 > tryandbuy wrote: > > Reading from stdin is very slow when a process runs outside of Cygwin Terminal. > > > > Steps to reproduce: > > 1. Create "test.txt" file using python code: > > long_text = "10" * 2500 > > with open(r'test.txt', 'w') as f: > > for i in range(5000): > > f.write('KEY%03d: %d => %s\n' % (i % 100, i, long_text)) > > > > 2. Install "cygwin" package version > "3.3.6-1" > > 3. Open windows command prompt (cmd.exe) > > 4. Enter command: > > type test.txt | c:\cygwin64\bin\wc.exe -l > > > > When running the same command (use cat instead of type) on the Cygwin Terminal, no performance issues observed. > > > > The last version of cygwin package without issues: 3.3.6-1 > > Versions of cygwin package with issues: 3.4.x - 3.5.x > > > > P.S. I tested this combinations of pipings: > > cygwin_prog | win_prog # no issues > > win_prog | cygwin_prog # has issues when running in windows command prompt, no issues in Cygwin Terminal > > cygwin_prog | cygwin_prog # has issues when running in windows command prompt, no issues in Cygwin Terminal > > I confirmed the problem. I also identified the code difference, > which causes the problem, between cygwin 3.3.x and 3.4.0. > > Let us consider how to fix that. -- Takashi Yano