[Insight-users] Speeding up the evaluation of the itk::Gaussian?

motes motes mort.motes at gmail.com
Wed Sep 9 15:25:04 EDT 2009


Yes now it works, thanks man!

I have made an image registration application where I experiment with
using a Gaussian kernel instead of the BSpline kernel to weight the
deformation vectors (based on control points placed arbitrarily in
physical coordinates).

For a 128*128 image with 64 control points (128*128*64 calls to the
gaussian) I currently test how expensive the call to the gaussian
function is:

1) Release Build - Takes 20 seconds

2) Debug Build  - Takes 133.045 seconds

For one iteration of the optimizer. But the BSpline kernel is still
much faster than the gaussian kernel in the Release Build.

Any ideas on how to speed the evaluation of the Gaussian Kernel or is
it impossible?




On Wed, Sep 9, 2009 at 5:56 PM, Luis Ibanez<luis.ibanez at kitware.com> wrote:
>
> Yes,
> you must build *ALL* the components of your application
> with the exact same compilation mode.
>
> In this case, you need to compile in Release mode, all the
> libraries that you are using for your application.
>
>
>        Luis
>
>
> ---------------------------------------------------------------------------
> On Wed, Sep 9, 2009 at 11:50 AM, motes motes <mort.motes at gmail.com> wrote:
>>
>> Hm I assume its this one:
>>
>>
>>
>> INCLUDE_DIRECTORIES(${ELASTIX_SRC}/Components/Optimizers/StandardGradientDescent)
>>
>>
>> from the elastix library. So I assume that I also need to make a
>> Release build of elastix?
>>
>>
>>
>> On Wed, Sep 9, 2009 at 5:42 PM, Bill Lorensen<bill.lorensen at gmail.com>
>> wrote:
>> > Where is StandardGradientDescent.lib built?
>> >
>> > On Wed, Sep 9, 2009 at 11:35 AM, motes motes<mort.motes at gmail.com>
>> > wrote:
>> >> Now I have done the above (build itk from VS in Release mode and build
>> >> my application using the itk Release build in release mode) but
>> >> instead of:
>> >>
>> >> Error   12      fatal error LNK1181: cannot open input file
>> >> 'ITKCommon.lib'
>> >>
>> >>
>> >> I get a new error:
>> >>
>> >> Error   12      fatal error LNK1181: cannot open input file
>> >> 'StandardGradientDescent.lib'
>> >>
>> >>
>> >> Any ideas?
>> >>
>> >> And why does these errors suddenly appear when I chose to build a
>> >> release build instead of Debug build?
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> On Wed, Sep 9, 2009 at 4:46 PM, Luis Ibanez<luis.ibanez at kitware.com>
>> >> wrote:
>> >>>
>> >>> Hi Mote,
>> >>>
>> >>> You need to build in the *SAME* configuration mode,
>> >>> both ITK *and* your application.
>> >>>
>> >>> Please do the following:
>> >>>
>> >>>    1) Load the ITK solution file into Visual Studio.
>> >>>    2) Select Configuration = Release
>> >>>    3) Build ITK
>> >>>        (verify that you get an ITKCommon.lib file
>> >>>        in the directory:   ITKBINARY/bin/Release)
>> >>>    4) Load your project solution into Visual Studio
>> >>>    5) Select Configuration = Release
>> >>>    6) Build your application
>> >>>
>> >>>
>> >>>    Regards,
>> >>>
>> >>>
>> >>>            Luis
>> >>>
>> >>>
>> >>> -----------------------------------------------
>> >>> On Wed, Sep 9, 2009 at 10:41 AM, motes motes <mort.motes at gmail.com>
>> >>> wrote:
>> >>>>
>> >>>> I am using Visual Studio 2008. I have tried:
>> >>>>
>> >>>> Build -> Configuration Manager ...
>> >>>>
>> >>>> And from there chosing "Release". But when I compile I get the error:
>> >>>>
>> >>>> Error   12      fatal error LNK1181: cannot open input file
>> >>>> 'ITKCommon.lib'
>> >>>>
>> >>>> This error does not pop up if I choose the "Debug" configuration
>> >>>> (default).
>> >>>>
>> >>>> In a previous post I was told to use cmake to build a release build.
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> On Wed, Sep 9, 2009 at 4:37 PM, Luis Ibanez<luis.ibanez at kitware.com>
>> >>>> wrote:
>> >>>> >
>> >>>> > Hi Motes,
>> >>>> >
>> >>>> > In Windows you can not select the compilation mode from CMake.
>> >>>> >
>> >>>> > You have to do it from inside Visual Studio,
>> >>>> > after you load the ITK solution file,
>> >>>> > by selecting the configuration mode.
>> >>>> >
>> >>>> > What version of Visual Studio do you use ?
>> >>>> >
>> >>>> >
>> >>>> >     Luis
>> >>>> >
>> >>>> >
>> >>>> >
>> >>>> >
>> >>>> > ---------------------------------------------------------------------------------------------
>> >>>> > On Wed, Sep 9, 2009 at 10:29 AM, motes motes <mort.motes at gmail.com>
>> >>>> > wrote:
>> >>>> >>
>> >>>> >> Ok but how do I make a release build with cmake?
>> >>>> >>
>> >>>> >> After chosing "Configure" the only thing related to "Release" is:
>> >>>> >>
>> >>>> >> CMAKE_CXX_FLAGS_RELEASE       /MD /O2 /Ob2 /D NDEBUG
>> >>>> >>
>> >>>> >> I thought I could check it like "Examples" and "Testing".
>> >>>> >>
>> >>>> >>
>> >>>> >>
>> >>>> >> On Wed, Sep 9, 2009 at 3:37 PM, John
>> >>>> >> Drescher<drescherjm at gmail.com>
>> >>>> >> wrote:
>> >>>> >> >> In Visual Studio you must select "Release" from the drop down
>> >>>> >> >> box on
>> >>>> >> >> the toolbar to perform an optimized compilation. Using a
>> >>>> >> >> "Release"
>> >>>> >> >> build can improve performance 10-200%.
>> >>>> >> >>
>> >>>> >> >
>> >>>> >> > In my testing with a debug versus release (under visual studio)
>> >>>> >> > it is
>> >>>> >> > much worse than that in debug mode. I mean for a 3D median
>> >>>> >> > filter of
>> >>>> >> > a
>> >>>> >> > CT volume of 512x512x384. In release mode this completes in less
>> >>>> >> > than
>> >>>> >> > 30 seconds. In debug mode it takes around 30 minutes.
>> >>>> >> >
>> >>>> >> > John
>> >>>> >> >
>> >>>> >> _____________________________________
>> >>>> >> 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
>> >>
>> >
>
>


More information about the Insight-users mailing list