c++ - 如何编写快速(低级)代码?

标签 c++ c performance optimization numerical

我想了解有关低级代码优化以及如何利用底层机器架构的更多信息。我正在寻找有关在哪里阅读有关此主题的好建议。

更多详情:

我对在 C/C++ 等低级语言中的科学计算(这是很多数字运算,但不仅)环境中的优化感兴趣。我对那些不明显的优化方法特别感兴趣,除非人们对机器的工作原理有很好的了解(我还不了解)。

例如,很明显,更好的算法更快,无需了解运行它的机器的任何信息。如果一个人首先遍历矩阵的列或行,这一点并不明显。 (最好循环遍历矩阵,以便依次读取存储在相邻位置的元素。)

欢迎提供有关该主题的基本建议或文章指针。

答案

得到了很多很好的答案,比我有时间阅读的要多得多。以下是所有这些的列表:

我需要一点时间来决定使用哪一个(没有时间)。

最佳答案

Drepper 的 What Every Programmer Should Know About Memory [pdf]是对低级优化的一个方面的很好引用。

关于c++ - 如何编写快速(低级)代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6852670/

相关文章:

c++ - C/C++,NTFS。多个重解析点

c - C 中的半继承 : How does this snippet work?

c - "Illegal Instruction (core dumped)"发生在 valgrind

java - 提高性能一致性的方法

c++ - 无论如何要在初始化列表之前调用 CoInitialize() 吗?

c++ - 以下方式调用函数有什么区别?

c++ - HTTP 请求中的 header 名称无效

c - C语言中AES混合列 block 的伽罗瓦域乘法

java - Android 实例变量

c++ - rdtscp、rdtsc : memory and cpuid/rdtsc? 的区别