On Thu, Nov 28, 2019 at 3:24 PM Gordan Bobic <gordan.bo...@gmail.com> wrote: > For what it's worth, unaligned access does come with a performance penalty, > typically somewhere in the 1-10% range on x86, depending on the generation of > chip used. It has been _mostly_ mitigated on recent x86 chips, and IIRC > Intel's C compiler does have an option to align all structs and arrays to a > 16 byte boundary.
Yes, there is overhead, and there are some unfortunate design choices (or problems) with the InnoDB page format. Luckily, most page header and footer fields are reasonably aligned. > I would be very interested to see some tests data on unalighed access cost on > various aarch64 chips. On various 32-bit ARM chips (including those >= ARMv6) > the unaligned access performance hit was quite dramatic. I wonder if the unaligned access could ever end up costing more than the instruction decoding overhead for implementing multi-byte access via single-byte operations. (In the past, when unaligned access could have been supported by an interrupt to the operating system, like Digital UNIX on the Alpha, I could easily believe it. But, now we are talking about hardware-supported unaligned access.) Marko -- Marko Mäkelä, Lead Developer InnoDB MariaDB Corporation _______________________________________________ Mailing list: https://launchpad.net/~maria-discuss Post to : maria-discuss@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-discuss More help : https://help.launchpad.net/ListHelp