Maamoun TK <maamoun...@googlemail.com> writes: > This implementation takes advantage of research made by Niels Möller to > optimize GCM on PowerPC, this optimization yields a +27.7% performance > boost on POWER8 over the previous implementation that was based on intel > documents. The performance comparison is made by processing 4 blocks per > loop without any further optimizations.
Hi, the patch didn't apply cleanly due to email line breaks (maybe try posting as a text attachment next time?), but I've applied it semi-manually, and pushed it to a branch ppc-gcm. I gave it a test run on gcc112 in the gcc compile farm, and speedup of gcm update seems to be 26 times(!) compared to the C version. > I made some documentations between the lines but I suggest writing a > document similar to the intel ones that go into more details and clarify > the preference of this method. Where would that documentation be published? In the Nettle manual, as some IBM white paper, or as a more-or-less academic paper, e.g., on arxiv? I will not be able to spend much time on writing, but I'd be happy to review. > I'm also curious if this method can also > make a difference in other architectures like ARM, I'm planning to try it > out for ARM to figure that out. I have a sketch of ARM Neon code doing the equivalent of two vpmsumd, with reasonable parallelism. Quite a lot of instructions needed. Regards, /Niels > +C Alignment of gcm_key table elements, which is declared in gcm.h > +define(`TableElemAlign', `0x100') I still find this large constant puzzling. If I try struct gcm_key key; printf("sizeof (key): %zd, sizeof(key.h[0]): %zd\n", sizeof(key), sizeof(key.h[0])); (I added it to the start of test_main in gcm-test.c) and run on the gcc112 machine, I get sizeof (key): 4096, sizeof(key.h[0]): 16 Which is what I'd expect, with elements of size 16 bytes, not 256 bytes. I haven't yet had the time to read the code carefully. Regards, /Niels -- Niels Möller. PGP-encrypted email is preferred. Keyid 368C6677. Internet email is subject to wholesale government surveillance. _______________________________________________ nettle-bugs mailing list nettle-bugs@lists.lysator.liu.se http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs