delphi - 如何使用扩展数组进行SIMD?

标签 delphi simd

我最近深入研究了以下 Delphi 源代码:

据我了解:

  1. SSE 是使用 Single 执行 SIMD 的方法
  2. SSE2Double 的对应项

我的问题:

如果我希望从 Extended 提供的更高精度中受益,有没有办法做类似的事情(我的意思是带有扩展数组的 SMID)?

最佳答案

扩展是一种 FPU (x87) 类型,是一种在 x87 CPU 之外找不到的时髦类型。

SSE 不支持大于 double 的值(因此也不支持四精度(128 位))。

甚至在已记录但尚未可用的 SSE 版本中也没有(Ivy Bridge)

所以不,这是不可能的。

此外SSE2还拓宽了寄存器并提供了额外的指令,因此“SSE vs SSE2”不仅仅是单与双

关于delphi - 如何使用扩展数组进行SIMD?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9376011/

相关文章:

assembly - 影响标志的 NEON 汇编矢量指令

c++ - 使用 AVX 指令实现 _mm256_permutevar8x32_ps

scala - 服务于一项任务的多个 Scala 参与者

delphi - MessageDlg 显示信息图标而不是确认

delphi - 为什么从 Delphi 关闭文档后 WINWORD.EXE 不退出?

delphi - 为什么Delphi TMemoryStream读取的TBytes和字节数组不同?

c++ - 使用 SIMD 解决循环数据依赖性 - 在 sgn 值的 int8_t 数组中查找 -1 和 +1 之间的转换

delphi - Delphi 中超出范围的对象会发生什么?

delphi - 确保嵌套子控件可见

assembly - 使用Intel SIMD SSE加载非连续值