首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C程序设计优化与处理器扩展

C程序设计优化与处理器扩展
EN

Stack Overflow用户
提问于 2015-05-09 03:35:13
回答 1查看 171关注 0票数 4

我有一个C编程任务,它涉及尽可能多地优化代码。我已经在互联网上读过一些这方面的内容,比如在if上使用if,传递指针而不是值等等。

我想问的是,为什么知道有哪些处理器扩展可以帮助我优化代码呢?我知道这台机器上有SSE和AVX,但作为一个程序员,这到底意味着什么呢?

关于我上面的问题,我找到了英特尔内在指南,我认为它与处理器扩展有关。与其他C函数相比,使用这些函数在性能上有什么优势吗?从xmmintrin.h使用sqrt比从math.h使用sqrt更快吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-09 04:13:49

其思想是让每个CPU优化库(SSE、AVX等),并调用类似_may_i_use_cpu_feature()之类的东西来动态确定运行时可用的特性,并为CPU加载“最佳”实现。

对于可移植的代码,您需要使用sqrt() --而且一些运行时库具有足够好的优化实现。如果您想要在特定平台上完全控制并最大化性能,而不关心可移植性,则可以编写手动优化的程序集(或使用本机)。

大多数性能都是通过更好的算法获得的.

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30135677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档