当前位置: 首页 > 科技观察

要想提高计算性能,就必须将CPU从垃圾回收机制中解放出来!_0

时间:2023-03-19 14:43:15 科技观察

[.com速译]你可能没有注意到,你的电脑在后台拼命整理它的记忆系统。除了许多任务之外,CPU还执行一项称为“垃圾收集”的操作:识别并删除应用程序中冗余或不相关的数据,释放额外的内存空间。垃圾收集旨在让程序员不必手动处理这些不必要的数据,但CPU负责的自动化过程会占用大量计算能力,占CPU花在应用程序上的总时间的10%或更多。在加州大学伯克利分校攻读博士学位期间,MartinMaas(现在在谷歌工作)设计了一种新颖的设备,可以从垃圾收集中卸载CPU。该设计在4月23日发表在IEEEMicro上的一篇论文中有所描述。Maas特别指出,历史上被分配垃圾收集任务的CPU从未设计用于该任务。“CPU的设计非常灵活,可以运行各种应用程序。因此,它们相对较大并且消耗相当大的功率,”他解释道。相反,Maas及其同事开发了一种紧凑型加速器单元,它只需要少量的芯片面积和功耗。它可以像许多现代处理器芯片集成到图形处理单元中一样添加到CPU中。“当软件应用程序在CPU上运行时,加速器单元会为应用程序执行垃圾收集,”Maas说。“原则上,这意味着你可以构建一个系统,在这个系统中,软件根本不必担心垃圾收集,只需继续使用可用内存即可。”值得注意的是,加速器单元在垃圾收集方面比CPU的传统方法更有效。例如,CPU按照特定的顺序完成一些垃圾收集操作,但新的加速器单元具有不需要按顺序执行的操作。由于同时执行的大量内存操作,它在垃圾回收方面比CPU更高效。Maas的团队将加速器与小CPU内核进行了比较,发现加速器的性能提高了18倍。在功耗方面,他们估计加速器将垃圾收集所需的功耗降低了15%。将垃圾收集任务卸载到加速器单元可提高计算机的工作效率。Maas指出,虽然一个CPU将其10%的计算能力用于垃圾收集可能看起来并不多,但它在全球范围内都是一个巨大的计算资源。他还指出,许多垃圾收集机制会导致不可预测的暂停,即计算机系统暂停一小段时间以清理内存。“虽然你通常不会注意到它,但在你需要系统快速响应的情况下,它可能会成为一个问题,并且程序员会竭尽全力避免这些停顿,通常会花费更多时间在垃圾收集上,”他说。CPU周期。“新的加速器单元同时解决了这两个问题,为更高效的计算铺平了道路。这种新设备有望成为未来系统的通用组件,这样CPU就不需要进行垃圾回收了,”研究人员在报告中说。纸。原标题:ForBetterComputing,LiberateCPUsFromGarbageCollection,作者:MichelleHampson