2 ms·
0.5 CPI is for the 128-bit or 256-bit versions; 512-bit ones are 1 CPI. Same on Zen 4 according to uops.info - https://uops.info/table.html?search=vgf2p8affineq
by dzaima 3y ago
0.5 CPI is for the 128-bit or 256-bit versions; 512-bit ones are 1 CPI. Same on Zen 4 according to uops.info - https://uops.info/table.html?search=vgf2p8affineqb%20zmm&cb_lat=on&cb_tp=on&cb_ICL=on&cb_TGL=on&cb_ADLP=on&cb_ZEN4=on&cb_measurements=on&cb_avx512=on https://uops.info/table.html?search=vgf2p8affineqb%20zmm&cb_...
- dragontamer 3y agoThat's still crazy to me that such a powerful operation is done per clock tick. I appreciate the uops.info table. I've never known about that site, so I'll save that off now. Very nicely presented latency/throughput stats. ----------- EDIT: Looks like https://www.felixcloutier.com/x86/gf2p8mulb https://www.felixcloutier.com/x86/gf2p8mulb also exists. The 0b1'0001'1011 polynomial / x^8 + x^4+x^3+x+1 intrigues me, anyone have any idea why this particular GF-polynomial was chosen? EDIT2: Looks like its related to AES somehow (https://crypto.stackexchange.com/questions/51848/why-is-x8-x4-x3-x-1-used-in-aess-rcon https://crypto.stackexchange.com/questions/51848/why-is-x8-x...). The CPU-chip already has AES-instructions hard coded for modern TLS reasons (and AES-acceleration is going to be in every modern chip). So I'm thinking that these multiplication routines might be "sharing the fundamental units" of the Intel CPU, and Intel is wondering if anyone out there can make due with the individual steps of Rinjadel/AES in other applications.