多处理器内核的三种设计方案
时间:2023-09-29 10:36来源: 作者: 点击: 次三种模式
1. 平面模式
第一种模式是平面模式(Planar Pattern),这个名称源于划分一个通信系统的处理任务的“控制平面”和“数据平面”。它是一个广泛的和不同类型的多内核设计实例,这种多内核设计统称为非对称多处理技术(简称“AMP”或“ASMP”)。
如果采用平面模式,系统需要划分成具有显著不同处理要求的多个自包含模块。在其标准的通信和媒体处理形式中,该模式的优点是在一个专用的DSP或网络上运行需要进行大量数据处理的算法,同时在一个通用的CPU上保持其它系统软件的正常运行。这种特殊性意味着平面模式系统通常在专门构件的硬件上实现。由于许多平面硬件设备仅有一个通用CPU内核,因此传统的单内核工具、操作系统和设计方法都可用来设计和调试系统的通用部分。
2. 片上栅格模式
片上栅格(Grid-on-Chip,或简称“栅格”)模式是平面模式的演绎,包含由许多完全独立的和网络互连的节点组成的任意多系统。栅格是办公计算机网络的片上版本,它是共享相邻物理链路但彼此独立的许多网络处理节点。一些文献将该类型系统称之为分布式多处理系统,且仍将其归类到AMP/ASMP系统总类别当中。
使用栅格模式的关键要求是首先要分割系统,然后找到一个合适的节点间通信系统。(尽管更高级的栅格系统能够在运行期间对其自身进行重新配置,但栅格模式系统的设计者需要认真思考系统功能到处理节点的分配问题。)除分割之外,栅格系统具有三种设计模式中最少的高级设计约束。一旦系统被分割,每个独立节点的设计与实现就会如同一个独立系统一样进行。栅格系统可在专用硬件上实现,但另一个普遍的选择是通过采用SMP硬件以及将共享的存储空间划分成针对每个内核的片段来建立栅格节点。
栅格模式系统与其它设计相比具有几个突出的优点。首先,它们可以很容易与过去的软件整合在一起,过去的系统甚至可以在栅格范围内它们自己的节点上继续完整地运行。此外,栅格系统在判决能力(determinism)和调试能力方面具有明显的优势。栅格模式系统设计的松散联结意味着在资源竞争方面不会有多少意外情况,由于熟悉的单内核调试方法可以用于每个孤立的系统节点,所以调试相对简单。栅格模式系统的分割特性使其更为强大,但这也是其缺陷的根源所在,因为分割使得它难于再分配资源,这将导致栅格系统在适应将来的和不可预期的要求方面缺乏灵活性。
图1:针对图像处理的平面模式。
图2:栅格模式系统。
3. SMP模式
在一个对称多处理(简称“SMP”)系统中,单一映像(single-image)操作系统是运行在两个或多个共享存储空间的处理内核的顶层,这些内核实质上是相同的。正如一台多内核桌面计算机一样,SMP模式系统可以在一个处理器内核组基础上动态地均衡任务。重新分配处理能力以匹配当前任务的这种能力是SMP系统的一大主要优点,这也使得SMP系统成为了三种模式中最灵活和适应性最强的模式。利用当今SMP实时操作系统,这种灵活性可以不需要在牺牲任何性能的条件下实现判决或实时响应。
图3:SMP系统实例。