微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – 指令级并行性探索

我只是想知道是否有任何有用的工具,让我在一些算法中利用指令级并行性.更具体地说,我有一个子集
多媒体领域的算法,我想知道什么是利用ILP的最佳方式
在这个算法中.所有这些算法都是在C中实现的,所以理想情况下,我将这些算法作为一些工具的输入,并告诉我可以并行执行哪些指令.

非常感谢任何一点!

罗伯特

解决方法

问题在于,考虑到有多少不同的处理器类型,决定是否并行执行指令是非常困难的.了解您所针对的cpu架构将为您做出这样的工作提供良好的起点.没有软件会以正确的知识打败人心.

总的来说,尽管编译器和无序执行引擎等操作尽可能多的抽象化,即使您完全理解这一点,您也将发现不太可能会超过几个百分点的速度提升.

如果您想要看到严重的速度改进,您可以重新编写算法来利用多个处理器和可用的SIMD操作.您可以使用SIMD单独看到严重的速度改进,对于可以同时处理数据的多个元素的许多“多媒体算法”尤其如此.

原文地址:https://www.jb51.cc/c/111555.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐