<HTML><HEAD>
<META content="text/html; charset=ISO-8859-1" http-equiv=Content-Type></HEAD>
<BODY dir=ltr bgColor=#ffffff text=#000000>
<DIV dir=ltr>
<DIV style="FONT-FAMILY: 'Calibri'; COLOR: #000000; FONT-SIZE: 12pt">
<DIV>Hi</DIV>
<DIV>&nbsp;</DIV>
<DIV>You can also use itkStreamingImageFilter for to specifiy the number thread 
per image division.</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>Alex</DIV>
<DIV>&nbsp;</DIV>
<DIV 
style="FONT-STYLE: normal; DISPLAY: inline; FONT-FAMILY: 'Calibri'; COLOR: #000000; FONT-SIZE: small; FONT-WEIGHT: normal; TEXT-DECORATION: none">
<DIV style="FONT: 10pt tahoma">
<DIV>&nbsp;</DIV>
<DIV style="BACKGROUND: #f5f5f5">
<DIV style="font-color: black"><B>From:</B> <A title=prieto@creatis.insa-lyon.fr 
href="mailto:prieto@creatis.insa-lyon.fr">Juan Carlos Prieto</A> </DIV>
<DIV><B>Sent:</B> Tuesday, July 26, 2011 1:57 PM</DIV>
<DIV><B>To:</B> <A title=insight-users@itk.org 
href="mailto:insight-users@itk.org">insight-users@itk.org</A> </DIV>
<DIV><B>Subject:</B> Re: [Insight-users] Multithreading in ITK</DIV></DIV></DIV>
<DIV>&nbsp;</DIV></DIV>
<DIV 
style="FONT-STYLE: normal; DISPLAY: inline; FONT-FAMILY: 'Calibri'; COLOR: #000000; FONT-SIZE: small; FONT-WEIGHT: normal; TEXT-DECORATION: none">Hi 
Rob, <BR><BR>Check itkImageSource, this abstract class has the methods to create 
a multithreaded algorithm. <BR><BR>virtual void ThreadedGenerateData(const 
OutputImageRegionType&amp; outputRegionForThread, int threadId );<BR>&nbsp; 
virtual void AllocateOutputs();&nbsp; <BR>&nbsp; virtual void 
BeforeThreadedGenerateData();&nbsp; <BR>&nbsp; virtual void 
AfterThreadedGenerateData();<BR><BR>If they are implemented then when update is 
called, the algorithm will divide the image and call the corresponding number of 
threads.<BR><BR>bye,<BR><BR>Le 26/07/2011 00:03, robert behan a écrit : 
<BLOCKQUOTE 
cite=mid:CAP0zzh1LAH6-D9e-tUipvuW7Mf_O3BKGYcWTJVJ7b3gS3BnZvA@mail.gmail.com 
type="cite"><PRE wrap="">Hi there,

I am developing an application for reconstructing MRI images and
performing real time image processing ( i,e image processing ) as I
would like to explore the effect of mutlitthreading on execution speed

I am not exactly sure how multi-threading works in ITK so I would
appreciate some guidance on this. Please correct me if any of the
following is incorrect:.

I originally assumed the user would have to write the code themselves
if they want to implement multithreading, but as I understand it you
are only required to do this if you are writing your own custom
filter? In which case multithreading is already implicitly implemented
in a lot of the ITK filters and is automatically used if your code
runs on a multi-core processor?

For example, if I apply the FFT filter to some kspace data, will it
automatically execute on the 4 processors of my machine or do I need
to explicitly tell it to do do?

I presume if no multithreading libraries are specified when building
iTK in cmake then the code will automatically execute on one
processor?

I did build ITK and checked the CMAKE USE WIN32 THREADS so I think my
code should automatically run on the four processors but I am not sure
how to check this? I checked the windows task manager when I executed
my code and the four processors appear to fire up but I would like to
verify this somehow in ITK?

Also how can I set the number of processors I want my code to run on?

Any guidance would be much appreciated,

Rob
_____________________________________
Powered by <A class=moz-txt-link-abbreviated href="http://www.kitware.com">www.kitware.com</A>

Visit other Kitware open-source projects at
<A class=moz-txt-link-freetext href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</A>

Kitware offers ITK Training Courses, for more information visit:
<A class=moz-txt-link-freetext href="http://www.kitware.com/products/protraining.html">http://www.kitware.com/products/protraining.html</A>

Please keep messages on-topic and check the ITK FAQ at:
<A class=moz-txt-link-freetext href="http://www.itk.org/Wiki/ITK_FAQ">http://www.itk.org/Wiki/ITK_FAQ</A>

Follow this link to subscribe/unsubscribe:
<A class=moz-txt-link-freetext href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users</A>
</PRE></BLOCKQUOTE><BR>
<DIV class=moz-signature>-- <BR>Juan Carlos Prieto <FONT color=grey size=2 
face=arial><BR>Phd Student <BR><A 
href="http://www.creatis.insa-lyon.fr">CREATIS</A> Tel:+33472438918 <BR>7 Av 
Jean Capelle <BR>69621 Villeurbanne Cedex <BR>France <BR><A 
href="http://www.creatis.insa-lyon.fr/%7Eprieto">Personal page</A> </FONT></DIV>
<P>
<HR>
_____________________________________<BR>Powered by www.kitware.com<BR><BR>Visit 
other Kitware open-source projects 
at<BR>http://www.kitware.com/opensource/opensource.html<BR><BR>Kitware offers 
ITK Training Courses, for more information 
visit:<BR>http://www.kitware.com/products/protraining.html<BR><BR>Please keep 
messages on-topic and check the ITK FAQ 
at:<BR>http://www.itk.org/Wiki/ITK_FAQ<BR><BR>Follow this link to 
subscribe/unsubscribe:<BR>http://www.itk.org/mailman/listinfo/insight-users<BR></DIV></DIV></DIV></BODY></HTML>