|
|
51CTO旗下网站
|
|
移动端

欲提升计算性能,就要将CPU从垃圾回收机制中解放出来!

你可能没注意到,你的计算机在后台拼命组织其内存系统。除了许多任务外,CPU还要执行一项名为“垃圾收集”的操作:识别并删除应用程序中冗余或无关的数据,释放额外的内存空间。

作者:布加迪编译来源:51CTO|2019-05-14 08:00

欲提升计算性能,就要将CPU从垃圾回收机制中解放出来!

【51CTO.com快译】你可能没注意到,你的计算机在后台拼命组织其内存系统。除了许多任务外,CPU还要执行一项名为“垃圾收集”的操作:识别并删除应用程序中冗余或无关的数据,释放额外的内存空间。

垃圾收集旨在使程序员无须手动处理这些不必要的数据,但CPU负责处理的自动化过程耗用大量计算能力,占CPU花费在应用程序上的总时间的10%或更多。

现供职于谷歌的Martin Maas在加州大学伯克利分校攻读博士期间,设计出了一种新型装置,可以将CPU从垃圾收集任务中解放出来。这种设计在4月23日发表于IEEE Micro的一篇论文中有所描述。

Maas特别指出,历来被分配垃圾收集这项任务的CPU从来不是专门为该任务而设计的。他解释道:“CPU旨在很灵活,可以运行各种应用程序。因此,它们比较庞大,耗电量相当大。”

Maas及其同事改而开发出一种紧凑的加速器单元,仅需少量的芯片面积和耗电量。它可以添加到CPU中,如同将众多现代处理器芯片集成到图形处理单元中。

Maas说:“软件应用程序在CPU上运行时,加速器单元为应用程序执行垃圾收集任务。原则上,这意味着你可以构建一个系统,软件根本不用担心垃圾收集,只管继续使用可用内存。”

值得注意的是,加速器单元收集垃圾起来比CPU的传统方式更高效。比如说,CPU要按特定顺序完成一些垃圾收集操作,而新加速器单元的特点是,这些操作不需要按顺序执行。由于同时执行大量内存操作,它在垃圾收集方面比CPU更高效。

Maas的团队将加速器与小小的CPU核心比较后发现,加速器的性能提高了18倍。在耗电量方面,他们估计加速器将垃圾收集所需的耗电量减少了15%。

将垃圾收集这项任务交给加速器单元可以提高计算机的工作效率。Maas指出,虽然CPU将10%的计算能力专门用于垃圾收集看似不多,但放眼全球,这是庞大的计算资源。

他还指出,许多垃圾收集机制可能导致不可预测的停顿,即计算机系统暂停一小段时间以清理内存。他说:“虽然你通常不会有所注意,但在你要求系统反应很灵敏的情况下,这可能是个问题,程序员不遗余力地避免这种停顿,为此常常在垃圾收集上花费更多的CPU周期。”新的加速器单元同时解决了这两个问题,为更高效的计算铺平了道路。

研究人员在论文中表示,这种新装置有望成为未来系统的一个常见部件,因而CPU不需要被垃圾收集所拖累。

原文标题:For Better Computing, Liberate CPUs From Garbage Collection,作者:Michelle Hampson

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

  1. 一次生产 CPU 100% 排查优化实践
  2. s-tui:在Linux中监控CPU温度、频率、功率和使用率的终端工具
  3. Windows 10中的CPU未全速运行
  4. 如何查看Linux下CPU、内存和交换分区的占用率?
  5. 微软出手:将根治Chrome浏览器占用CPU/内存资源过多的顽疾
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

我的运维日志系统构建之路

我的运维日志系统构建之路

数据驱动运维
共18章 | 我叫于小炳

194人订阅学习

CentOS文件服务的最佳实战

CentOS文件服务的最佳实战

涨薪跳槽必备技能
共15章 | 追风蚂蚁

90人订阅学习

小白网工宝典

小白网工宝典

一次搞定思科华为
共15章 | 思科小牛

503人订阅学习

读 书 +更多

游戏开发核心技术--剧本和角色创造

《游戏开发核心技术--剧本和角色创造》分“剧本”、“角色”和“游戏玩法”三部分,第一部分着重说明故事的历史、一般故事元素、传统故事设...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客