[Insight-users] [Insight-developers] Cuda ITK : Claims should be backed up by reproducible Experirments

Luis Ibanez luis.ibanez at kitware.com
Thu Feb 12 17:46:34 EST 2009



Before we start drowning in reports of *anecdotic* experiences with
CUDA, that will metamorphosize into over-simplified *superstitions*
such as


              "Cuda is 100 times faster"
or           "Cuda doesn't make a difference"...


Let's go back to the basic principles of rational thinking.


A good starting point would be to put code into a common open repository
and to set up Nightly builds that will be submitted to the Experimental
section of the ITK Dashboard. Just as we do with the Statistics
Refactoring and the Lesion Sizing Toolkit.

Otherwise we will simply create a precedent of confusion.

Any claims about Methods should be based on

    * available code
    * available data
    * available parametes

that will make possible for others to reproduce the experiments
leading to such claims.

Can you guys post your CUDA code in a public repository ?

See for example the CUDA code in the NAMIC Sandbox:
http://svn.na-mic.org/NAMICSandBox/trunk/MistSlicer/Modules/VolumeRenderingCuda/


Could you as well,
when you report your experience,
please include full details on how you performed them  ?


E.g.
* size of datasets,
* algorithms you ran,
* hardware configurations...



    Otherwise,
    if we are talking a bout code that can not be shared,
    then,
    there is no point on bringing such topic to this list,   :-)
    isn't it ?



     Luis


-------------------
Hua-Mei Chen wrote:
> I have seen several discussions on this issue before in this emailing 
> list. My impression is that it is not possible or very difficult to 
> combine CUDA and ITK for now. All I can say is that CUDA indeed is able 
> to give you a significant speedup, but it strongly depends on the 
> quality of your CUDA codes.
> 
> Chen
> 
> 
> ----- Original Message ----- From: "Marcel Weiss" <mweiss at cbs.mpg.de>
> To: "Hua-Mei Chen" <huameichen0523 at gmail.com>
> Cc: <insight-users at itk.org>; <insight-developers at itk.org>
> Sent: Thursday, February 12, 2009 11:06 AM
> Subject: Re: [Insight-developers] [Insight-users] Cuda ITK
> 
> 
> As we ordered a new number crunching machine including a NVIDIA Tesla TM 
> C1060 and we are planning to use it for the fast processing of our 
> high-resolition 3D images, I´d be interested in some more statements and 
> experiences on CUDA (pure and/or with ITK).
> 
> Would you suggest planning and programming new code or adjusting 
> existing code?
> I´m sure there is a tradeoff between man power needed and speed-up 
> gained ...
> 
> Marcel Weiss
> Dipl.-Inf.(FH)
> PhD student
> Department of Neurophysics
> Max Planck Institute for Human Cognitive and Brain Sciences
> 
> ----- Original Message -----
> From: "Hua-Mei Chen" <huameichen0523 at gmail.com>
> To: "Dan Mueller" <dan.muel at gmail.com>, "Gaëtan Lehmann" 
> <gaetan.lehmann at jouy.inra.fr>, "Badri Roysam" <roysam at ecse.rpi.edu>
> Cc: "ITK Users" <insight-users at itk.org>, "ITK Developers" 
> <insight-developers at itk.org>
> Sent: Thursday, February 12, 2009 5:21:11 PM GMT +01:00 Amsterdam / 
> Berlin / Bern / Rome / Stockholm / Vienna
> Subject: Re: [Insight-developers] [Insight-users]  Cuda ITK
> 
> Well, we wrote some PURE CUDA code for our mutual information based
> non-rigid registration. It did give us a significant (> 100 times for some
> routines) speedup. But I have no idea how to use it with ITK.
> 
> Chen
> 
> 
> ----- Original Message ----- From: "Badri Roysam" <roysam at ecse.rpi.edu>
> To: "Dan Mueller" <dan.muel at gmail.com>; "Gaëtan Lehmann"
> <gaetan.lehmann at jouy.inra.fr>
> Cc: "ITK Users" <insight-users at itk.org>; "ITK Developers"
> <insight-developers at itk.org>
> Sent: Thursday, February 12, 2009 8:50 AM
> Subject: Re: [Insight-users] [Insight-developers] Cuda ITK
> 
> 
> We invested heavily in GPUs and CUDA in my lab a couple of years ago. Our
> practical
> experience has been that these things don't work quite as we had imagined
> from the
> advertising. In other words, when we compiled our vessel segmentation codes
> on CUDA,
> we found no speedup (in some case, it was slower than optimized compilation
> on the CPU.
> It took a lot of work to get speedup over serial code. You have to rethink
> your
> code to suit a streaming architecture, and spend time working out the data
> flows carefully.
> Overall, we learned that the effort involved in building
> "GPU versions" of existing routines is
> manpower intensive. I am interested to know what others' experience has
> been.
> 
> 
> Badri Roysam
> Professor, Department of Electrical, Computer and Systems Engineering
> Associate Director, NSF Center for Subsurface Sensing & Imaging Systems
> (CenSSIS ERC)
> Co-Director, Rensselaer Center for Open Source Software
> Rensselaer Polytechnic Institute
> 110 8th Street, Troy, New York 12180-3590, USA.
> Office(JEC 7010): 518-276-8067, Assistant: 518-276-8525, Lab(JEC 6308):
> 518-276-8207, Fax: 518-276-8715
> Email: roysam at ecse.rpi.edu, Web: http://www.ecse.rpi.edu/~roysam
> 
> 
> 
> ----- Original Message -----
> From: Dan Mueller [mailto:dan.muel at gmail.com]
> To: Gaëtan Lehmann [mailto:gaetan.lehmann at jouy.inra.fr]
> Cc: ITK Users [mailto:insight-users at itk.org], ITK Developers
> [mailto:insight-developers at itk.org]
> Subject: Re: [Insight-users] [Insight-developers] Cuda ITK
> 
> 
>> Hi Gaetan,
>>
>> I too have been following the closely development of the GPGPU field
>>     http://en.wikipedia.org/wiki/Gpgpu
>> and waiting for ITK to jump on board (unfortunately I have had little
>> spare time to spearhead this myself).
>>
>> I remember speaking to Luis at a t-con last year about ITK+CUDA and he
>> mentioned one of outcomes of the project was discovering that CUDA is
>> not (yet) very portable (i.e. code that works on one NVIDIA card, does
>> not necessarily work on another).
>>
>> If ITK is going to be GPGPU-enabled, then perhaps the OpenCL standard
>> will provide more portability:
>>     http://en.wikipedia.org/wiki/OpenCL
>>
>> Obviously OpenCL is still new (version 1.0 approved December 8, 2008),
>> but I imagine we'll start seeing supporting hardware soon
>>     http://www.nvidia.com/object/io_1228825271885.html
>>
>> http://news.softpedia.com/news/AMD-Takes-Up-OpenCL-1-0-Puts-More-Effort-on-ATI-Stream-SDK-99578.shtml 
>>
>> and maybe even Intel's Larrabee
>>     http://www.hpcwire.com/blogs/OpenCL_On_the_Fast_Track_33608199.html
>>
>> (I don't think NVIDIA or ATI has to date officially announced a chip
>> with OpenCL support...I'd be happy to be proved wrong...)
>>
>> Because much of this is still speculative, it doesn't really factor
>> into your discussion about what hardware to buy today... Just a
>> warning: while CUDA is the pioneer, it may not be be around to see the
>> real action.
>>
>> Cheers, Dan
>>
>> 2009/2/11 Gaëtan Lehmann <gaetan.lehmann at jouy.inra.fr>:
>> >
>> > Hi,
>> >
>> > We are currently thinking to buy a few powerful workstations to run ITK
>> > in
>> > my lab.
>> > I heard of nvidia's tesla cards, and I see that some experiments has
>> > been
>> > made to use them in ITK.
>> >
>> > http://www.na-mic.org/Wiki/images/f/f9/Itk-gpu-meeting-Fall2007.ppt
>> >
>> > Is there any update since fall 2007?
>> >
>> > Regards,
>> >
>> > Gaëtan
>> >
>> >
>> > --
>> > Gaëtan Lehmann
>> > Biologie du Développement et de la Reproduction
>> > INRA de Jouy-en-Josas (France)
>> > tel: +33 1 34 65 29 66    fax: 01 34 65 29 09
>> > http://voxel.jouy.inra.fr  http://www.mandriva.org
>> > http://www.itk.org  http://www.clavier-dvorak.org
>> _____________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-users
>>
> _____________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
> 
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-users
> 
> _______________________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at 
> http://www.kitware.com/opensource/opensource.html
> 
> Please keep messages on-topic and check the ITK FAQ at: 
> http://www.itk.org/Wiki/ITK_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
> _____________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
> 
> Please keep messages on-topic and check the ITK FAQ at: 
> http://www.itk.org/Wiki/ITK_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-users


More information about the Insight-users mailing list