我们正在编写针对某些英特尔硬件的图像处理算法。一般来说,我们更喜欢通用的C实现,但是我们已经确定了一种算法,该算法的核心是大量的离散余弦变换(DCT)非常有效。不幸的是,我们的吞吐量要求使得通用C实现大约2个数量级太慢。我可以通过其他一些技巧获得一个数量级,所以如果我可以将DCT提高大约一个数量级,我就有了成功之路。
英特尔MMX是否可以通过硬件加速来完成这些DCT?是否有其他特定于英特尔的库和/或硬件可以用来加速这些坏男孩?
我从哪里开始看?这对我来说是一项新工作,也是我第一次深入研究英特尔硬件,所以任何指针都会受到最高的赞赏。
答案 0 :(得分:3)
查看英特尔的Integrated Performance Primitives库。它包含大量优化的例程,以利用英特尔架构,特别是MMX和SSE。在许多其他方面,IPP还包含DCT的例程(documentation here)。