Linux的vmalloc通过5.2内核更改看到“巨大的性能优势”

栏目: 服务器 · Linux · 发布时间: 6年前

在排队等待 Linux 5.2的所有更改中,最重要的是vmalloc代码在最后一刻的性能改进。

Linux内核的vmalloc代码有潜力在Linux 5.2上运行得更快,特别是在嵌入式设备上。Vmalloc用于在虚拟地址空间中分配连续内存,在Linux 5.2 合并窗口的最后一天,我们看到了一个很好的优化。

作为几分钟前Linux内核维护人Andrew Morton pull merged的一部分,“对vmalloc的巨大更改,带来了巨大的性能优势。”

对vmalloc代码的主要更改是跟踪分配的空闲块。

目前,新VA区域的分配是通过繁忙列表迭代来完成的,直到在两个繁忙区域之间找到合适的漏洞为止。因此,每次新的分配都会导致列表增长。由于长列表和不同的允许参数,在嵌入式设备上分配可能会花费很长时间(毫秒)。

这个补丁将vmalloc内存布局组织到VMALLOC_START-VMALLOC_END范围的空闲区域。它使用一个红黑树,将块按其偏移量进行排序,并将链表按地址的增加顺序保留空闲空间。

使用Uladzislau Rezki提供的这个补丁,调用vmalloc()所花费的时间比Linux 5.1和之前版本少67%,至少在QEMU下开发人员进行了测试。

Linux 5.2将成为一个非常激动人心的内核版本。Linux 5.2-rc1将于今天发布,而稳定的内核将于7月发布。

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-05/158763.htm


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java Servlet&JSP经典实例

Java Servlet&JSP经典实例

(美)佩里 / 朱涛江、邹红霞、林琪 / 中国电力出版社 / 2005-7 / 86.00元

本书将用于帮助指导Java web开发人员的日常任务,提供典型的web相关问题的快速解决方案。本书集中介绍了如何用Java初始化某些与web相关的任务,而不是教会读者如何使用Java语言,或者事无巨细地解释servlet和JSP API。书中包含了大量关于复杂的日常开发任务的技巧,这些技巧涵盖了许多与Servlet 2.4和JSP 2.0规范相关联的新特性,包括ServletRequestList......一起来看看 《Java Servlet&JSP经典实例》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具