多核处理器系统、控制程序以及控制方法技术方案

技术编号:8327658 阅读:135 留言:0更新日期:2013-02-14 13:37
本发明专利技术涉及多核处理器系统、控制程序以及控制方法。其中,OS(141)从多核处理器计算分配到各CPU的任务的指令代码大小的合计值,确定与储存有执行代码(502)的主CPU(101)相比计算结果小的CPU。确定协CPU(103)。监测控制器(105)将执行代码(502)从协CPU(103)的指令高速缓存(111)移动到协CPU(103)的指令高速缓存(113)。OS(143)在将执行代码(502)移动到协CPU(103)的指令高速缓存(113)后,将指令高速缓存(113)中储存了执行代码的区域设定为写入禁止区域,从而使执行代码(502)常驻于指令高速缓存(113)。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及控制任务的分配的多核处理器系统、控制程序以及控制方法
技术介绍
以往,CPU(Central Processing Unit:中央处理器)具有高速缓存,在高速缓存中储存有使用频度高的数据、执行频度高的程序的执行代码(例如,参照下述专利文献1)。所谓使用频度高的数据例如是指在执行中的程序内被多次参照的数据。所谓的执行频度高的程序是指例如每隔一定时间执行的多个步骤的程序(以下,称为“周期执行程序”)。另外,公知有在多核处理器系统中,在执行被中断的任务被再次执行的情况下,在与中断前执行的CPU相同的CPU中调度该任务的技术(例如,参照下述专利文献2)。由此,能够减少高速缓存未命中。并且,公知有在具有本地存储器的多核处理器系统中,基于本地存储器的有效活用程度确定在哪个本地存储器上捆绑哪个任务的技术(例如,参照下述专利文献3)。由此,能够防止数据转送引起的系统开销的增加。专利文献1:日本特开2004-192403号公报专利文献2:日本特开平08-30562号公报专利文献3:日本特开平04-338837号公报但若数据加载增加,则很多储存在高速缓存的数据、程序的执行代码被移出。例如,在不具有本地存储器的多核处理器系统中,在较多进行I/O(Input/Output:输入/输出)处理的任务被分配到一个CPU的情况下,来自共享存储器的数据加载增加。另外,若一个CPU执行多个任务,则储存在指令高速缓存的指令被频繁移出。在向与分配了指令代码大小较大的任务的CPU、执行多个任务的CPU相同的CPU分配了周期执行程序的情况下,存在周期执行程序的执行代码被从高速缓存移出的概率增加这样的问题点。即、存在CPU将周期执行程序的执行代码从共享存储器向高速缓存再次加载的次数增加的问题点。另外,由于CPU从共享存储器读出该执行代码的时间比该CPU从高速缓存读出执行代码的时间长,所以在该CPU不将该执行代码再次加载到高速缓存而执行的情况下,存在系统开销增加的问题点。因此,例如,通过锁定储存有周期执行程序的执行代码的高速缓存的区域,能够使该执行代码不被从高速缓存移出。但若分配到执行该周期执行程序的CPU的其它任务是高速缓存未命中较大的任务,则由于能够由该其它的任务使用的高速缓存的区域减少,因此该其它的任务的高速缓存未命中增大。其结果,存在CPU的性能降低这样的问题点。
技术实现思路
为了消除上述现有技术的问题点,本专利技术的目的在于提供能够不使特定的程序从高速缓存移出,从而能够减小对被分配到与周期执行程序相同的CPU的任务的执行带来的影响的多核处理器系统、控制程序以及控制方法。根据本专利技术的一个观点,提供具备以下单元的多核处理器系统:确定单元,其基于分配到各核的任务的信息量,从多核处理器中确定出与将特定的程序储存到高速缓存的一个核相比高速缓存未命中率低的其它核;移动单元,其将上述特定的程序从上述一个核的高速缓存移动到通过上述确定单元确定出的其它核的高速缓存;设定单元,其在通过上述移动单元将上述特定的程序移动到了上述其它核的高速缓存后,将上述其它核的高速缓存中储存了上述特定的程序的区域设定为写入禁止区域。根据本多核处理器系统、控制程序、以及控制方法,实现了能够使特定的程序不从高速缓存移出,使对分配到与周期执行程序相同的CPU的任务的执行的影响减小的效果。附图说明图1是表示多核处理器系统的硬件的框图。图2是表示大小表152的一个例子的说明图。图3是表示识别信息153的一个例子的说明图。图4是多核处理器系统100的功能框图。图5是表示锁定加载了周期执行程序的执行代码502的区域的例子的说明图。图6是表示执行周期执行程序的例子的说明图。图7是表示不是周期执行程序的任务的分配的说明图。图8是表示指令代码大小的合计值的计算例的说明图。图9是表示执行代码502的移动例的说明图。图10是表示使储存有执行代码502的区域锁定的例子的说明图。图11是表示OS141的控制处理顺序的流程图(其1)。图12是表示OS141的控制处理顺序的流程图(其2)。图13是表示基于监测控制器105的移动处理的流程图。图14是表示基于下一个指定目标CPU的写入禁止设定处理的流程图。图15是表示基于当前指定目标CPU的暂时停止处理的流程图。具体实施方式以下对本多核处理器系统、控制程序以及控制方法的优选实施方式进行详细说明。首先,此处,对上述的周期执行程序进行说明。周期执行程序是每隔一定时间执行的程序,并且不是通过其它的事件起动的程序。在一般的任务中执行的定时和执行时间不确定,但在周期执行程序中执行的定时和执行时间没有变化。作为周期执行程序例如举出移动电话的通信待接程序。无论移动电话正在进行何种任务处理,移动电话的通信待接程序都定期地向基站询问通信来检测通信。另外,在本实施方式的多核处理器系统中,所谓的多核处理器是指安装了多个核的处理器。若安装多个核,则可以是安装了多个核的单一的处理器,也可以是单核处理器并行处理的处理器组。此外,在本实施方式中,为了使说明简单化,以单核处理器并行处理的处理器组为例进行说明。多核处理器系统的硬件图1是表示多核处理器系统的硬件的框图。在图1中,多核处理器系统100具有:主CPU101、协CPU102~协CPU104、共享存储器107、和监测控制器105。另外,各CPU和共享存储器107分别经由总线106连接。各CPU和监测控制器105分别经由与总线106不同的总线连接。此处,在主CPU101和协CPU102~协CPU104中,例如分别具有核、寄存器和高速缓存。主CPU101执行OS(Operating System:操作系统),管理多核处理器系统100的整体的控制。OS141具有对将软件的各进程分配到哪个CPU进行控制的控制程序,具有对分配到主CPU101的任务的切换进行控制的功能。协CPU102~协CPU104分别执行OS142~OS144。OS142~OS144具有对分配到各CPU的任务的切换进行控制的功能。各CPU的高速缓存具有指令高速缓存和数据高速缓存的两种高速缓存。指令高速缓存是保持程序的高速缓存,数据高速缓存是对程序执行中使用的数据进行保持的高速缓存。主CPU101作为高速缓存具有指令高速缓存111和数据高速缓存121,协CP本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种多核处理器系统,其特征在于,具备:
确定单元,其基于分配给各核的任务的信息量,来从多核处理器中
确定与将特定的程序储存到高速缓存的一个核相比高速缓存未命中率
较低的其它核;
移动单元,其将所述特定的程序从所述一个核的高速缓存移动到由
所述确定单元确定出的其它核的高速缓存;和
设定单元,在由所述移动单元将所述特定的程序移动到所述其它核
的高速缓存后,该设定单元将所述其它核的高速缓存中储存了所述特定
的程序的区域设定为写入禁止区域。
2.一种控制程序,其特征在于,使能够访问如下控制电路、即若
接受移动目标核的高速缓存、移动源核的高速缓存、和移动对象程序的
移动通知,则将所述移动对象程序从该移动目标核的高速缓存移动到该
移动源核的高速缓存的控制电路的多核处理器执行如下步骤:
确定步骤,基于分配给各核的任务的信息量,来从所述多核处理器
中确定与将特定的程序储存到高速缓存的一个核相比高速缓存未命中
率较低的其它核;
移动处理步骤,使所述控制电路将所述特定的程序从所述一个核...

【专利技术属性】
技术研发人员:栗原康志山下浩一郎山内宏真
申请(专利权)人:富士通株式会社
类型:
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1