gpt4 book ai didi

c++ - 使用 C++ 定点的 FFT 优化 ARM 设备的性能

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:55:19 28 4
gpt4 key购买 nike

我在手机和平​​板电脑上使用 OpenCV DFT,比方说 ARM 设备。代码在 C++ 中。我期望能够通过使用 ARM 寄存器和定点算法来优化 FFT 性能,但我只能设法获得比 OpenCV 多一倍的时间,甚至不是同一时间。

我使用 RADIX-4 256 点 FFT。

有谁知道 OpenCV 是做什么的,为什么优化这么难?哪个是 ARM 设备最快的 FFT 算法? radix-4, radix-8, 256 点, 1024...

最佳答案

OpenCV 的实现在 Tegra、Tegra 2 和 Tegra 3 设备上使用特定于设备的优化。在 Tegra 和 Tegra 2 上,实现是并行的,一些操作使用 GLSL 着色器在 GPU 上加速;在 Tegra 3 上,它还使用 NEON SIMD 指令对 CPU 上的某些操作进行矢量化,并使用 CUDA 以获得更好的 GPU 性能。考虑到 NVidia 将人力投入到优化工作中,利用他们对平台的深入了解,在比奇怪的不常见操作更多的情况下超越它可能是一项艰巨的任务。

This article主要是 Tegra 3 特定的,但谈论了很多关于他们使用的技术类型以及他们通过优化但与设备无关的代码获得的性能加速。

关于c++ - 使用 C++ 定点的 FFT 优化 ARM 设备的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10638622/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com