欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

余承东提到的“确定时延引擎”:华为数百位专家研发2年

程序员文章站 2023-11-08 11:14:34
华为今日举行mate 30系列发布会,在emui系统层面,在讲到软件性能优化时,华为消费者业务ceo余承东提到emui 10搭载了新一代gpu turbo,以及另一个新...

华为今日举行mate 30系列发布会,在emui系统层面,在讲到软件性能优化时,华为消费者业务ceo余承东提到emui 10搭载了新一代gpu turbo,以及另一个新技术——“确定时延引擎”。

据余承东介绍:“拥有确定时延引擎的emui 10,在平均响应时延和性能波动方面均有所改善,完成时延降低31%,时延波动率降低55%。无论在哪种场景下,用户体验流畅性始终如一。 ”

究竟什么是“确定时延引擎”?这要从安卓资源调度策略说起。

安卓系统源于linux,安卓资源调度也根植于linux内核。手机相对于pc,并不充裕的资源以及更加复杂多变的使用场景,使得源于linux的资源调度策略越来越力不从心,安卓手机遭遇莫名卡顿也是常有的事。

要想改变这一现状,要从cpu调度、内存调度、io这三个方面下手,撬动linux内核。

据介绍,华为此次推出的确定时延引擎,具备vip优先调度、优先级矫正、预留服务三项技术。

vip优先调度类似银行的vip通道,让本应该优先的进程可以绕过队列,保障执行效率。不仅如此,华为还对网络协议栈进行了改造,针对低优先级的部分网络业务进行协议上的限流。在网络带宽一定的情况下,尽可能保障“前台”业务的io请求。

优先级矫正则是如果一个高优先级的任务依赖于低优先级的任务,就需要将低优先级任务提前。确定时延引擎首先是对相关数据结构重新设计,赋予了cpu和io调度器业务感知能力,能够精确知道哪些线程在哪些时间段是跟用户操作真正相关的。

预留服务则是,智慧前台调度既可以保证“前台”任务请求内存优先分配,减少进入慢速路径的次数,又可以在高负载情况下缓解内存抖动现象。

据悉,为了这项技术,华为投入数百位技术专家,耗时近2年研发而成。按照华为的说法,它可以将响应时延降低25.7%,时延波动率降低55.6%。

在emui上,华为目前已经陆续推出了gpu turbo、erofs超级文件系统、方舟编译器以及确定时延引擎等针对系统内核进行的改动。