Re: [eigen] Low performance in DEBUG mode |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
Am 25.10.2010 14:22, Benoit Jacob wrote:
> 2010/10/25 Mathias Goldau <math@xxxxxxxxxxxxxxxxxxxxxxxxx>:
>> Am 25.10.2010 13:22, Benoit Jacob wrote:
>> [snip]
>>
>>>> The last third is specific to Eigen's unit tests. They enable special
>>>> Eigen debugging code that makes them slower than regular debug mode
>>>> (EIGEN_INTERNAL_DEBUGGING). Basically, every coefficient access, even
>>>> internal ones, is checked to be in range (default debug mode skips
>>>> that on eigen-internal coefficient addressing and only checks user
>>>> addressing).
>>>>
>>>>> , is there a way
>>>>> around to compile my unit tests also in debug mode, but with a bit more
>>>>> performance in the end?
>>>>> Even setting our cmake build type to: RelWithDebugInfo resulting effective in
>>>>> those CXX flags: "-g -DDEBUG -O2" shows no improvement. I assume this depends
>>>>> on the "-DDEBUG", am I right?
>>>>
>>>> No, -DDEBUG is just enabling regular assertions, that's not too slow..
>>>>
>>>> It's weird that RelWithDebInfo wasn't any faster for you. I checked
>>>> the whole command line with VERBOSE=1 make, and it should really be
>>>> optimized and fast:
>>>>
>>>> -g2 -O2 -g -O2 -g2
>>>>
>>>> (redundancy is no problem)
>>>
>>> Please try today's hg development branch with RelWithDebInfo. a Cmake
>>> issue was recently fixed.
>>
>> Oh dear!, I tried it with new checkout from hg, but with no success since I've
>> should checked earlier with VERBOSE=1! I typed: RelWithDebugInfo instead of
>> RelWithDebInfo, now I've fast unittests with debug info :D, so thank you for
>> your help and explanation from above.
>
> ok, let me add back the cmake code checking the cmake build type, so
> that in the future you get a good error message.
I am not 100 percent sure, the cmake build type stuff was not related to
CMakeLists.txt of Eigen, it was more a problem with our CMakeLists.txt, so
probably WE should (also) add a check in our CMakeLists.txt, incase of an
unkown build type => Message( WARNING "Your using an unknown build type" ) or
something similar.
Do you mean the CMakeLists.txt change with case insensitivity of Debug =>
debug? I think this is not related to my source of error.
Mathias
--
Institut für Informatik
Universität Leipzig
Johannisgasse 26, 04103 Leipzig
Phone: +493419732283