<div dir="ltr">Echoing David's earlier comments it would seem like we would want a nice path to convert existing multithreaded algorithms to use vtkSMPTools knowing that vtkSMPTools would not slow down the existing algorithm. Doing<div><br></div><div>#if VTK_SMP_BACKEND == SLOW</div><div> use vtkMultithreader</div><div>#else</div><div>  use vtkSMPTools</div><div>#endif<br><div><br></div><div>sounds odd. I did not read the pdf so if that is covered in there apologies.</div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 9, 2016 at 10:56 AM, David Gobbi <span dir="ltr"><<a href="mailto:david.gobbi@gmail.com" target="_blank">david.gobbi@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Sujin,<div><br></div><div>That sounds good.  Even if the choice of backend is transparent as far as using vtkSMPTools is concerned, it's very nice to be able to report which backend was configured.</div><div><br></div><div> - David<br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 9, 2016 at 8:46 AM, Sujin Philip <span dir="ltr"><<a href="mailto:sujin.philip@kitware.com" target="_blank">sujin.philip@kitware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div>Hi Sean,<br><br></div>vtkSMPTools is a framework for implementing multi-threaded algorithms in VTK. It support several backends. The main ones are TBB and OpenMP. There are Kaapi and Simple backends which are no longer supported and will be removed soon. Finally, the default backend is Sequential which is just a single threaded implementation of the framework. After removal of the Kaapi and Simple backend, if you need multithreading support on Clang you would have to use TBB. The Sequential backend will be supported on all platforms.<br><br></div>David,<br><br>I have talked with Berk about this and I will soon make a change to have a compile time macro to check for SMP backend type. I will also finally remove Kaapi and Simple backend as part of this change.<br><br></div>Thanks<span><font color="#888888"><br></font></span></div><span><font color="#888888">Sujin<br><br></font></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 9, 2016 at 10:28 AM, Sean McBride <span dir="ltr"><<a href="mailto:sean@rogue-research.com" target="_blank">sean@rogue-research.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>On Tue, 9 Feb 2016 09:13:48 -0500, Sujin Philip said:<br>
<br>
>Why would you want to continue using vtkMultiThreader when Sequential or<br>
>Simple is used? In fact, now that there is an openmp backend, we should be<br>
>removing simple. It was only there to ease debugging since tbb had very<br>
>complex back-traces. Openmp back-traces are much more readable. Do you want<br>
>the algorithm to be multithreaded even when Sequential is used?<br>
<br>
</span>I don't know the APIs you're discussing, so this comment is coming mostly from ignorance, but: are you talking about requiring OpenMP to build VTK?  Clang has only very recently added OpenMP support, and IIRC it's not complete.  Also, last I checked, Apple's fork of clang doesn't support it at all.<br>
<br>
Cheers,<span class="HOEnZb"><font color="#888888"><br>
<span><font color="#888888"><br>
--<br>
____________________________________________________________<br>
Sean McBride, B. Eng                 <a href="mailto:sean@rogue-research.com" target="_blank">sean@rogue-research.com</a><br>
Rogue Research                        <a href="http://www.rogue-research.com" rel="noreferrer" target="_blank">www.rogue-research.com</a><br>
Mac Software Developer              Montréal, Québec, Canada<br>
<br>
<br>
</font></span></font></span></blockquote></div><span class="HOEnZb"><font color="#888888"><br></font></span></div>
</div></div></blockquote></div><br></div></div></div>
<br>_______________________________________________<br>
Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Search the list archives at: <a href="http://markmail.org/search/?q=vtk-developers" rel="noreferrer" target="_blank">http://markmail.org/search/?q=vtk-developers</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/mailman/listinfo/vtk-developers" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/vtk-developers</a><br>
<br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">Ken Martin PhD<div>Chairman & CFO<br>Kitware Inc.<br>28 Corporate Drive<br>Clifton Park NY 12065<br>518 371 3971<div><br></div><div><span style="font-size:10pt;font-family:Tahoma,sans-serif">This communication,
including all attachments, contains confidential and legally privileged
information, and it is intended only for the use of the addressee.  Access to this email by anyone else is
unauthorized. If you are not the intended recipient, any disclosure, copying,
distribution or any action taken in reliance on it is prohibited and may be
unlawful. If you received this communication in error please notify us
immediately and destroy the original message. 
Thank you.</span></div></div></div>
</div></div>