我很想知道是否存在一种可以更快地处理数组密集型计算的架构。例如; 在 MIPS 工作站上运行的一些任意 C 代码会比在 x86 工作站上运行更快吗?我想一个更好的问题是某些架构是否有更快的 FPU?
我知道重型阵列和矩阵运算的较新选项之一是 GPU 计算和使用 Nvidia 的 CUDA 等工具,但我对传统 CPU 级别存在的内容更感兴趣。谢谢!
我很想知道是否存在一种可以更快地处理数组密集型计算的架构。例如; 在 MIPS 工作站上运行的一些任意 C 代码会比在 x86 工作站上运行更快吗?我想一个更好的问题是某些架构是否有更快的 FPU?
我知道重型阵列和矩阵运算的较新选项之一是 GPU 计算和使用 Nvidia 的 CUDA 等工具,但我对传统 CPU 级别存在的内容更感兴趣。谢谢!
过去,许多超级计算机使用矢量处理器,它们基本上同时在多个阵列元素上运行。它们仍然用于一些小众领域(维基文章提到了视频游戏),但不适用于典型的桌面。可能您在标准桌面中找到的最接近的东西将涉及使用 GPU 进行非图形工作。
当然有架构的优点和缺点。有一段时间,PowerPC 芯片在一系列浮点密集型基准测试中始终击败英特尔同类产品。这种差异反映在他们运行我当时正在研究的一些核物理代码的速度上。
然而,他们像狗一样运行 Word 和 Excel,然后他们的时钟速度真的开始下滑,桌面上的 PowerPC 芯片一切都结束了。我认为 Apple 只会坚持他们这样做,以便他们可以让多架构执行层顺利工作。
另请注意,如今许多架构都有 SIMD(单指令多数据,即矢量化)浮点和整数算术单元(例如 AltiVec、MMX、SSE 等)。与 GPU 等专用处理器相比,这些在通用芯片中只是轻度矢量化。