JP2014164635A - Resource management device, resource management method and program - Google Patents
Resource management device, resource management method and program Download PDFInfo
- Publication number
- JP2014164635A JP2014164635A JP2013036673A JP2013036673A JP2014164635A JP 2014164635 A JP2014164635 A JP 2014164635A JP 2013036673 A JP2013036673 A JP 2013036673A JP 2013036673 A JP2013036673 A JP 2013036673A JP 2014164635 A JP2014164635 A JP 2014164635A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- general
- dedicated
- execution
- resource management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、マルチプロセッサシステムにおいてプロセッサリソースを管理するための、リソース管理装置及びリソースの管理方法に関し、更には、これらを実現するためのプログラムに関する。 The present invention relates to a resource management apparatus and a resource management method for managing processor resources in a multiprocessor system, and further to a program for realizing them.
近年、コンピュータシステムにおける処理性能の向上を図るため、複数のプロセッサを備えるマルチプロセッサシステムが利用されている。また、マルチプロセッサシステムとしては、対等で対象的な汎用プロセッサのみを備えるシステムと、汎用のプロセッサに加えて特定のプロセスのみを実行する専用プロセッサも備えるシステムとが知られている。前者は、SMP(Symmetric Multiple Processor)システムと呼ばれ、後者は、ASMP(Asymmetric Multi-Processor)システムと呼ばれている。 In recent years, a multiprocessor system including a plurality of processors has been used in order to improve processing performance in a computer system. As multiprocessor systems, there are known a system including only a target general-purpose processor that is equivalent, and a system including a dedicated processor that executes only a specific process in addition to the general-purpose processor. The former is called an SMP (Symmetric Multiple Processor) system, and the latter is called an ASMP (Asymmetric Multi-Processor) system.
また、上記の2種類のマルチプロセッサシステムのうち、ASMPシステムは、SMPシステムに比べて、システム設計を容易なものとできることから、近年利用が増加している。 Of the two types of multiprocessor systems described above, the ASMP system has been increasingly used in recent years because the system design can be made easier than the SMP system.
例えば、特許文献1は、ASMPシステムを開示している。特許文献1に開示されたASMPシステムでは、専用プロセッサは特定のプロセスを実行し、汎用プロセッサは特定のプロセスを除く汎用プロセスを実行する。
For example,
また、特許文献2も、ASMPシステムを開示している。特許文献2に開示されたASMPシステムでは、要求されたデッドラインまでに処理を完了するため、専用プロセッサでの処理を実行する前に、専用プロセッサではデッドラインを守れるかどうかが判定され、判定結果に基づいたスケジューリングが行なわれる。
ところで、特許文献1及び特許文献2に開示されたシステムでは、一つのプロセッサが、特定のプロセスのみを実行する専用プロセッサとして割り当てられるため、汎用プロセスを実行するためのプロセッサリソースが不足することがある。
By the way, in the systems disclosed in
しかしながら、特許文献1及び特許文献2に開示されたシステムにおいては、専用プロセッサは、実行すべき特定のプロセスが無くても、汎用プロセスを実行できないため、上述のプロセッサリソースの不足を解消することは困難である。また、この結果、専用プロセッサのリソースを有効に活用できないという問題も生じてしまう。
However, in the systems disclosed in
本発明の目的の一例は、上記問題を解消し、専用プロセスを実行する専用プロセッサを有効利用することによって、汎用プロセッサのプロセッサリソース不足を解消し得る、リソース管理装置、リソースの管理方法、及びプログラムを提供することにある。 An example of an object of the present invention is to provide a resource management apparatus, a resource management method, and a program that can solve the above-described problem and effectively solve a shortage of processor resources of a general-purpose processor by effectively using a dedicated processor that executes a dedicated process. Is to provide.
上記目的を達成するため、本発明の一側面におけるリソース装置は、特定のプロセスを実行する第1のプロセッサと、前記特定のプロセス以外の汎用プロセスを実行する第2のプロセッサとを備えるコンピュータにおいて、プロセッサリソースを管理するための装置であって、
一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、管理部と、
前記管理部によって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、プロセス実行部と、
を備えていることを特徴とする。
To achieve the above object, a resource device according to an aspect of the present invention is a computer including a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process. An apparatus for managing processor resources,
A management unit that permits execution of the general-purpose process by the first processor under certain conditions;
A process execution unit that, when permitted by the management unit, causes the first processor to execute the general-purpose process;
It is characterized by having.
また、上記目的を達成するため、本発明の一側面におけるリソース管理方法は、特定のプロセスを実行する第1のプロセッサと、前記特定のプロセス以外の汎用プロセスを実行する第2のプロセッサとを備えるコンピュータにおいて、プロセッサリソースを管理するための方法であって、
(a)一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、ステップと、
(b)前記(a)のステップによって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、ステップと、
を有することを特徴とする。
In order to achieve the above object, a resource management method according to one aspect of the present invention includes a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process. A method for managing processor resources in a computer comprising:
(A) permitting execution of the general-purpose process by the first processor under certain conditions;
(B) causing the first processor to execute the general-purpose process when permitted by the step (a);
It is characterized by having.
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、特定のプロセスを実行する第1のプロセッサと、前記特定のプロセス以外の汎用プロセスを実行する第2のプロセッサとを備えるコンピュータにおいて、プロセッサリソースを管理するためのプログラムであって、
前記コンピュータに、
(a)一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、ステップと、
(b)前記(a)のステップによって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、ステップと、
を実行させることを特徴とする。
Furthermore, in order to achieve the above object, a program according to an aspect of the present invention is a computer including a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process. A program for managing processor resources,
In the computer,
(A) permitting execution of the general-purpose process by the first processor under certain conditions;
(B) causing the first processor to execute the general-purpose process when permitted by the step (a);
Is executed.
以上のように、本発明によれば、専用プロセスを実行する専用プロセッサを有効利用することによって、汎用プロセッサのプロセッサリソース不足を解消することができる。 As described above, according to the present invention, a shortage of processor resources of a general-purpose processor can be solved by effectively using a dedicated processor that executes a dedicated process.
(実施の形態)
以下、本発明の実施の形態における、リソース管理装置、リソースの管理方法、及びプログラムについて、図1〜図4を参照しながら説明する。
(Embodiment)
Hereinafter, a resource management device, a resource management method, and a program according to an embodiment of the present invention will be described with reference to FIGS.
[装置構成]
最初に、図1を用いて本発明の実施の形態におけるリソース管理装置の構成について説明する。図1は、本発明の実施の形態におけるリソース管理装置の構成を示すブロック図である。
[Device configuration]
First, the configuration of the resource management apparatus according to the embodiment of the present invention will be described with reference to FIG. FIG. 1 is a block diagram showing a configuration of a resource management apparatus according to an embodiment of the present invention.
図1に示すように、本実施の形態におけるリソース管理装置20は、コンピュータ5においてプロセッサリソースを管理するための装置である。また、コンピュータ5は、特定のプロセス(以下「専用プロセス」と表記する。)を実行する第1のプロセッサ1と、特定のプロセス以外の汎用プロセスを実行する第2のプロセッサ2及び3とを備えている。
As shown in FIG. 1, the
なお、以降において、特定のプロセスは「専用プロセス」と表記し、第1のプロセッサは「専用プロセッサ」と表記する。また、第2のプロセッサは「汎用プロセッサ」と表記する。 Hereinafter, the specific process is referred to as “dedicated process”, and the first processor is referred to as “dedicated processor”. The second processor is expressed as “general-purpose processor”.
また、図1に示すように、リソース管理装置20は、一定条件下において専用プロセッサ1による汎用プロセスの実行を許可する管理部11と、管理部11によって許可された場合に専用プロセッサ1に汎用プロセスを実行させるプロセス実行部10とを備えている。
As shown in FIG. 1, the
以上のように、本実施の形態におけるリソース管理装置20では、一定条件下、例えば、全ての汎用プロセッサ2及び3が処理実行中にあって、実行すべき汎用プロセスを実行できない場合に、専用プロセッサ1によって汎用プロセスを実行することができる。このため、専用プロセスを実行する専用プロセッサ1を有効利用することによって、汎用プロセッサ2及び3のプロセッサリソース不足を解消することができる。
As described above, in the
ここで、更に図2及び図3を用いて、本実施の形態におけるリソース管理装置の構成を具体的に説明する。図2は、本発明の実施の形態2におけるリソース管理装置の構成を具体的に示すブロック図である。
Here, the configuration of the resource management apparatus according to the present embodiment will be specifically described with reference to FIGS. FIG. 2 is a block diagram specifically showing the configuration of the resource management apparatus according to
まず、図2に示すように、コンピュータ5は、専用プロセッサ1、汎用プロセッサ2及び3に加えて、メモリ等の記憶装置4を備えている。また、本実施の形態では、リソース管理装置20は、コンピュータ5のオペレーティングシステム(図2において図示せず)上で動作するプログラムによって構築されている。このため、後述するように、専用プロセッサ1、汎用プロセッサ2及び3のうちのいずれかが、プロセス実行部10及び管理部11として機能し、処理を行なう。
First, as shown in FIG. 2, the
更に、図2に示すように、リソース管理装置20は、プロセス実行部10及び管理部11に加えて、プロセッサ制御情報格納部12と、プロセス情報格納部14とを備えている。プロセッサ制御情報格納部12及びプロセス情報格納部14は、コンピュータ5の記憶装置4の記憶領域上に構築されている。
Further, as shown in FIG. 2, the
このうち、プロセッサ制御情報格納部12は、専用プロセッサ及び汎用プロセッサがプロセスを実行中であるかどうかを示す識別子(以下「プロセッサ状態」と表記する。)13を格納している。また、図2には示されていないが、プロセッサ制御情報格納部12は、更に、各プロセッサの情報(以下「プロセッサ情報」と表記する。)も格納している。
Among these, the processor control
図3は、図2に示すプロセッサ制御情報格納部に格納されているプロセッサ状態とプロセッサ情報との一例を示す図である。図3に示すように、本実施の形態では、プロセッサ制御情報格納部12は、プロセッサ情報として、プロセッサ毎のバイトアドレスと、プロセッサ毎のプロセッサ種別とを格納している。また、プロセッサ制御情報格納部12は、プロセッサ毎に、プロセッサ状態13を格納している。
FIG. 3 is a diagram illustrating an example of the processor state and the processor information stored in the processor control information storage unit illustrated in FIG. As shown in FIG. 3, in this embodiment, the processor control
よって、プロセス実行部10及び管理部11は、プロセッサ制御情報格納部12にアクセスし、これに格納されているプロセス状態を確認することにより、専用プロセッサ及び汎用プロセッサがプロセスを実行中であるか否かを判断することができる。
Therefore, the
また、プロセス情報格納部14は、実行可能な専用プロセスの一時保存と出力とを行なう専用プロセスキュー15と、実行可能な汎用プロセスの一時保存と出力とを行なう汎用プロセスキュー16とを格納している。プロセス実行部10及び管理部11は、プロセス情報格納部14にアクセスすることにより、実行可能な専用プロセス及び汎用プロセスの存在を確認することができる。
Further, the process
よって、本実施の形態では、プロセス実行部10は、専用プロセスキュー15に実行可能な専用プロセスが存在すると、専用プロセッサ1に専用プロセスの実行を開始させる。また、専用プロセスキュー15に実行可能なプロセスが存在しない場合に、管理部11により、専用プロセッサ1での汎用プロセスの実行が許可されると、プロセス実行部10は、専用プロセッサに、汎用プロセスキュー16の汎用プロセスの実行を開始させる。なお、専用プロセスキュー15に実行可能なプロセスが存在しない場合とは、専用プロセッサ1のリソースに空きが生じた状態をいう。
Therefore, in the present embodiment, when there is a dedicated process that can be executed in the
また、専用プロセスキュー15に実行可能なプロセスが存在しない場合でも、管理部11により、専用プロセッサ1での汎用プロセスの実行が許可されていないときは、プロセス実行部10は、専用プロセッサに汎用プロセスを実行させない。つまり、プロセス実行部10は、この場合は、汎用プロセスキュー16に汎用プロセスが存在しても、専用プロセッサに汎用プロセスを実行させず、専用プロセスの実行を優先して処理させる。
Even if there is no executable process in the
本実施の形態では、「専用プロセッサ1による汎用プロセスの実行の許可」は、管理部11が、記憶装置4の記憶領域上の特定のアドレスに、許可が有効であることを示す識別子又は許可が無効であることを示す識別子を書き込むことによって行なわれている。プロセス実行部10は、書き込まれた識別子を確認することによって、許可が有効となっているか、無効となっているかを確認する。なお、以降において、許可の有効無効を示す識別子を「汎用プロセス実行許可」と表記する。汎用プロセス実行許可は、汎用プロセスのリソースが不足しているか否かを示す識別子である。
In the present embodiment, “permission of execution of the general-purpose process by the
本実施の形態では、管理部11は、プロセッサ状態13から、全ての汎用プロセッサがプロセスの実行中になっていることを確認すると、汎用プロセッサのリソースが不足していると判断し、汎用プロセスの実行許可を有効に設定する。また、管理部11は、全ての汎用プロセッサが実行状態でない場合、即ち、一つでも空き状態の汎用プロセッサが存在する場合は、汎用プロセッサのリソースには余裕があると判断し、汎用プロセスの実行許可を無効に設定する。
In the present embodiment, when the
また、プロセス実行部10は、汎用プロセスキュー16に実行可能な汎用プロセスが存在する場合は、汎用プロセッサ2又は3に汎用プロセスの実行を開始させる。また、汎用プロセスが実行されているときに、専用プロセスが検出された場合は、プロセス実行部10は、検出した専用プロセスを専用プロセスキュー15に格納する。
In addition, when there is a generic process that can be executed in the
更に、この場合において、専用プロセスの検出前に専用プロセスキュー15が空であることを条件として、プロセス実行部10は、専用プロセッサ1に、検出された専用プロセスを実行させる。また、このときの専用プロセッサ1への専用プロセスの実行の指示は、専用プロセッサ1への専用プロセスの実行を要求する「専用プロセス実行指示」を有効に設定することによって行なわれる。
Further, in this case, the
なお、「専用プロセス実行指示」は、プロセス実行部10によって記憶装置4の記憶領域上の特定のアドレスに書き込まれる、専用プロセス実行指示が有効であることを示す識別子又は専用プロセス実行指示が無効であることを示す識別子である。専用プロセス1は、専用プロセスの実行指示が有効となっている場合は、専用プロセスを実行する。
The “dedicated process execution instruction” is an identifier indicating that the dedicated process execution instruction written in the storage area of the
[装置動作]
次に、本発明の実施の形態におけるリソース管理装置20の動作について図4を用いて説明する。図4は、本発明の実施の形態におけるリソース管理装置の動作を示すフロー図である。以下の説明においては、適宜図1〜図3を参酌する。また、本実施の形態1では、リソース管理装置20を動作させることによって、リソース管理方法が実施される。よって、本実施の形態におけるリソース管理方法の説明は、以下のリソース管理装置20の動作説明に代える。
[Device operation]
Next, the operation of the
図4に示すように、まず、プロセス実行部10は、プロセッサ状態13に基づいて、空き状態にあるプロセッサが専用プロセッサ1であるかどうかを判定する(ステップS1)。
As shown in FIG. 4, first, the
ステップS1の結果、空き状態にあるプロセッサが専用プロセッサ1である場合は、更に、プロセス実行部1は、専用プロセスキュー15に実行可能な専用プロセスが存在しているかどうか、即ち、専用プロセスキュー15が空であるかどうかを判定する(ステップS2)。
If the result of step S1 is that the processor in the free state is the
ステップS2の判定の結果、専用プロセスキュー15に実行可能な専用プロセスが存在している場合は、プロセス実行部10は、専用プロセッサ1に専用プロセスの実行を開始させる(ステップS5)。その後、プロセス実行部10は、プロセッサ状態13の専用プロセッサの状態を実行状態に設定して処理を終了する。
As a result of the determination in step S2, if there is a dedicated process that can be executed in the
一方、ステップ2の判定の結果、専用プロセスキュー15に実行可能な専用プロセスが存在していない場合(専用プロセスキューが空の場合)は、プロセス実行部10は、管理部11によって汎用プロセスの実行が許可されているかどうかを判定する(ステップS3)。
On the other hand, if there is no executable process that can be executed in the
ステップS3の判定の結果、管理部11によって汎用プロセスの実行が許可されていない場合は、プロセス実行部10は、プロセス実行部10は、専用プロセッサ1のリソースに余裕があっても、専用プロセッサに汎用プロセスを実行させることができない。よって、プロセス実行部10は処理を終了する。また、このとき、プロセス実行部10は、プロセッサ状態13の専用プロセスの状態を空き状態に設定する(図3参照)。
If the execution of the general-purpose process is not permitted by the
一方、ステップS3の判定の結果、管理部11によって汎用プロセスの実行が許可されている場合は、プロセス実行部10は、汎用プロセスキュー16に実行可能な汎用プロセスが存在することを条件に、プロセス実行部10は、専用プロセッサに汎用プロセスの実行を開始させる(ステップS4)。これにより、専用プロセッサ1のリソースが有効に利用されることになる。また、このとき、プロセス実行部10は、プロセッサ状態13の専用プロセッサの状態を実行状態に設定する(図3参照)。その後、プロセス実行部10は処理を終了する。
On the other hand, if the execution of the generic process is permitted by the
また、管理部11によって汎用プロセスの実行が許可されているにも拘らず、汎用プロセスキュー16に実行可能な汎用プロセスが存在しない場合(汎用プロセスキューが空の場合)は、プロセッサ実行部10は、プロセッサ状態13の専用プロセッサの状態を空き状態に設定する。
If there is no executable generic process in the
ステップS1の結果、空き状態にあるプロセッサが専用プロセッサ1でない(汎用プロセッサである)場合は、プロセス実行部1は、汎用プロセスキュー16に実行可能な汎用プロセスが存在しているかどうかを判定する(ステップS6)。
If the result of step S1 is that the processor in the idle state is not the dedicated processor 1 (is a general-purpose processor), the
ステップS6の判定の結果、汎用プロセスキュー16に実行可能な汎用プロセスが存在していない場合(汎用プロセスキューが空の場合)は、プロセス実行部10は、処理を終了する。このとき、プロセス実行部10は、プロセッサ状態13における該当する汎用プロセッサの状態を空き状態に設定する。
If there is no executable generic process in the
一方、ステップS6の判定の結果、汎用プロセスキュー16に実行可能な汎用プロセスが存在している場合(汎用プロセスキューが空でない場合)は、プロセス実行部10は、空き状態にある汎用プロセッサに汎用プロセスの実行を開始させる(ステップS7)。このとき、プロセス実行部10は、プロセッサ状態13における該当する汎用プロセッサの状態を実行状態に設定する。その後、プロセス実行部10は、処理を終了する。
On the other hand, as a result of the determination in step S6, if there is a generic process that can be executed in the generic process queue 16 (if the generic process queue is not empty), the
本実施の形態では、ステップS1〜S7は、設定間隔で繰り返し実行される。また、上記図4には例示されていないが、ステップS7が実行され、その後、プロセス実行部10が専用プロセスを検出する場合がある。この場合、専用プロセスキュー15が空であるときは、検出された専用プロセスが専用プロセスキュー15に格納されると、プロセス実行部10は、専用プロセッサ1に対して、専用プロセス実行指示を有効に設定する。これにより、専用プロセッサは、汎用プロセスを実行していても、これを中断し、専用プロセスの実行を開始する。
In the present embodiment, steps S1 to S7 are repeatedly executed at set intervals. Although not illustrated in FIG. 4 above, step S7 may be executed, and then the
また、本実施の形態では、管理部11は、プロセッサ状態13から、全ての汎用プロセッサが実行状態になっていることを確認した場合は、汎用プロセッサのリソースが不足していると判断し、汎用プロセス実行許可を有効に設定する。一方、管理部11は、全ての汎用プロセッサが実行状態でない場合、即ち、少なくとも一つ以上の汎用プロセッサが空いている状態であり、汎用プロセッサのリソースに余裕がある場合は、汎用プロセス実行許可を無効に設定する。
Further, in the present embodiment, when the
[具体例]
ここで、図5(a)及び(b)を用いて、リソース管理装置20の動作の具体例について説明する。図5(a)は、本実施の形態における専用プロセス及び汎用プロセスの実行を時系列に沿って示す図である。図5(b)は、従来における専用プロセス及び汎用プロセスの実行を時系列に沿って示す図である。
[Concrete example]
Here, a specific example of the operation of the
図5(a)及び(b)に示すように、時間の経過に伴って、専用プロセッサと汎用プロセッサとは、プロセスを実行する。そして、図5(a)及び(b)において、A、Bは、それぞれ、専用プロセッサのみで実行可能な専用プロセスを示す。a〜kは、それぞれ、汎用プロセスを示す。また、プロセスi及びjは、プロセスhが完了した時に実行されることとする。更に、プロセスi及びj以外のプロセスの実行順序には、制限がないこととする。 As shown in FIGS. 5A and 5B, the dedicated processor and the general-purpose processor execute processes as time elapses. In FIGS. 5A and 5B, A and B respectively indicate dedicated processes that can be executed only by the dedicated processor. Each of a to k represents a general-purpose process. Processes i and j are executed when process h is completed. Furthermore, it is assumed that there is no restriction on the execution order of processes other than processes i and j.
まず、汎用プロセッサ2及び3のリソースが不足した場合の動作について説明する。汎用プロセッサ2が汎用プロセスaを実行し、汎用プロセッサ3が汎用プロセスbを実行すると、管理部11は、汎用プロセッサのリソースが不足していると判断し、汎用プロセスの実行許可を有効に設定する。
First, the operation when the resources of the general-
この時、図5(a)に示すように、プロセス実行部10は、専用プロセスキュー15に実行可能なプロセスが存在しないので、汎用プロセスキュー16から汎用プロセスcを取得し、専用プロセッサ1に、取得した汎用プロセスcの実行を開始させる。
At this time, as shown in FIG. 5A, since there is no executable process in the
図5(b)に示す、従来の装置では、2つの汎用プロセッサによる汎用プロセスa〜cの実行時間は2分間程あるとする。これに対して、図5に示すリソース管理装置20によれば、専用プロセッサの空きリソースが活用され、汎用プロセスa〜cをほぼ同時に実行できるので、実行時間は1分間〜2分間程度へと1分程短縮できると考えられる。
In the conventional apparatus shown in FIG. 5B, it is assumed that the execution time of the general processes a to c by the two general processors is about 2 minutes. On the other hand, according to the
次に、専用プロセスを優先して実行する場合の動作について説明する。例えば、プロセス実行部10が、汎用プロセッサ3によって汎用プロセスdを実行させたときに、優先して実行すべき専用プロセスAを検出したとする。この場合、プロセス実行部10は、検出した専用プロセスAを専用プロセスキュー15に格納する。
Next, the operation when the dedicated process is executed with priority will be described. For example, it is assumed that the
そして、プロセス実行部10は、空の状態にある専用プロセスキュー15に専用プロセスAを格納するので、専用プロセッサ1に対して、専用プロセス実行指示を有効に設定する。これにより、専用プロセッサ1は、専用プロセスAの実行を開始する。以後、専用プロセッサ1は、専用プロセスキュー15が空になるまで、専用プロセスを優先して実行する。図5(a)の例のように、専用プロセスキュー15に専用プロセスA及びBが格納された場合は、これらが連続して実行される。
Then, since the
次に、汎用プロセッサのリソースが不足した時でも専用プロセスを優先して実行する場合の動作について説明する。プロセス実行部10が、汎用プロセッサ2に汎用プロセスfを実行させ、汎用プロセッサ3に汎用プロセスgを実行させると、汎用プロセッサのリソースは不足する。しかし、専用プロセスキュー15には、専用プロセスBが存在するので、プロセス実行部10は、専用プロセッサ1に対して、専用プロセスAの完了後に、専用プロセスキュー15内の専用プロセスBを優先して実行させる。
Next, an operation in the case where the dedicated process is preferentially executed even when the resources of the general-purpose processor are insufficient will be described. When the
次に、汎用プロセッサのリソースに余裕がある場合の動作について説明する。図5(a)の経過時間が4分であるときは、汎用プロセッサ2は汎用プロセスhを実行しなければならない。しかし、汎用プロセッサ3は、実行するプロセスがなく空き状態になっている。
Next, an operation when the general-purpose processor resources are sufficient will be described. When the elapsed time in FIG. 5A is 4 minutes, the general-
従って、管理部11は、汎用プロセッサ3のリソースに余裕があると判断し、汎用プロセスの実行許可を無効にする。この時、プロセス実行部10は、専用プロセスキュー15に実行可能なプロセスが存在しているか否かのチェックを継続する。なお、専用プロセッサ1が、専用プロセスキュー15のチェックを行わずに、専用プロセスキュー15に実行可能な専用プロセスが出現するまで待ち続ける態様であっても良い。また、汎用プロセッサ3は、汎用プロセスi及びj以外に新たに実行可能な汎用プロセスが生じた場合、優先して実行する。
Therefore, the
[実施の形態における効果]
以上のように、本実施の形態によれば、以下の効果を得ることができる。
[Effects of the embodiment]
As described above, according to the present embodiment, the following effects can be obtained.
第1の効果は、専用プロセッサのリソースを有効に活用することにより、汎用プロセッサのリソース不足を補填できることである。その理由は、プロセス実行部10と管理部11とにより、汎用プロセッサのリソース不足を判断してプロセッサリソースを制御することができるからである。
The first effect is that the resource shortage of the general-purpose processor can be compensated by effectively utilizing the resources of the dedicated processor. The reason is that the
第2の効果は、専用プロセッサの機能を維持しつつ、専用プロセッサのリソースを有効に活用できることである。その理由は、プロセス実行部10と管理部11とにより、専用プロセスの状態と汎用プロセスの状態とが判断されて、専用プロセッサのリソースが制御されるためである。
The second effect is that the resources of the dedicated processor can be effectively utilized while maintaining the functions of the dedicated processor. The reason is that the
また、第3の効果は、プロセッサ単位でのリソースの制御と、複数のプロセッサの制御とが可能になることである。その理由は、プロセッサ状態13によって、各プロセッサの実行状態が特定できるためである。
The third effect is that it becomes possible to control resources in units of processors and to control a plurality of processors. This is because the execution state of each processor can be specified by the
[変形例]
図1〜図5の例では、専用プロセッサの数は一つであるが、本実施の形態においては、専用プロセッサの数は複数であっても良く、この場合でも、専用プロセッサのリソースを有効に活用できる。また、本実施の形態は、複数の専用プロセッサそれぞれによって実行される処理が異なる場合でも、各専用プロセッサのリソースを有効に活用できることが可能となる。また、本実施の形態は、複数の専用プロセスキューが設けられていても良く、この場合でも、容易に対応することができる。
[Modification]
In the example of FIGS. 1 to 5, the number of dedicated processors is one, but in the present embodiment, the number of dedicated processors may be plural, and even in this case, the resources of the dedicated processors are effectively used. Can be used. Further, according to the present embodiment, it is possible to effectively use the resources of each dedicated processor even when the processing executed by each of the plurality of dedicated processors is different. In the present embodiment, a plurality of dedicated process queues may be provided, and even in this case, it can be easily handled.
[プログラム]
本実施の形態におけるプログラムは、コンピュータ5に、図4に示すステップS1〜S7を実行させるプログラムであれば良い。このプログラムをコンピュータ5にインストールし、実行することによって、本実施の形態におけるリソース管理装置20とリソース管理方法とを実現することができる。この場合、コンピュータの専用プロセッサ及び汎用プロセッサのいずれかが、プロセス実行部10及び管理部11として機能し、処理を行なう。
[program]
The program in the present embodiment may be a program that causes the
上述した実施の形態の一部又は全部は、以下に記載する(付記1)〜(付記15)によって表現することができるが、以下の記載に限定されるものではない。 Part or all of the above-described embodiment can be expressed by (Appendix 1) to (Appendix 15) described below, but is not limited to the following description.
(付記1)
特定のプロセスを実行する第1のプロセッサと、前記特定のプロセス以外の汎用プロセスを実行する第2のプロセッサとを備えるコンピュータにおいて、プロセッサリソースを管理するための装置であって、
一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、管理部と、
前記管理部によって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、プロセス実行部と、
を備えていることを特徴とするリソース管理装置。
(Appendix 1)
An apparatus for managing processor resources in a computer comprising a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process,
A management unit that permits execution of the general-purpose process by the first processor under certain conditions;
A process execution unit that, when permitted by the management unit, causes the first processor to execute the general-purpose process;
A resource management device comprising:
(付記2)
前記管理部は、実行可能な前記特定のプロセスが存在せず、且つ、全ての前記第2のプロセッサが前記汎用プロセスを実行している、ことを条件に、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、
付記1に記載のリソース管理装置。
(Appendix 2)
The management unit is configured to execute the general-purpose process by the first processor on the condition that the specific process that can be executed does not exist and all the second processors are executing the general-purpose process. Allow execution,
The resource management device according to
(付記3)
前記第2のプロセッサによって前記汎用プロセスが実行されているときに、前記特定のプロセスが検出されると、実行中の特定のプロセスが存在していないことを条件に、前記プロセス実行部が、前記第1のプロセッサに、検出された前記特定のプロセスを実行させる、
付記2に記載のリソース管理装置。
(Appendix 3)
When the specific process is detected when the general-purpose process is executed by the second processor, the process execution unit is configured on the condition that there is no specific process being executed. Causing a first processor to execute the particular process detected;
The resource management device according to
(付記4)
前記第1のプロセッサ及び前記第2のプロセッサがプロセスを実行中であるかどうかを示す識別子を格納する、格納部を更に備え、
前記管理部は、前記識別子に基づいて、全ての前記第2のプロセッサが前記汎用プロセスを実行していることを特定して、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、
付記2または3に記載のリソース管理装置。
(Appendix 4)
A storage unit for storing an identifier indicating whether or not the first processor and the second processor are executing processes;
The management unit specifies that all the second processors are executing the generic process based on the identifier, and permits the first processor to execute the generic process.
The resource management device according to
(付記5)
前記プロセス実行部は、実行可能な前記汎用プロセスが存在する場合に、前記識別子に基づいて、前記汎用プロセスを実行中にない前記第2のプロセッサを特定し、特定した前記第2のプロセッサに、実行可能な前記汎用プロセスを実行させる、
付記4に記載のリソース管理装置。
(Appendix 5)
The process execution unit identifies the second processor that is not executing the generic process based on the identifier when the generic process that can be executed exists, and identifies the second processor that has been identified, Causing the generic process to execute,
The resource management device according to
(付記6)
特定のプロセスを実行する第1のプロセッサと、前記特定のプロセス以外の汎用プロセスを実行する第2のプロセッサとを備えるコンピュータにおいて、プロセッサリソースを管理するための方法であって、
(a)一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、ステップと、
(b)前記(a)のステップによって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、ステップと、
を有することを特徴とするリソース管理方法。
(Appendix 6)
A method for managing processor resources in a computer comprising a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process,
(A) permitting execution of the general-purpose process by the first processor under certain conditions;
(B) causing the first processor to execute the general-purpose process when permitted by the step (a);
A resource management method comprising:
(付記7)
前記(a)のステップにおいて、実行可能な前記特定のプロセスが存在せず、且つ、全ての前記第2のプロセッサが前記汎用プロセスを実行している、ことを条件に、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、
付記6に記載のリソース管理方法。
(Appendix 7)
In the step (a), on the condition that the specific process that can be executed does not exist and all the second processors are executing the general-purpose process, the first processor executes Permit execution of the generic process;
The resource management method according to
(付記8)
(c)前記第2のプロセッサによって前記汎用プロセスが実行されているときに、前記特定のプロセスが検出されると、実行中の特定のプロセスが存在していないことを条件に、前記第1のプロセッサに、検出された前記特定のプロセスを実行させる、ステップを更に有する、付記7に記載のリソース管理方法。
(Appendix 8)
(C) If the specific process is detected when the general-purpose process is executed by the second processor, the first process is performed on the condition that there is no specific process being executed. The resource management method according to
(付記9)
(d)前記第1のプロセッサ及び前記第2のプロセッサがプロセスを実行中であるかどうかを示す識別子を格納する、ステップを更に有し、
前記(a)のステップにおいて、前記識別子に基づいて、全ての前記第2のプロセッサが前記汎用プロセスを実行していることを特定して、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、
付記7または8に記載のリソース管理方法。
(Appendix 9)
(D) further comprising storing an identifier indicating whether the first processor and the second processor are executing processes;
In the step (a), based on the identifier, it is specified that all the second processors are executing the general-purpose process, and the execution of the general-purpose process by the first processor is permitted. ,
The resource management method according to
(付記10)
(e)実行可能な前記汎用プロセスが存在する場合に、前記識別子に基づいて、前記汎用プロセスを実行中にない前記第2のプロセッサを特定し、特定した前記第2のプロセッサに、実行可能な前記汎用プロセスを実行させる、ステップを更に有する、
付記9に記載のリソース管理方法。
(Appendix 10)
(E) When the generic process that can be executed exists, the second processor that is not executing the generic process is identified based on the identifier, and can be executed by the identified second processor. Further comprising executing the generic process.
The resource management method according to attachment 9.
(付記11)
特定のプロセスを実行する第1のプロセッサと、前記特定のプロセス以外の汎用プロセスを実行する第2のプロセッサとを備えるコンピュータにおいて、プロセッサリソースを管理するためのプログラムであって、
前記コンピュータに、
(a)一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、ステップと、
(b)前記(a)のステップによって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、ステップと、
を実行させるプログラム。
(Appendix 11)
A program for managing processor resources in a computer comprising a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process,
In the computer,
(A) permitting execution of the general-purpose process by the first processor under certain conditions;
(B) causing the first processor to execute the general-purpose process when permitted by the step (a);
A program that executes
(付記12)
前記(a)のステップにおいて、実行可能な前記特定のプロセスが存在せず、且つ、全ての前記第2のプロセッサが前記汎用プロセスを実行している、ことを条件に、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、
付記11に記載のプログラム。
(Appendix 12)
In the step (a), on the condition that the specific process that can be executed does not exist and all the second processors are executing the general-purpose process, the first processor executes Permit execution of the generic process;
The program according to
(付記13)
(c)前記第2のプロセッサによって前記汎用プロセスが実行されているときに、前記特定のプロセスが検出されると、実行中の特定のプロセスが存在していないことを条件に、前記第1のプロセッサに、検出された前記特定のプロセスを実行させる、ステップを更に前記コンピュータに実行させる、付記12に記載のプログラム。
(Appendix 13)
(C) If the specific process is detected when the general-purpose process is executed by the second processor, the first process is performed on the condition that there is no specific process being executed. The program according to
(付記14)
(d)前記第1のプロセッサ及び前記第2のプロセッサがプロセスを実行中であるかどうかを示す識別子を格納する、ステップを更に前記コンピュータに実行させ、
前記(a)のステップにおいて、前記識別子に基づいて、全ての前記第2のプロセッサが前記汎用プロセスを実行していることを特定して、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、
付記12または13に記載のプログラム。
(Appendix 14)
(D) causing the computer to further execute a step of storing an identifier indicating whether or not the first processor and the second processor are executing processes;
In the step (a), based on the identifier, it is specified that all the second processors are executing the general-purpose process, and the execution of the general-purpose process by the first processor is permitted. ,
The program according to
(付記15)
(e)実行可能な前記汎用プロセスが存在する場合に、前記識別子に基づいて、前記汎用プロセスを実行中にない前記第2のプロセッサを特定し、特定した前記第2のプロセッサに、実行可能な前記汎用プロセスを実行させる、ステップを更に前記コンピュータに実行させる、
付記14に記載のプログラム。
(Appendix 15)
(E) When the generic process that can be executed exists, the second processor that is not executing the generic process is identified based on the identifier, and can be executed by the identified second processor. Causing the general process to execute, further causing the computer to execute steps.
The program according to
本発明によれば、専用プロセスを実行する専用プロセッサを有効利用することによって、汎用プロセッサのプロセッサリソース不足を解消することができる。本発明は、マルチプロセッサシステムに有効である。 According to the present invention, a shortage of processor resources of a general-purpose processor can be solved by effectively using a dedicated processor that executes a dedicated process. The present invention is effective for a multiprocessor system.
1 専用プロセッサ
2 汎用プロセッサ
3 汎用プロセッサ
4 記憶装置
5 コンピュータ
10 プロセス実行部
11 管理部
12 プロセッサ制御情報格納部
13 プロセッサ状態
14 プロセス情報格納部
15 専用プロセスキュー
16 汎用プロセスキュー
20 リソース管理装置
DESCRIPTION OF
Claims (7)
一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、管理部と、
前記管理部によって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、プロセス実行部と、
を備えていることを特徴とするリソース管理装置。 An apparatus for managing processor resources in a computer comprising a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process,
A management unit that permits execution of the general-purpose process by the first processor under certain conditions;
A process execution unit that, when permitted by the management unit, causes the first processor to execute the general-purpose process;
A resource management device comprising:
請求項1に記載のリソース管理装置。 The management unit is configured to execute the general-purpose process by the first processor on the condition that the specific process that can be executed does not exist and all the second processors are executing the general-purpose process. Allow execution,
The resource management apparatus according to claim 1.
請求項2に記載のリソース管理装置。 When the specific process is detected when the general-purpose process is executed by the second processor, the process execution unit is configured on the condition that there is no specific process being executed. Causing a first processor to execute the particular process detected;
The resource management device according to claim 2.
前記管理部は、前記識別子に基づいて、全ての前記第2のプロセッサが前記汎用プロセスを実行していることを特定して、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、
請求項2または3に記載のリソース管理装置。 A storage unit for storing an identifier indicating whether or not the first processor and the second processor are executing processes;
The management unit specifies that all the second processors are executing the generic process based on the identifier, and permits the first processor to execute the generic process.
The resource management apparatus according to claim 2 or 3.
請求項4に記載のリソース管理装置。 The process execution unit identifies the second processor that is not executing the generic process based on the identifier when the generic process that can be executed exists, and identifies the second processor that has been identified, Causing the generic process to execute,
The resource management apparatus according to claim 4.
(a)一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、ステップと、
(b)前記(a)のステップによって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、ステップと、
を有することを特徴とするリソース管理方法。 A method for managing processor resources in a computer comprising a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process,
(A) permitting execution of the general-purpose process by the first processor under certain conditions;
(B) causing the first processor to execute the general-purpose process when permitted by the step (a);
A resource management method comprising:
前記コンピュータに、
(a)一定条件下において、前記第1のプロセッサによる前記汎用プロセスの実行を許可する、ステップと、
(b)前記(a)のステップによって許可された場合に、前記第1のプロセッサに前記汎用プロセスを実行させる、ステップと、
を実行させるプログラム。 A program for managing processor resources in a computer comprising a first processor that executes a specific process and a second processor that executes a general-purpose process other than the specific process,
In the computer,
(A) permitting execution of the general-purpose process by the first processor under certain conditions;
(B) causing the first processor to execute the general-purpose process when permitted by the step (a);
A program that executes
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013036673A JP5676664B2 (en) | 2013-02-27 | 2013-02-27 | Resource management apparatus, resource management method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013036673A JP5676664B2 (en) | 2013-02-27 | 2013-02-27 | Resource management apparatus, resource management method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2014164635A true JP2014164635A (en) | 2014-09-08 |
| JP5676664B2 JP5676664B2 (en) | 2015-02-25 |
Family
ID=51615163
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013036673A Expired - Fee Related JP5676664B2 (en) | 2013-02-27 | 2013-02-27 | Resource management apparatus, resource management method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5676664B2 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017033208A (en) * | 2015-07-31 | 2017-02-09 | 株式会社日立超エル・エス・アイ・システムズ | An API that prevents a normal part failure from propagating to a safety part and its processing part |
| WO2019187719A1 (en) * | 2018-03-28 | 2019-10-03 | ソニー株式会社 | Information processing device, information processing method, and program |
| JP2024058635A (en) * | 2022-10-14 | 2024-04-25 | ポラリス インダストリーズ インコーポレーテッド | Vehicle processing and connectivity functions |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004252900A (en) * | 2003-02-21 | 2004-09-09 | Sharp Corp | Asymmetric multiprocessor system, image processing apparatus and image forming apparatus having the same |
| JP2006155480A (en) * | 2004-12-01 | 2006-06-15 | Sony Computer Entertainment Inc | Scheduling method, scheduling apparatus, and multiprocessor system |
-
2013
- 2013-02-27 JP JP2013036673A patent/JP5676664B2/en not_active Expired - Fee Related
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004252900A (en) * | 2003-02-21 | 2004-09-09 | Sharp Corp | Asymmetric multiprocessor system, image processing apparatus and image forming apparatus having the same |
| JP2006155480A (en) * | 2004-12-01 | 2006-06-15 | Sony Computer Entertainment Inc | Scheduling method, scheduling apparatus, and multiprocessor system |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017033208A (en) * | 2015-07-31 | 2017-02-09 | 株式会社日立超エル・エス・アイ・システムズ | An API that prevents a normal part failure from propagating to a safety part and its processing part |
| WO2019187719A1 (en) * | 2018-03-28 | 2019-10-03 | ソニー株式会社 | Information processing device, information processing method, and program |
| JP2024058635A (en) * | 2022-10-14 | 2024-04-25 | ポラリス インダストリーズ インコーポレーテッド | Vehicle processing and connectivity functions |
Also Published As
| Publication number | Publication date |
|---|---|
| JP5676664B2 (en) | 2015-02-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8539486B2 (en) | Transactional block conflict resolution based on the determination of executing threads in parallel or in serial mode | |
| EP2437168B1 (en) | Method and device for balancing load of multiprocessor system | |
| US8695002B2 (en) | Multi-threaded processors and multi-processor systems comprising shared resources | |
| JP2016507849A5 (en) | ||
| EP2972885B1 (en) | Memory object reference count management with improved scalability | |
| US9396353B2 (en) | Data allocation among devices with different data rates | |
| US8782643B2 (en) | Device and method for controlling communication between BIOS and BMC | |
| CN107408016B (en) | Memory access protection using processor transactional memory support | |
| CN104932933B (en) | A kind of method and device obtaining spin lock | |
| US20130263149A1 (en) | Dynamically Adjusting Global Heap Allocation in Multi-Thread Environment | |
| US20150278123A1 (en) | Low-overhead detection of unauthorized memory modification using transactional memory | |
| US9507602B2 (en) | Sharing program interrupt logic in a multithreaded processor | |
| JP2012150583A5 (en) | ||
| CN103329102A (en) | Multiprocessor system | |
| US8887170B2 (en) | High performance locks | |
| JP2013225208A (en) | Information processing apparatus, information processing method and program | |
| JP5676664B2 (en) | Resource management apparatus, resource management method, and program | |
| US9189405B2 (en) | Placement of data in shards on a storage device | |
| US11061730B2 (en) | Efficient scheduling for hyper-threaded CPUs using memory monitoring | |
| JP5625379B2 (en) | Lock contention management device, lock contention management method, and program | |
| JP5557612B2 (en) | Computer and transfer program | |
| US20130191839A1 (en) | Information processing apparatus, control method therefor, and computer-readable storage medium | |
| JP2012113632A (en) | Information processor and method of managing exclusive access right of information processor | |
| CN105247491A (en) | Computer system and control method | |
| JP7236811B2 (en) | Information processing equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140702 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20140728 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140827 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20141202 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141225 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5676664 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |