hyperthreading fix try #2

Nick Coghlan ncoghlan@iinet.net.au
Mon Feb 14 03:52:00 GMT 2005

Nick Coghlan wrote:
> Christopher Faylor wrote:
> Of course, I don't actually know if this is a related problem or not. 
> I'm hoping Chris can check it easily, since it happens with the standard 
> Cygwin Python, not just with the version I built from Python's current CVS.

I took the obvious step of running that test script directly, playing with the 
number of threads spawned, and the number of files created by each thread, as 
well as adding some more print statements to the script to see where it was hanging.

Command lines looked like (with thread and file counts filled in):
$ python /lib/python2.4/test/test_threadedtempfile.py -t <threads> -f <files>

The results weren't particularly deterministic, beyond a general 'more threads, 
more files' -> 'more likely to hang'. 10 & 10 seemed to do it fairly effectively 
although even that would occasionally succeed (the default is 20 & 20).

When it *did* hang, it was with a number of threads successfully opening their 
files on an iteration, with the remainder of the threads locking up attempting 
to open a new temporary file. The next time around, the remaining threads would 
hang while attempting to open the temporary file.

The main script hangs because it is waiting for the threads to terminate.


Nick Coghlan   |   ncoghlan@email.com   |   Brisbane, Australia

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/

More information about the Cygwin mailing list