pthreads works, sorta
Tue Jun 26 18:16:00 GMT 2001
More experimenting with my home computer, dual pIII 850:
1. 117 157 328
2. 822 1527 ---
3. 194 240 453
4. 169 181 516
The entries in the array represent the number of seconds it
took to get to a certain milestone in the application. The
columns, 1 thru 3, are the milestones. The rows are defined as:
1. linux (however, linux had an advantage, since all the data is
on the hard drive, and on the windows side some of the data
had to be contained on cdrom).
2. cygwin current, with the condtimedwait patch
3. cygwin 1.3.2, but with the Pthread-win32 implementation
4. cygwin current, plus using the verifiable_object_isvalid2()
routine, for the lock/unlock, signal, wait/timedwait calls
(which doesn't call VirtualQuery()).
There is an additional error in cygwin current, I think related
to pthread_kill, that occurs between milestone 2 and 3, that
possibly skewed the results for row 4. Milestone 3 is never
reached for row 2 because all processing becomes dedicated to
pthreads overhead and no useful work gets done (ie thrashing).
I think this shows that VirtualQuery *is* a hog.
These results were obtained on Windows2000 sp1 and my previous
results were on NT4 sp6 (on a pIII 650).
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
More information about the Cygwin