[Insight-developers] -Wover-aligned warnings on Rogue7 dashboard
Bradley Lowekamp
blowekamp at mail.nih.gov
Tue May 21 11:30:40 EDT 2013
Sean,
It's for performance reasons to prevent false sharing. This was a significant bottle neck in the v3 Mattes Mutual Information metric, so it was quite worth the effort.
Is this the cause for any failing tests? Or is this just a warning, that the alignment will be ignored?
Here are some performance improvements number I posted to the developer's list for that patch:
MeanSquares:
Threads 3.2 4.2 4.2+patch patch percentage of 3.20
1 0.3615 0.8214 0.4071 113%
2 0.3222 0.6055 0.3365 104%
4 0.3249 0.4448 0.3293 101%
8 0.1703 0.3093 0.1943 114%
12 0.1457 0.2031 0.1322 91%
24* 0.1062 0.1332 0.0949 89%
MutualInformation:
Threads 3.2 4.2 4.2+patch patch percentage of 3.20
1 0.1467 0.6103 0.3353 228%
2 0.1036 0.3747 0.1774 171%
4 0.0847 0.2175 0.1262 149%
8 0.0655 0.1291 0.0681 104%
12 0.0551 0.1035 0.0486 88%
24* 0.0460 0.0829 0.0526 114%
*Hyperthreading
There is likely a better, and likely more complicated way to achieve the same results, which can not be done until after 4.4 release. I would object to hastily removing, this optimization.
Brad
On May 21, 2013, at 11:07 AM, Sean McBride <sean at rogue-research.com> wrote:
> Hi all,
>
> My Rogue7 dashboard has a few warnings from clang's -Wover-aligned:
>
> <http://open.cdash.org/viewBuildError.php?type=1&buildid=2911702>
>
> I'm not a language lawyer, but these look legit to me. Since I build as C++11 I fall into:
>
> #define ITK_CACHE_LINE_ALIGNMENT 64
>
> # define itkAlignedTypedef( alignment, oldtype, newtype ) \
> typedef oldtype newtype alignas(alignment)
>
> The standard says this about operator new: "The pointer returned shall be suitably aligned so that it can be converted to a pointer of any complete object type with a fundamental alignment requirement." std::max_align_t has the strictest fundamental alignment, and, on my system anyway, it's smaller than 64.
>
> Is ITK_CACHE_LINE_ALIGNMENT only for performance? Maybe it should be removed?
>
> Thanks,
>
> --
> ____________________________________________________________
> Sean McBride, B. Eng sean at rogue-research.com
> Rogue Research www.rogue-research.com
> Mac Software Developer Montréal, Québec, Canada
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.php
>
> 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
More information about the Insight-developers
mailing list