(57)【要約】【課題】本発明の目的は、温度センサや消費電力測定用のデバイスを必要とすることなく、プロセッサの温度の上昇を抑えることのできる、マルチプロセッサシステムのタスク処理方法を提供することにある。【解決手段】タスク処理が割り当てられる複数のプロセッサを備えたマルチプロセッサシステムのタスク処理方法であって、同一のタスクを前記複数のプロセッサに順番に繰り返し割り当てることを特徴とする。【選択図】図３
2013025541.tif 000002
【特許請求の範囲】
【請求項１】
タスクが割り当てられる複数のプロセッサを備えたマルチプロセッサシステムのタスク処理方法であって、
同一のタスクを前記複数のプロセッサに順番に繰り返し割り当てることを特徴とする、マルチプロセッサシステムのタスク処理方法。
【請求項２】
前記複数のプロセッサの各々は、複数のプロセッサコアを備え、
各プロセッサ内で同一のタスクを前記複数のプロセッサコアに順番に繰り返し割り当てる、請求項１に記載のマルチプロセッサシステムのタスク処理方法。
【請求項３】
１以上のタスクからなる１以上のパターンを前記プロセッサに順番に繰り返し割り当てる、請求項１又は２に記載のマルチプロセッサシステムのタスク処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチプロセッサシステムのタスク処理方法に関する。
【背景技術】
【０００２】
従来、ＣＰＵやＤＳＰなどの複数のプロセッサを同時に使用して、システム全体の処理能力を向上させた、マルチプロセッサシステムが用いられている。
このようなマルチプロセッサシステムでは、複数のプロセッサでタスクを分担して実行することにより、単一のプロセッサだけでは得られないような高い処理性能を実現することができる。
また、一のプロセッサに障害が発生しても、他のプロセッサでタスクを受け継いで実行することができるため、信頼性を向上させたシステムを実現することができる。
【０００３】
図１は、かようなマルチプロセッサシステムの概略構成の一例を示すブロック図である。
図１に示すマルチプロセッサシステムは、１台のＣＰＵと、３台のＤＳＰ（ＤＳＰ１、ＤＳＰ２、ＤＳＰ３）とを備え、これらは互いに接続されている。
ここで、３台のＤＳＰは、デュアルコアプロセッサであり、それぞれプロセッサコアを２つずつ有している。
【０００４】
図１に示すマルチプロセッサシステムにおいて、ＤＳＰにタスクを実行させる場合には、図２に示すように、プロセッサコアごとに、一の特定の種類のタスクを割り当て、割り当てたタスクの処理を所定の単位時間ごとに繰り返し行う、ループ処理を行うのが一般的である。
【０００５】
図２に示す例では、例えばコア１にはタスクＡが割り当てられており、所定の単位時間ごとに１回目のタスク処理、２回目のタスク処理、と繰り返しタスク処理を行うものであり、コア２〜５についても同様である。
なお、コア６には、タスクが割り当てられていないため、コア６はタスク処理を行わない。
【０００６】
しかし、タスクの種類によって、単位時間内における、タスク処理実行時間に差がある。すなわち、図２に示す例では、タスクＢの実行時間が最も長く、次いで、タスクＡの実行時間が長く、次にタスクＣの実行時間が長く、タスクＤ，Ｅは他のタスクと比べて実行時間が短い。
【０００７】
従って、上記のようなタスク割り当てをした場合、この単位時間内でのタスク実行時間の差異に起因して、タスク処理によるプロセッサコアの温度上昇量に差異が生じる。
図２に示す例では、タスクＡの処理では、所定の時間経過後にプロセッサコアが１５℃上昇し、同様にタスクＢの処理では２０℃、タスクＣの処理では１０℃、タスクＤ、Ｅの処理では５℃プロセッサコアの温度が上昇する。
【０００８】
従って、以下の表１に示すように、２つのプロセッサコアの温度上昇量の和で表す、ＤＳＰの温度上昇量にも差異が生じてしまう。
このように、上記のタスク割り当てによるタスク処理では、特定のプロセッサの温度上昇が大きくなり、プロセッサに機能異常や故障が発生してしまう場合があった。
【０００９】
【表１】
2013025541.tif 000003
【００１０】
これに対し、プロセッサの温度上昇による機能障害や故障を防止するため、温度センサや消費電力測定により、所定の閾値を超えた場合に温度を下げる対策がとられていた。
例えば、温度センサにより測定された温度が所定の閾値を超えた場合に、空調を調整して温度を下げる方法や、タスクを再スケジュールする方法や、プロセッサのクロックの動作周波数を下げて消費電力を抑える方法が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００８−２６５３１３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、上記の技術では、プロセッサの温度やその指標となる消費電力を測定するために、温度センサや消費電力測定用デバイスが必要となり、コストが増加するという問題があった。
【００１３】
また、プロセッサの温度や消費電力を常時測定することにより、システムのパフォーマンスが低下する原因となるという問題もあった。
【００１４】
本発明の目的は、温度センサや消費電力測定用のデバイスを必要とすることなく、プロセッサの温度の上昇を抑えることのできる、マルチプロセッサシステムのタスク処理方法を提供することにある。
【課題を解決するための手段】
【００１５】
本発明の方法は、上記の課題を解決しようとするものであり、タスク処理が割り当てられる複数のプロセッサを備えたマルチプロセッサシステムのタスク処理方法であって、同一のタスクを前記複数のプロセッサに順番に繰り返し割り当てるものである。
【００１６】
本発明の好適一実施形態では、前記複数のプロセッサは、複数のプロセッサコアを備え、各プロセッサ内で同一のタスクを前記複数のプロセッサコアに順番に繰り返し割り当てる。
【００１７】
本発明の別の好適実施形態では、１以上のタスクからなる１以上のパターンを前記プロセッサに順番に繰り返し割り当てる。
【発明の効果】
【００１８】
本発明によれば、温度センサや消費電力測定用のデバイスを必要とすることなく、プロセッサの温度の上昇を抑えることができる。
【図面の簡単な説明】
【００１９】
【図１】マルチプロセッサシステムの概略構成の一例を示すブロック図である。
【図２】プロセッサコアへのタスク割り当ての一例を示す図である。
【図３】本発明の一実施形態に係るタスク処理方法におけるタスク割り当ての一例を示す図である。
【図４】図３に示すタスク割り当ての概略説明図である。
【発明を実施するための形態】
【００２０】
以下、図面を参照して、本実施形態について詳細に説明する。
図１に示すマルチプロセッサシステムを用いて、本実施形態のマルチプロセッサシステムのタスク処理方法について説明する。
【００２１】
図３に示すように、本実施形態では、各プロセッサが有する２つのプロセッサコアに対応させて、タスクＡ〜Ｅからなる２つのパターンＡ、Ｂを作成する。
そして、図３、４に示すように、各ＤＳＰでこれらのパターンＡ、Ｂを交互にループ処理する。
【００２２】
ここで、図３に示す例では、パターンＡは、一のプロセッサコアに割り当てるサブパターンａと、他のプロセッサコアに割り当てるサブパターンｂとからなり、一方で、パターンＢは、サブパターンａが上記他のプロセッサコアに割り当てられ、サブパターンｂが上記一のプロセッサに割り当てられるように構成されている。
【００２３】
この方法によれば、図３に示すように、同一のタスクが、図１に示すマルチプロセッサシステムのコア１〜６に、所定の単位時間ごとに順番に繰り返し割り当てられることとなる。すなわち、例えば、タスクＡは、１回目の単位時間において、ＤＳＰ１のコア１に割り当てられ、２回目の単位時間においては、ＤＳＰ２のコア３に割り当てられ、３回目の単位時間においてはＤＳＰ３のコア５に割り当てられている。４回目の単位時間においては、タスクＡはＤＳＰ１のコア２に割り当てられ、以降同様に繰り返されている。
【００２４】
タスクＢ、Ｃ、Ｄ、ＥについてもタスクＡと同様であり、所定の単位時間ごとに異なるプロセッサコアに順番に繰り返し割り当てている。
【００２５】
従って、本実施形態では、タスクＡ〜Ｅが、ＤＳＰ間及びプロセッサコア間で均等に割り当てられる。
これにより、各ＤＳＰでのタスク処理によるＤＳＰの温度上昇量が均一となるため、特定のプロセッサの温度が大きく上昇することを回避することができる。
従って、特別なデバイス等の必要なく、プロセッサに機能異常や故障が発生するのを抑制することができる。
また、タスク処理によるプロセッサコア間の温度上昇量も均一化されるため、プロセッサコア単位での機能異常や故障の発生も抑制することができる。
【００２６】
さらに、図３、４に示すように、タスクＡ〜Ｅからなるパターンを作成し、このパターン単位での繰り返し処理を行うため、タスクをスケジュールし直すことなく、ループ処理で各タスクを実行することができる。
【００２７】
なお、本発明は、上記実施形態に限定されるものではなく、発明の趣旨を逸脱しない範囲で種々変更可能である。例えば、本実施形態は、全てのＤＳＰが２つのプロセッサコアを有している場合を示しているが、ＤＳＰが有するコアの数は異なっていてもよく、プロセッサ間で同一のタスクの割り当てが均等になっていれば良い。
【図１】
2013025541.tif 000004
【図２】
2013025541.tif 000005
【図３】
2013025541.tif 000006
【図４】
2013025541.tif 000007