[fedora-arm] Fedora 20 for Raspberry Pi????
Gordan Bobic
gordan at bobich.net
Fri Dec 27 16:27:48 UTC 2013
On 12/27/2013 04:02 PM, Richard W.M. Jones wrote:
> On Fri, Dec 27, 2013 at 09:53:54AM +0000, Gordan Bobic wrote:
>> How is transparent alignment fixup going to give you back the
>> performance you lose from accesses straddling cache lines?
>
> You can have structs straddling cache lines and causing performance
> problems without alignment issues, or structs being packed too close
> together causing false sharing again w/o alignment being involved.
>
> If alignment problems cause performance issues, then we should deal
> with those performance problems. If they don't, we shouldn't worry
> about them.
>
> Rich.
>
> ObHack: I once worked with an architecture [68k-based VME hardware]
> that not only faulted on unaligned access, but also on accesses of the
> wrong *size* (eg. using a short-sized read instruction instead of a
> word-sized read instruction). Dealing with that nonsense involved a
> lot of compiler-specific massaging of code and some inline assembly ...
I'm very glad you mentioned compilers - this is in fact easily fixable
at compiler level. Intel's ICC has an option to make all arrays and
structs always aligned to a boundary (up to 16 byte, IIRC). If GCC were
to implement such a feature the problem could be made to go away without
actually addressing the underlying cause of the problem. It might be a
bodge, but since complete fix of the underlying problem isn't going to
happen anyway, a good bodge would be a lot better than doing nothing.
Gordan
More information about the arm
mailing list