加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

窗口 – 什么是工作集?

发布时间:2020-12-13 20:09:01 所属栏目:Windows 来源:网络整理
导读:在阅读 Windows研究内核的内存管理代码时,我对工作集的概念感到困惑. “工作集”是“当前算法正在使用的内存部分”的缩写,由CPU刚刚访问的内存部分决定.这是完全自动的.如果正在处理数组并将结果存储在表中,则数组和表是您的工作集. 这是因为CPU会自动将访问
在阅读 Windows研究内核的内存管理代码时,我对工作集的概念感到困惑.
“工作集”是“当前算法正在使用的内存部分”的缩写,由CPU刚刚访问的内存部分决定.这是完全自动的.如果正在处理数组并将结果存储在表中,则数组和表是您的工作集.

这是因为CPU会自动将访问的内存存储在缓存中,靠近处理器.工作集是描述要存储的内存的好方法.如果它足够小,它们都可以适应缓存,并且您的算法将运行得非常快.在操作系统级别上,内核必须告诉CPU,每次访问新页面(通常为4k大小)时,您的应用程序正在使用的物理内存(解析虚拟地址),您也希望避免这样的打击尽可能.

有关算法性能与工作集大小(大约第23页)和许多其他有趣的信息的图表,请参见What Every Programmer Should Know About Memory – PDF.

基本上 – 编写代码来访问尽可能小的内存(即类很小,而不是太多),并尝试确保紧密循环在该内存的非常小的子集上运行.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读