[Insight-developers] Multi-threading strategies

Blezek, Daniel J (GE, Research) blezek at crd.ge.com
Tue Sep 11 08:46:49 EDT 2007


My take on the status of ZThreads is that the author wrapped up the API,
changed the license to MIT and then when to work for IBM.  He was a
student before.  I found the API to be well documented using Doxygen,
and extremely well written about in C++ Practical Programming
(http://www.linuxtopia.org/online_books/programming_books/c++_practical_
programming/index.html) in this chapter
(http://www.linuxtopia.org/online_books/programming_books/c++_practical_
programming/c++_practical_programming_260.html)
 
We can hardly do better.  Beyond the thread pool there is a wealth of
other synchronization classes that we could leverage for other purposes
(fast mutexs, latches, etc...).
 
Here is a further comparison, looking at the overhead of ZThreads.  I
created and call update on a median filter ZThread implementation using
an 8 thread pool with varying number of "chunks" of work.  This is on an
8 CPU box.  I don't understand why 11, 13 and 14 give such inconsistent
results.  7-8 seconds is what I get with the standard Median filter as a
benchmark.
 
         Probe Tag    Starts    Stops           Time
     MedianZ 1 Chunk           1            1   28.578938007354736328125
     MedianZ 2 Chunk           1            1   14.76609897613525390625
     MedianZ 3 Chunk           1            1   11.375431060791015625
     MedianZ 4 Chunk           1            1   9.661273956298828125
     MedianZ 5 Chunk           1            1   8.6257951259613037109375
     MedianZ 6 Chunk           1            1   7.953671932220458984375
     MedianZ 7 Chunk           1            1   7.6634509563446044921875
     MedianZ 8 Chunk           1            1   7.311050891876220703125
     MedianZ 9 Chunk           1            1   6.9653728008270263671875
    MedianZ 10 Chunk           1            1   8.026858806610107421875
    MedianZ 11 Chunk           1            1
30.3013870716094970703125
    MedianZ 12 Chunk           1            1   7.3554909229278564453125
    MedianZ 13 Chunk           1            1
30.2663071155548095703125
    MedianZ 14 Chunk           1            1   30.4115161895751953125
    MedianZ 15 Chunk           1            1   7.146190166473388671875

-dan
 

	 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.itk.org/mailman/private/insight-developers/attachments/20070911/6571cea2/attachment.html


More information about the Insight-developers mailing list