为什么proc / cpuinfo只在我的galaxy S4上显示4个处理器

时间:2014-06-27 02:36:39

标签: android mobile adb cpu-architecture

我有一个问题!

我已经检查了Galaxy S4上的CPU信息。 根据规格,S4具有octa芯片组:

  

芯片组:Exynos 5 Octa 5410

     

CPU:四核1.6 GHz Cortex-A15&四核1.2 GHz Cortex-A7

但是,当我通过

检查时
  

$ adb shell cat proc / cpuinfo

它显示4个处理器只有8个。我想知道为什么? 如果您有任何经验,请给我一些想法!

这是使用$ cat proc / cpuinfo

的信息
Processor       : ARMv7 Processor rev 2 (v7l)

processor       : 0

BogoMIPS        : 1590.88


processor       : 1

BogoMIPS        : 1590.88

processor       : 2

BogoMIPS        : 1590.88

processor       : 3

BogoMIPS        : 1590.88

Features        : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt

CPU implementer : 0x41

CPU architecture: 7

CPU variant     : 0x0

CPU part        : 0xc07

CPU revision    : 2

Hardware        : UNIVERSAL5410

Revision        : 000a

Serial          : b13f21814d007109

2 个答案:

答案 0 :(得分:4)

此页面高度解释了此芯片上存在多种CPU类型的原因:

Samsung Exynos 5 Octa (Exynos 5410 processor)(samsung.com)

  

它采用ARM®bigang.LITTLE™架构设计,与仅使用ARM®Cortex-A15™内核相比,在执行各种任务时可节省高达70%的能源。它可以在Cortex-A15和Cortex-A7处理器之间无缝切换,按工作负载选择最佳CPU,从而节省功耗。由于big.LITTLE架构专门设计用于正确的任务,因此可以实现这种巨大的能源效率。虽然四个“大”ARM®Cortex-A15内核可以处理计算密集型任务,例如广泛的游戏和富媒体浏览,但四个“LITTLE”ARM®Cortex-A7内核可以处理更轻的工作负载。


ARM big.LITTLE(Wikipedia.com)

本文介绍了可以配置Linux内核以使用内核的不同方法。

  

内核中切换器(CPU迁移)

     

通过内核中切换器(IKS)进行CPU迁移涉及将“大”核心与“LITTLE”核心配对,在一个芯片中可能有许多相同的核心。每对作为一个虚拟核心运行,并且一次只有一个真正的核心(完全)上电并运行。

     

big.LITTLE IKS diagram   
来源:Wikipedia

     
     

异构多处理(全局任务调度)

     

big.LITTLE最强大的使用模型是异构多处理(MP),它允许同时使用所有物理核心

     

big.LITTLE MP diagram   
来源:Wikipedia

因此,如果您在/proc/cpuinfo中只看到4个核心,那么您的内核似乎正在使用内核中切换器(IKS)配置。


这篇关于LWN的文章也很有趣。它描述了在Linux内核中实现big.LITTLE体系结构的一些细节:

A big.LITTLE scheduler update(LWN.net)

答案 1 :(得分:1)

S4没有真正的8核处理器。它有2个4核处理器,其中只有一个可以一次打开。基于CPU负载,它可以在功耗更大的1.6 GHz和耗电量更少的1.2 GHz处理器之间切换,但其中只有一个可以同时运行。