使用 "C",如何以编程方式更改 Ubuntu Linux 16.04 Dell、Lenovo 或 Hewlett Packard 64 位计算机上的缓存大小?
Using "C", how do I programatically change cache sizes on an Ubuntu Linux 16.04 Dell, Lenovo or Hewlett Packard 64 bit machine?
如何使用 "C",以编程方式更改 Ubuntu Linux 16.04 Dell、Lenovo 或 Hewlett Packard 64 位机器上的缓存大小?
这里有两个涉及此主题的软件工程文章的 URL。
https://unix.stackexchange.com/questions/253816/restrict-size-of-buffer-cache-in-linux
How does one write code that best utilizes the CPU cache to improve performance?
但是,请不要解决在多级缓存层次结构中禁用或启用 L2 缓存或减小 L2 缓存大小的问题。
非常感谢任何帮助。
您不能启用、禁用、缩小或扩展 L2、L1 或任何其他缓存。他们在那里,他们做他们的事,仅此而已。我知道历史上没有 CPU(欢迎更正)缓存是一种灵活可编程的东西。
您几乎永远不必担心缓存及其功能,只有在极端情况下,人们才需要担心缓存的最后一滴性能,即便如此,它也是拥有一个经过优化的数学库比努力编写一个自己的数学库要有效得多。
一些 CPU 可以选择让软件给出关于哪些数据适合加载的提示。 PowerPC 就是一个例子,在执行 FFT 等操作时,此类指令对于充分利用 CPU 内核本身非常有用
最近历史上唯一无缓存的高性能 CPU 是 PlayStation 3 中的 Cell 处理器; 8 个 SPE 没有缓存,但有 256kbyte 的 SRAM,这实际上非常有用。
加州大学戴维斯分校计算机科学系的 Matthew Caesar 撰写了一篇标题为 "Performance and Analysis of Minimum Spanning Tree Algorithms in Cache Based Architectures" 的精彩文章,其中他使用了 C++ 软件优化,例如更改 Prim 算法中的堆扇出变化以使用 d-ary 堆,以便预取更大的随机图形兄弟组,从而显着加快运行时间,https://pdfs.semanticscholar.org/bd1f/b82d4f4f4fa1041e9336c7d5c74023ebacb0.pdf.
如何使用 "C",以编程方式更改 Ubuntu Linux 16.04 Dell、Lenovo 或 Hewlett Packard 64 位机器上的缓存大小?
这里有两个涉及此主题的软件工程文章的 URL。
https://unix.stackexchange.com/questions/253816/restrict-size-of-buffer-cache-in-linux
How does one write code that best utilizes the CPU cache to improve performance?
但是,请不要解决在多级缓存层次结构中禁用或启用 L2 缓存或减小 L2 缓存大小的问题。
非常感谢任何帮助。
您不能启用、禁用、缩小或扩展 L2、L1 或任何其他缓存。他们在那里,他们做他们的事,仅此而已。我知道历史上没有 CPU(欢迎更正)缓存是一种灵活可编程的东西。
您几乎永远不必担心缓存及其功能,只有在极端情况下,人们才需要担心缓存的最后一滴性能,即便如此,它也是拥有一个经过优化的数学库比努力编写一个自己的数学库要有效得多。
一些 CPU 可以选择让软件给出关于哪些数据适合加载的提示。 PowerPC 就是一个例子,在执行 FFT 等操作时,此类指令对于充分利用 CPU 内核本身非常有用
最近历史上唯一无缓存的高性能 CPU 是 PlayStation 3 中的 Cell 处理器; 8 个 SPE 没有缓存,但有 256kbyte 的 SRAM,这实际上非常有用。
加州大学戴维斯分校计算机科学系的 Matthew Caesar 撰写了一篇标题为 "Performance and Analysis of Minimum Spanning Tree Algorithms in Cache Based Architectures" 的精彩文章,其中他使用了 C++ 软件优化,例如更改 Prim 算法中的堆扇出变化以使用 d-ary 堆,以便预取更大的随机图形兄弟组,从而显着加快运行时间,https://pdfs.semanticscholar.org/bd1f/b82d4f4f4fa1041e9336c7d5c74023ebacb0.pdf.