【问题标题】:FFT using Intel MKL and Intel IPP使用英特尔 MKL 和英特尔 IPP 的 FFT
【发布时间】:2016-05-03 07:01:13
【问题描述】:

我有一个大小为 1024*128*20 的复杂数据。我需要找到 128*20 块的 1024 点 FFT。我打算使用英特尔 MKL 或英特尔 IPP 来寻找相同的东西。是否可以使用英特尔 MKL 或 IPP 并行化代码? 在最短计算时间方面,MKL 或 IPP 哪个更好?

【问题讨论】:

  • 太宽泛了,真的。你不能对所有 CPU 都回答这个问题,如果你有一个特定的 CPU,你只需运行测试。

标签: c++ fft intel-mkl intel-ipp


【解决方案1】:

我建议您阅读:https://software.intel.com/en-us/articles/mkl-ipp-choosing-an-fft/ 它提供了一个很好的比较,这将使您更容易决定哪个更适合您的用例。

IPP 和 MKL 都可以完成这项工作,但计算时间较短可能取决于您的硬件,因为它们的优化方式不同,例如IPP 仅适用于 FFT 的 2 大小阵列,而 MKL 可能更通用(根据文章)。

(很抱歉提出一个“旧”问题,但尚未选择答案且问题仍然相关)

【讨论】:

    【解决方案2】:

    我认为它们具有相同的性能,因为它们都是由英特尔开发的。我更喜欢 MKL,因为它有更多的用户。

    MKL 和 IPP 都支持并行 FFT。但是,我建议您在更高级别上利用并行性,因为您有许多 FFT 块要做。对于每个 1024-FFT,您可以使用 MKL 中的顺序版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-21
      • 1970-01-01
      • 2019-11-19
      相关资源
      最近更新 更多