VPU vs FPU vs GPU vs ALU

tes*_*n3r 5 cpu gpu fpu alu

我想更好地了解矢量处理图形(VPU),浮点单元,图形处理单元以及算术和逻辑单元之间的区别。

我知道在CPU内有一个FPU和一个ALU,但是对于GPU来说也是如此吗?

VPU vs GPU呢?他们不应该是同一个人吗?内部是否有ALU / FPU?

Had*_*ais 5

VPU支持非常大或可变大小的向量。特别是,向量指令从寄存器(有时称为向量长度寄存器)或存储位置中提取向量中的元素数量。而且,通常支持矢量掩模以选择性地处理矢量的元素。VPU通常具有专用寄存器来保存矢量长度和掩码。例如,请参见Cray矢量说明。这与SIMD指令相反,SIMD指令支持较小的向量或固定大小的向量(并且可能对掩码的支持有限)。

尽管VPU的指令集包括矢量指令,但是这些指令的实现或执行方式可能不会完全并行化,甚至可能类似于标量处理器的方式(一次处理一个元素)。

GPU可能是VPU,也可能不是VPU,具体取决于GPU支持的指令集。另外,VPU可以实现为GPU,但这实际上是实现细节。甲GPU是大集合核(一般每个含有ALU和FPU)和一些特殊单元(用于图形处理)中不的VPU和通用CPU存在。但是,大多数(如果不是全部)真正的GPU都不是VPU,因为它们不支持如此强大的矢量指令。将内核映射到GPU内核是由编译器和GPU设备驱动程序完成的。

维基百科上 VPU的定义规定矢量必须是一维的。从历史上看,情况始终如此。另一方面,GPU似乎具有对多维矢量的内置支持,但这实际上是由编译器而不是体系结构处理的。因此,我认为这不是本质的区别。

FPU和ALU是VPU,CPU和GPU的组件。