This is the mail archive of the cygwin 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: Problems with Windows threads and cygwin sleep()


On Aug 25 15:40, Pavel Tsekov wrote:
> Hello,
> 
> On Thu, 25 Aug 2005, Corinna Vinschen wrote:
> 
> > > Here when the app is compiled with -mno-cygwin it takes 100% cpu when it
> > > allocates 400+ threads - both from Windows Command Prompt and Cygwin bash.
> > > After all the testcase consist almost entirely of Win32 calls.
> >
> > You're on W2K, I'm on XP, maybe there's a difference?  I can easily
> > reproduce nearly 0% CPU with 1000 threads if no Cygwin process is
> > present and nearly 99% if a Cygwin process is present.
> >
> > Even if we can't do much about it, it would be interesting to find out
> > how Cygwin affects CPU usage of non-Cygwin processes.
> 
> Stopping all Cygwin dependent programs helps here too - the program runs
> fine. I forgot sshd, cygserver and inetd. I did some further testing -
> here are the results:
> 
> 1) Bash in Cygwin console
> 
>    CPU usage is ok
> 
> 2) Bash in rxvt (W11)
> 
>   CPU usage 99 %
> 
> 3) inetd started as service with no clients connected
> 
>   CPU usage is ok
> 
>   When a client is connected CPU goes 99%
> 
> 4) sshd started as service (doesn't matter if there are connected clients)
> 
>   CPU usage 99 %
> 
> The tests were performed with no other Cygwin programs running and
> threads.exe running in command prompt. Each time I would stop all involved
> programs and start them again.
> 
> Perhaps ptys are involved ?!

No, I tested with just two cmd windows.  The joke is that I don't see
the Cygwin process doing anything suspicious.  In my test I just started
tcsh under strace to see if it begins to behave weird when the threads
application is running, but it just waits in ready_for_read for user input.
Nevertheless, threads takes the CPU time when the no. of threads is big
enough and returns to normal when the Cygwin process stops.  I tried a
few things but no luck so far.  Maybe Dave is right.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          mailto:cygwin@cygwin.com
Red Hat, Inc.

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.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]