【问题标题】:How to modify CPU Cache L1, Cache L2 and Cache L3? [closed]如何修改 CPU Cache L1、Cache L2 和 Cache L3? [关闭]
【发布时间】:2014-10-30 08:31:53
【问题描述】:

我可以使用命名空间 System.Runtime.Caching 来修改 CPU Cache L1、L2 和 L3 的属性和值吗?

msdn.microsoft.com 告诉我命名空间允许在 Windows 中创建新的缓存存储,如虚拟 RAM。

但是,我想使用 CPU 包含的缓存进行编程。 你能告诉我怎么做吗?

感谢您的解决方案!

【问题讨论】:

    标签: c# .net windows caching cpu


    【解决方案1】:

    System.Runtime.Caching 提供对高级缓存设施的访问,通常在具有键值对的常规 RAM 上。 (除此之外还有更多用例。)就像你提到的,MSDN 说:

    您可以创建自定义缓存提供程序。例如,您可以创建自定义提供程序,将缓存数据存储在数据库、自定义对象或文件系统中,而不是使用默认的内存缓存引擎。

    但是 CPU 缓存是一种低级内存,它会自动与 CPU 本身一起使用,以减少对 RAM 的访问;所以它实际上并不意味着被外部应用程序修改。

    例如,L1 指令缓存在物理上紧挨着处理核心,它存储机器代码指令,而 .NET 应用程序在 .NET Framework 本身运行之前甚至不会存储为机器代码(或 ngen),这使得低级操作更加困难。

    但这并不意味着它们不会受到您的代码的影响。您可以编写高效的代码,使 CPU 以优雅的方式使用其缓存。更多信息请见:How does one write code that best utilizes the CPU cache to improve performance?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-26
      • 1970-01-01
      • 2017-03-10
      • 2023-03-21
      • 1970-01-01
      • 2018-04-13
      • 2021-11-24
      相关资源
      最近更新 更多