与AVX-512 Galois场有关的说明是什么?

问题描述 投票:3回答:2

AVX-512指令集扩展之一是AVX-512 + GFNI,“ Galois Field新指令”。

Galois理论是关于场扩展的。这与处理矢量化整数或浮点值有什么关系?指令应该执行“ Galois字段仿射变换”,其反过程和“ Galois字段乘以字节”。

那些是什么领域?这些说明实际上是做什么的,它有什么用?

avx512 galois-field
2个回答
2
投票

主要用例之一是SW RAID6 parity。 RAID5可以使用简单的XOR奇偶校验,但是RAID6需要两个不同的奇偶校验,它们可以从N + 2数据+奇偶校验块中的任意N个恢复N个数据块。这是forward error correction,是ECC解决的类似问题。

Galois字段对此有用。例如Par2将它们用于很大的块计数,以为大文件或文件集生成错误恢复数据。 Par2基于GF16,可支持多达64k的大块计数(即使对于大文件,也可以使错误检测块的大小变小),但是RAID6仅支持255个磁盘就可以了,因此可以使用8位Galois多项式。

((RAID6以与par2不同的方式使用奇偶校验,为每个条带在磁盘上“垂直”生成单独的奇偶校验,而不是为一个大数据阵列“水平”生成单独的奇偶校验。但是基础数学是相似的)]


“字段”是数学概念:

([wikipedia)在数学中,一个域是一个集合,在该集合上定义了加,减,乘和除,并且其行为与对有理数和实数的相应运算相同。

...

[包括所有元素a的加和逆-a的存在,以及每个非零元素b的乘法逆b -1的存在

Galois字段是一种具有此属性的Finite FieldGF8数字中的位表示8阶多项式的0或1个系数。 (很有可能我完全断定了这一点,但这是类似的事情,而不是位置值。)这就是为什么无位加法(又名XOR)和无位乘法(使用shift / XOR而不是shift / add)在Galois字段上有用的原因)

维基百科的有限字段文章使用基本多项式example of a GF8 field给出了X^{3}-X-1


1
投票

这些指令与AES(Rijndael)分组密码紧密相关。 GF2P8AFFINEINVQB使用用户定义的仿射变换执行Rijndael S-Box替换。

GF2P8AFFINEQB本质上是GF(2)中8x8位矩阵与8位向量的(无进位)乘法,因此在其他面向位的算法中应该很有用。它也可以用于在GF(2 8)的同构表示之间进行转换。

GF2P8MULBmultipliesGF(2 8

)的两个(向量)元素,实际上是具有Rijndael简化多项式的多项式表示形式的8位数字。 Rijndael's MixColumns step中使用此操作。

请注意,有限域中的乘法仅与整数乘法松散相关。

© www.soinside.com 2019 - 2024. All rights reserved.