什么是MUP(Multi Uni处理器)?

时间:2016-07-07 14:12:14

标签: scheduler processor rtai

MUP(Multi Uni处理器)是否与多核处理器相同,或者它们是否有单独的CPU进行通信?我觉得AMP仍然不同。有人可以澄清一下吗? 在阅读有关RTAI(实时扩展到Linux)调度程序时遇到这个..请检查链接,最好是第一行和相关的最后一段...  https://www.rtai.org/userfiles/documentation/magma/html/api/sched_overview.html

1 个答案:

答案 0 :(得分:1)

这是RTAI(http://en.wikipedia.org/wiki/RTAIhttps://www.rtai.org/)特定术语,用于指定三种调度程序类型之一。它们在2003年的论文https://www.rtai.org/userfiles/documentation/documents/motioncontrol2003.pdf

中定义

" Linux实时应用程序接口(RTAI)采用低成本高性能运动控制"

  

RTAI提供三种调度程序:单处理器(UP),针对单处理器机器进行了优化;用于对称多处理器应用的对称多处理器(SMP)和多单处理器(MUP)。 SMP调度程序使用RTAI适当的内核任务在内核空间应用程序中提供灵活性和效率之间的最佳折衷,因为它可以在任何CPU上调度任何就绪任务,同时允许选择性地强制选定的任务在特定的CPU或CPU集群上运行。 MUP调度程序强制要求任何任务从其创建中分配给特定CPU,并且可以实现更好的性能,因为它可以更有效地利用内存缓存。 ...    任何调度程序的使用都没有限制,实时任务可以在没有任何约束的情况下进行交互,而不管它们运行的​​CPU是什么。 SMP和MUP调度程序也可以与单处理器一起使用。

所以," UP"调度程序只能使用单核处理器。 " SMP"调度程序可以使用多个核心(或CPU群集 - NUMA中的物理处理器)来计划任务,并可以将任务从一个核心重新映射到另一个核心。并且" MUP"调度程序可以使用多个核心,但不会将任务从一个核心移动到另一个核心。任务将始终将其数据与MUP一起放在最近的缓存中,这与" SMP"当任务可能远离其缓存数据时。

MUP调度程序中不共享某些资源,这对于在一台计算机上组合多个实时任务非常有用。 MUP每个CPU使用一个计时器(并且SMP具有公共计时器?):

  

同样重要的是要注意,MUP调度程序使用独立的每个CPU计时器,并且每个计时器可以独立于任何其他计时器运行,因此计时器   操作模式可以自由分配,例如,可以有定期和单触发定时器,定期定时器不需要在同一时间运行。

www.cs.ucf.edu/~lboloni/Teaching/EEL6897_2007/presentations/ZubairIlhan_RTAI.ppt

  

SMP& MUP Scheduler

     
      
  • SMP可以将任务安排到多个CPU。可以在特定CPU上处理不同程度的附加服务。
  •   
  • SMP调度程序仍然是优先驱动的调度程序。
  •   
  • MUP调度程序将多处理器计算机视为许多单处理器的集合。每个CPU的定时器编程都不同。
  •   
  • 使用MPU,CPU可以在周期模式下运行,而另一个在单次模式下运行。
  •