在iOS上的GPU上进行快速傅里叶变换 [英] Fast Fourier transforms on GPU on iOS

查看:785
本文介绍了在iOS上的GPU上进行快速傅里叶变换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为iOS(即iPhone或iPad)实施大量使用快速傅立叶变换的计算密集型应用程序(以及一些信号处理操作,如插值和重新采样)。什么是允许在iOS上运行FFT的最佳库和API?

I am implementing compute intensive applications for iOS (i.e., iPhone or iPad) that heavily use fast Fourier transforms (and some signal processing operations such as interpolations and resampling). What are the best libraries and API that allows for running FFTs on iOS?

我简要介绍了Apple Metal以及Apple vDSP。我不确定vDSP是否使用GPU,尽管它似乎是高度并行化并使用SIMD。 Metal似乎允许访问GPU用于计算密集型应用程序,但我无法找到用于FFT和基本信号处理操作的库(类似于AMD的clFFT)。 Apple是否提供此类库?

I have briefly looked into Apple Metal as well as Apple vDSP. I wasn't sure that vDSP utilizes GPUs although it seems to be highly parallelized and utilizes SIMD. Metal seems to allow to access GPU for compute intensive apps, but I am not able to find libraries for FFT and basic signal processing operations (something like AMD's clFFT). Does Apple provide such libraries?

是否有其他适用于iOS的GPU适用于计算密集型应用程序的API和库?

Are there other APIs and libraries utilizing GPUs for iOS that are suitable for compute intensive apps?

谢谢。

推荐答案

vDSP和加速使用向量指令CPU用于并行化和加速信号处理任务。

vDSP and Accelerate use vector instructions on the CPU to parallelize and speed up signal processing tasks.

关于iOS系统上GPGPU的FFT,我认为目前还没有这样的库。许多信号处理算法在GPGPU框架 GPUImage 中实现,但看起来不支持FFT,因为这些算法是使用OpenGL ES 2.0着色器实现的。 ogles_gpgpu 也是如此。

Regarding FFT via GPGPU on iOS systems, I think there is currently no such library available. Many signal processing algorithms are implemented in the GPGPU framework GPUImage but it looks like FFT is not supported, since these algorithms are implemented with OpenGL ES 2.0 shaders. The same goes for ogles_gpgpu.

OpenGL ES 3.1 iOS系统不支持计算着色器,因此您应该查看Metal。

OpenGL ES 3.1 Compute Shaders are not supported on iOS systems, so you should check out Metal then.

这篇关于在iOS上的GPU上进行快速傅里叶变换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆