需要了解的多核CPU运行模式

 多核     CPU      运行模式主要有以下三种:

•非对称多处理(Asymmetric mul     ti   processing,AMP)——每个CPU内核运行一个独立的操作系统或同一操作系统的独立实例(instan  TI a  TI on)。

•对称多处理(Symmetric mul  TI processing,SMP)——一个操作系统的实例可以同时管理所有CPU内核,且应用并不绑定某一个内核。

•混合多处理(Bound mul  TI processing,BMP)——一个操作系统的实例可以同时管理所有CPU内核,但每个应用被     锁   定于某个指定的核心。

 需要了解的多核CPU运行模式_设计制作_RF/无线

1、非对称多处理(AMP)

AMP给开发者提供了一个与传统单核CPU系统相类似的运行环境,使得开发者已有的一系列经验和知识可以继续加以利用;同时,这也为老程序的移植提供了相当大的便利性。

AMP分为同构(homogeneous)和异构(he     te   rogeneous)。前者是指所有内核运行同一种类型和版本的操作系统,后者则是指每个内核运行不同类型或版本的操作系统(比如一个内核运行QNX Neutrino RT,而另一个内核运行     Linux   )。

在同构环境中,开发人员只要选择一个可提供分布式编程模式的操作系统,就能最大化地利用多核,允许某个内核上的应用程序透明地与另一个内核上的应用/系统服务(如设备驱动、协议堆栈)进行通信,但不会有传统IPC机制所造成的高CPU占有率。

异构环境的要求有些不同。在这种环境下,开发人员要么执行专有的通信协议,要么选择可供IPC共享相同架构(如基于IP)的两个操作系统。为了避免资源冲突,两个操作系统还需要通过一个标准机制来访问被共享的硬件。

在AMP系统中,一个进程(process)总是运行在同一个内核中,即使其他内核处于空闲状态。结果会导致一个内核要么没有被充分利用,要么被利用过度。为了解决这个问题,系统会允许应用程序在内核间动态迁移。然而,这样就需要对状系统信息进行相当复杂的检测。

2、对称多处理(SMP)

所有内核都运行同一个操作系统拷贝。由于操作系统每时每刻都监控着系统的运行状态,因此可以在多核之间分配资源,而无需应用开发人员的干预。另外,操作系统可以提供内嵌的标准化原语(pri     mi   tives),如pthread_mutex_lock、pthread_mutex_unlock、pthread_s     pi   n_lock和pthread_spin_unlock,从而让多个应用可以安全和容易地共享这些资源。

一个设计良好的SMP 操作系统允许多个应用线程协同地运行在任何一个内核上。这种协同性使得应用程序任何时候都可以利用芯片的整体计算能力。如果操作系统能提供适当的优先权和线程优先排序能力,就能帮助应用开发人员确保CPU为最需要的应用服务。

3、混合多处理(BMP)

由QNX倡导的BMP结合了SMP高级资源管理和AMP应用控制的混合功能。BMP跟SMP一样具有透明资源管理功能,不同的是,可以让开发人员将软件任务锁定在指定的内核上。

与SMP相比,BMP带来了几大优势。它允许共享同一个数据集(data set)的应用独立地运行在同一个内核上,从而消除了SMP系统中会降低性能的CACHE冲突。BMP还可以让为单核环境编写的传统程序正确地运行在多核环境,即让这些应用运行在某一个内核上。

在BMP系统中,锁定于一个内核的应用无法利用其他内核,即使其他内核处于空闲状态。

4、异步双核和同步双核的解释

同步CPU——Synchronous,Synchronism,是指各个CPU内核必须以相同频率相同电压时工作或同时休息,不能轮流工作,二级缓存共享。CPU性能得到最大发挥,但同时也带来更高的功耗。目前手机同步双核包括     三星   Exynos4210,德仪OMAP44x0,Nvidia的Tegra2等,代表有三星i9100,MOTO XT910,LG P990。

异步CPU——Asynchronism,各个CPU内核能够同时以相同或不同频率电压处理不同任务,二级缓存共享,显著降低能耗。目前异步双核手机处理器多采用了     高通   的处理器,比如高通MSM8260(代表机型是小米M1,HTC的G14,G17,G18等)、MSM8660(代表机型是小米电信定制版、三星GALAXY SII(I929)、酷派9900等)、MSM8960(代表机型华硕     Pad   Fone、三星GALAXY SIII (I535)、HTC One XC和海尔W910等)、APQ8060(代表机型三星GALAXY SII HD LTE等)等。

同步异步的区别:同步的2个CPU是一个整体,无论多少个任务指令 ,都同时合力先完成一个,然后再完成下一个,和电脑CPU相似。
异步的2个CPU可独立工作,分别完成不同的任务。在第一个CPU未达到满载状态时,第二个CPU首选执行其他任务或者空闲(不启动);只有在第一个CPU满载非常严重的情况,第二个CPU才会主动分担第一个CPU的任务。所以并不是网络上谣传的两个核心不能同时执行一个任务。



50
81
0
40

相关资讯

  1. 1、《若你安好》开播,张翰还有新剧来袭,粉丝:实力男神!686
  2. 2、当初上映被吐槽,如今都成功翻盘的5部电影,你为哪部翻案?2847
  3. 3、86版《西游记》剧组那么穷,却还包机请她一个人过来参演3分钟1356
  4. 4、《雪中悍刀行》不像武侠片,看到女性角色剧照:是在办古装选美?1777
  5. 5、新的密码创建政策,使密码在安全性和可用性之间保持平衡4056
  6. 6、比好笑更难的是讽刺,《西虹市首富》不愧是开心麻花的最强阵容4963
  7. 7、软考成绩有效期是多久?系统集成项目管理工程师证书过期了怎么办?3311
  8. 8、米家加湿器99元首发多款智能家庭产品亮相米粉节97
  9. 9、软考怎么样?好考吗?3441
  10. 10、PMP认证有用吗?产品经理为什么都需要考PMP?4099
全部评论(0)
我也有话说
0
收藏
点赞
顶部