<br><br>---------- Forwarded message ----------<br><span class="gmail_quote">From: <b class="gmail_sendername">Mark Wyszomierski</b> <<a href="mailto:markww@gmail.com">markww@gmail.com</a>><br>Date: Dec 14, 2005 2:03 PM
<br>Subject: Re: [Insight-users] dual processor<br>To: indian rock <<a href="mailto:indianrock@gmail.com">indianrock@gmail.com</a>><br><br></span>
<div>Ah sorry, my method would only work for multiple images/volumes.</div>
<div>I know the registration process can be very time consuming - it would </div>
<div>be great if the registration filters were internally multithreaded, though </div>
<div>that would require a complex reworking of the algorithms I suppose... </div>
<div>Luis always suggests using a coarse to fine registration method to reach convergence faster - have you tried implementing that? Maybe it will be your only time saver for now,</div>
<div><span class="e" id="q_1082aa820b341128_1">
<div> </div>
<div>Mark</div><br><br>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">indian rock</b> <<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:indianrock@gmail.com" target="_blank">indianrock@gmail.com
</a>> wrote:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Hi Mark,<br><br>No... the registration methods are not multithreaded internally...<br>Currently, all the pixel-wise filters support multithreading..... which is part of registration.. So, running it on a dual processor will impact, but not significant enough to notice any time save.
<br><br>I'm not registering multiple images/volumes.... just two images.... So, multithreading the registration won't help me. I was looking more specifically to multithread the 'optimizer' and 'interpolator'.... I'm running it on windows 2000 (Pentium III - single processor, 1GB RAM).
<div><span><br><br>Thanks..<br>IR.<br><br>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">Mark Wyszomierski</b> <<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:markww@gmail.com" target="_blank">markww@gmail.com</a>
> wrote:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<div><span><br><br>---------- Forwarded message ----------<br><span class="gmail_quote">From: <b class="gmail_sendername">Mark Wyszomierski</b> <<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:markww@gmail.com" target="_blank">
markww@gmail.com</a>><br>Date: Dec 14, 2005 1:01 PM <br>Subject: Re: [Insight-users] dual processor<br>To: indian rock <<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:indianrock@gmail.com" target="_blank">
indianrock@gmail.com</a>><br><br></span>
<div>No, I didn't find any open source methods. Did you check if specific registration methods are internally multithreaded through ITK? (Maybe</div>
<div>I'm getting mixed up with VTK). I thought some were though.</div>
<div> </div>
<div>What I did for myself though was to first create a thread pool with the number of processors available. Then simply start a loop registering your batch of images/volumes, letting registration threads that become free constantly be at work handling the next task in the batch. You only need
</div>
<div>one thread procedure where the ITK registration code lives, and in fact the most difficult part is setting up the efficient control loop which parses out the registration threads as they become free. </div>
<div> </div>
<div>What platform are you using?</div>
<div><span>
<div> </div>
<div><span class="gmail_quote">Mark</span></div>
<div><span class="gmail_quote"></span> </div>
<div><span class="gmail_quote"></span> </div>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">indian rock</b> <<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:indianrock@gmail.com" target="_blank">indianrock@gmail.com
</a>> wrote:</span></div>
<div>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">Mark,<br><br>Thanks for the quick response.<br>Is the multithreaded reigstration code available open souce?
<br><br>Thanks,<br><span>IR.</span>
<div><span><br><br>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">Mark Wyszomierski</b> <<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:markww@gmail.com" target="_blank">markww@gmail.com</a>
> wrote:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<div>I've multithreaded my registration method to make use of multiple processors. As expected, the registration time is decreased by</div>
<div>just about the number of processors available. </div>
<div> </div>
<div>Mark<br><br> </div>
<div>
<div><span><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">indian rock</b> <<a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:indianrock@gmail.com" target="_blank"> indianrock@gmail.com
</a>> wrote:</span> </span></div>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<div><span>Hi,<br><br>Currently, it takes around 4 minutes to do my registration using ITK. <br><br>Apart from optimizing the code (no. of iterations, step length, etc)... are there any other ways, to speed up the registration?
<br>Does anyone know if ITK makes use of a dual processor? Will an additional processor impact the performance?<br><br>Also, has anyone had experience with hardware accelerators? Do those help in speeding up the registration?
<br><br>Any help will be highly appreciated..<br>Thanks,<br><span>IR.<br></span><br></span></div>_______________________________________________<br>Insight-users mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Insight-users@itk.org" target="_blank">
Insight-users@itk.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br><br>
<br></blockquote></div><br></blockquote></div><br></span></div></blockquote></div><br></span></div></span></div><br>_______________________________________________<br>Insight-users mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Insight-users@itk.org" target="_blank">
Insight-users@itk.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br><br>
<br></blockquote></div><br></span></div></blockquote></div><br></span></div>