我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:六合特码 > 多处理器调度 >

现实世界是怎样的?八核CPU调度机制浅谈

归档日期:05-01       文本归类:多处理器调度      文章编辑:爱尚语录

  作为首款八核心CPU处理器的Exynos 5410问世至今已经两年有余,“大小核”架构随后的快速普及形成了如今用于移动终端的处理器CPU部分普遍为6~10核心、未来甚至有20核心的局面;至于个中原因也不难理解,相比研发新的微架构带来的处理器性能提升,增加核数显然更加简单有效。

  尽管八核CPU处理器带来的性能已经强大到无以复加,可真实世界到底能够用到多少一直是一个被广泛讨论的问题,一起来看看AnandTech关于最新的Exynos7420核心调度机制的研究。

  这里测试了几种常见的现实状况,比如网页载入与滚动、应用载入、视频拍摄以及游戏过程;每个过程的图一代表每个CPU核心的活跃状态,绿色表示正在工作,红色表示空载休眠;图二代表整个CPU集群的运行频率分布;图三代表每个核心负载的线程数。

  由于big.LITTLE的八个核心被分为两个集群——四小核心集群与四大核心集群,因此该实验也是基于对于小核集群与大核集群的分别讨论。

  小核心在载入网页的过程中并没有分到多少线秒左右网页载入完成,进入滚动状态后,线程开始切换至小核心,小核心集群的使用率达到了70~80%。

  而大核心集群主要是在网页载入也就是前6秒的过程当中工作,当网页载入完成之后,留给大核心的仅有1个线程。不过从各个核心的状态来看,没有分到线程的大核心也并没有停止工作。从频率分布上看,整个过程前半段网页渲染大核心集群运行频率在1300~1500MHz左右,后半段网页滚动运行在1200MHz左右。

  反观四个大核心在该过程基本是空驶状态,平均也仅有1个线程交给大核心集群,整体运行频率也并不高。

  大核心一边,自始至终CPU6这颗核心一直在运行一个重负载进程,从第一张图也可以看出它一直处在活跃状态;而4秒过后任务从小核心集群迁移过来之后,其他三颗核心也投入到工作当中。

  总的来看,利用Chrome载入AnandTech首页这一过程,Chrome大部分时间用到了4~5颗核心,而峰值状态用到了多达8颗核心。

  整个Hangouts载入过程仅有短短的3.6秒时间,从小核心集群的使用来看可以看到一个很快的从基本空载到启动的过程。

  大核心集群的状态则与之相反,Hangouts的启动之初线程分配主要在大核心,运行频率达到接近峰值的1.8GHz,并且四个核心全部工作;短暂的2秒钟之后,载入工作完成,任务被转移到小核心集群。

  总的来看,Hangouts看起来是为四核心CPU而优化,整个载入过程仅有平均四个线程分配到CPU。

  利用Hangouts聊天的过程,小核心集群的工作状态转换十分频繁,但总的可以理解为四个小核心都在以中水平的负载持续工作,而四个小核心的运行频率变换一样十分频繁。

  大核心集群在用Hangouts聊天的过程中基本没有工作。可以理解这样的轻度使用是理应完全不需要用到大核心的。

  由于负载较大,视频拍摄的过程对于小核心集群的利用程度非常之高,至少有四个对于小核心来说是重负载的线程分配给小核心,因此四个小核从始至终参与工作,并且一直维持在1.3GHz的高频。

  而该过程大核心集群的工作并不复杂,整体也一直维持在800MHz左右的低频,从第三张图来看虽然整个过程有三个大核心比较积极,但都是一些对其来说负载不高的线页:线 CPU调度

  大核一边,比较明显的是仅有一个线程被分配到了一颗大核,也就是CPU6,其他核心则非常偶尔的切入进行一些扫尾工作;从频率来看大核也经历了1.7GHz、1.6GHz到900MHz的发热降频过程。

  不过降频并不是唯一的解决办法,在另一个《现代战争5》游戏的测试过程当中,就出现了任务从一颗大核心切换到另一颗大核心的变化。

  从几个常用场景的CPU调度状况来看,大小核的设计是目前来说应用还算合理的状态;在以往双核甚至四核堆砌的基础上,“大小核”的优势主要体现在四小核维持日常工作的同时,对于突发的重负载任务会有高性能的大核切入来保证工作,而有效的电源管理也能够使其在结束工作后空载来省电。不过目前来看也有不少应用对于八核心的利用程度并不高。

本文链接:http://ticketsareus.net/duochuliqidiaodu/276.html