JP5825261B2 - Information processing apparatus, method and program thereof - Google Patents
Information processing apparatus, method and program thereof Download PDFInfo
- Publication number
- JP5825261B2 JP5825261B2 JP2012534967A JP2012534967A JP5825261B2 JP 5825261 B2 JP5825261 B2 JP 5825261B2 JP 2012534967 A JP2012534967 A JP 2012534967A JP 2012534967 A JP2012534967 A JP 2012534967A JP 5825261 B2 JP5825261 B2 JP 5825261B2
- Authority
- JP
- Japan
- Prior art keywords
- task
- processor
- data
- information
- processing
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
Description
本発明は、情報処理装置、その方法及びそのプログラムに関し、特に複数のタスクから構成されるジョブにおいてタスク間でデータを共有しながら処理を行うタスクの実行制御に関連した情報処理装置、その方法及びそのプログラムに関する。 The present invention relates to an information processing apparatus, a method thereof, and a program thereof, and more particularly to an information processing apparatus related to execution control of a task that performs processing while sharing data among tasks in a job composed of a plurality of tasks, and the method thereof Regarding the program.
例えばパケットストリームや音声・画像ストリーム等のストリームデータは、少なくとも1フレーム以上のフレームデータ(1単位の入力データ)から構成される。ストリームデータに対して行われるストリーム処理では、各フレームデータに対して一連の処理(以下ではジョブと称する)が施され、出力データが生成される。フレームデータに対して行われるジョブは、少なくとも1以上の部分処理(以下ではタスクと称する)に分割することができる。 For example, stream data such as a packet stream and an audio / image stream is composed of at least one frame of frame data (one unit of input data). In stream processing performed on stream data, a series of processing (hereinafter referred to as a job) is performed on each frame data, and output data is generated. A job performed on frame data can be divided into at least one or more partial processes (hereinafter referred to as tasks).
分割されたタスクは、異なるプロセッサによって、又は同一のプロセッサであっても異なるプログラムを実行して、あるいは再構成ハードウェア(HW)であれば異なるコンフィギュレーションによって処理すること等が可能である(例えば特許文献1参照)。 The divided tasks can be processed by different processors, by executing different programs even in the same processor, or by different configurations if reconfigurable hardware (HW) (for example, Patent Document 1).
しかしながら、依存関係にあるタスク間で、外部メモリ上に確保されたバッファを介してデータの受け渡しが行われると、バッファアクセスのオーバーヘッドが発生し、処理に遅延が生じることがある。 However, if data is exchanged between tasks having a dependency relationship via a buffer secured on the external memory, an overhead of buffer access occurs, and processing may be delayed.
そこで、本発明は、バッファアクセスのオーバーヘッドを削減して、処理遅延の発生を防ぐ情報処理装置、その方法及びそのプログラムを提供することを目的とする。 SUMMARY An advantage of some aspects of the invention is that it provides an information processing apparatus, a method thereof, and a program thereof that reduce buffer access overhead and prevent processing delay.
本発明の第1の観点によれば、プロセッシング要素と、前記プロセッシング要素の動作を制御するタスク管理部とを備える情報処理装置であって、前記プロセッシング要素は、タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを含み、前記タスク管理部は、前記プロセッサによる前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ用の領域と、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容と、前記プロセッサによる前記処理の処理結果のデータを格納する少なくとも1つの出力用バッファ用の領域と、のそれぞれを指定した上で前記処理を前記プロセッサに行わせる部分であり、前記タスク管理部が、前記タスク間の依存関係に基づいて、該依存関係に関わる入力用バッファ用の領域及び該依存関係に関わる出力用バッファ用の領域が、前記プロセッシング要素の外部に設けられた外部メモリではなく、前記内部メモリに確保されるように前記指定を行なうことを特徴とする情報処理装置が提供される。 According to a first aspect of the present invention , there is provided an information processing apparatus including a processing element and a task management unit that controls the operation of the processing element, wherein the processing element executes a process corresponding to a task. And an internal memory accessible by the processor , wherein the task management unit includes at least one input buffer area for storing data to be processed by the processor; the contents of processing to be performed on subject to data processing, before after designating pre SL and at least one region of the output buffer for storing the data of processing results of the processing by the processor, each of Kisho a moiety Ru to perform the management to the processor, the task management unit, based on the dependencies among the tasks The input buffer area related to the dependency relationship and the output buffer area related to the dependency relationship are secured in the internal memory, not in the external memory provided outside the processing element. An information processing apparatus characterized by performing
本発明の第2の観点によれば、プロセッシング要素を備える情報処理装置が行なう情報処理方法であって、前記プロセッシング要素は、タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを含み、当該情報処理方法では、前記プロセッサによる前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ用の領域と、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容と、前記プロセッサによる前記処理の処理結果のデータを格納する少なくとも1つの出力用バッファ用の領域と、のそれぞれを指定した上で前記処理を前記プロセッサに行わせるにあたり、前記タスク間の依存関係に基づいて、該依存関係に関わる入力用バッファ用の領域及び該依存関係に関わる出力用バッファ用の領域が、前記プロセッシング要素の外部に設けられた外部メモリではなく、前記内部メモリに確保されるように前記指定を行なうことを特徴とする情報処理方法が提供される。 According to a second aspect of the present invention, an information processing method for an information processing apparatus to obtain Bei the processing elements is performed, the processing element, the processor executes the processing corresponding to the task, and the processor is occupied In the information processing method, including an accessible internal memory, at least one input buffer area for storing the data to be processed by the processor, and the data to be processed by the processor the contents of processing performed, Getting Starte SL and at least one region of the output buffer for storing the data of processing results of the processing by the processor, each pre Kisho management after designating the carry out to the processor per, based on dependencies between the tasks, regions and the dependency input buffer according to the dependencies Area for output buffer involved, rather than an external memory provided outside of said processing elements, information processing method and performs the designated to be secured in the internal memory is provided.
本発明の第3の観点によれば、プロセッシング要素と、前記プロセッシング要素の動作を制御するタスク管理部とを備える情報処理装置に組み込まれる情報処理プログラムであって、前記プロセッシング要素は、タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを含み、前記タスク管理部は、前記プロセッサによる前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ用の領域と、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容と、前記プロセッサによる前記処理の処理結果のデータを格納する少なくとも1つの出力用バッファ用の領域と、のそれぞれを指定した上で前記処理を前記プロセッサに行わせる部分であり、前記タスク管理部が、前記タスク間の依存関係に基づいて、該依存関係に関わる入力用バッファ用の領域及び該依存関係に関わる出力用バッファ用の領域が、前記プロセッシング要素の外部に設けられた外部メモリではなく、前記内部メモリに確保されるように前記指定を行なう、情報処理装置としてコンピュータを機能させることを特徴とする情報処理プログラムが提供される。 According to a third aspect of the present invention, there is provided an information processing program to be incorporated into the information processing apparatus including a flop Rosesshingu element, and a task management unit for controlling the operation of the processing element, the processing element, the task A processor that executes a corresponding process, and an internal memory that the processor occupies and can access. The task management unit is provided for at least one input buffer that stores data to be processed by the processor . and the region, and the content of the processing to be performed on data that the processor is subject to the treatment, pre SL and at least one region of the output buffer for storing the data of processing results of the processing by the processor, the respective is a portion on which the specified Ru to perform the pre Kisho sense to the processor, the task management unit, Based on the dependencies between serial tasks, area for the output buffer associated to the area and the dependency input buffer related to the dependency, rather than external memory provided outside of said processing elements, wherein There is provided an information processing program for causing a computer to function as an information processing apparatus that performs the designation so as to be secured in an internal memory .
本発明によれば、入力用バッファ及び出力用バッファをプロセッシング要素の外部に設けられた外部メモリに確保するか、内部メモリに確保するかをタスク間の依存に応じて管理するため、バッファアクセスのオーバーヘッドを削減して、処理遅延の発生を防ぐことが可能となる。 According to the present invention, whether to secure the input buffer and the output buffer in the external memory provided outside the processing element or in the internal memory is managed according to the dependency between tasks. It is possible to reduce overhead and prevent occurrence of processing delay.
100 タスク情報
110 入力ポートセット
111 入力ポートアドレス
112 入力ポート制御情報
120 出力ポートセット
121 出力ポートアドレス
122 出力ポート制御情報
130 タスク識別子(TID)
140 プログラム識別子(PID)
150 タスク管理情報
160 ストリーム識別子
300 タスク
310 タスク処理
400 ジョブ
410 ジョブ入力ポート
420 ジョブ出力ポート
500 プロセッシング要素(PE)
501 プロセッサ
502 実行制御部
503 内部メモリ
510 外部メモリ
520 通信路
530 タスク管理部
600 タスク群管理情報
610 タスクキュー
611 タスクバッファ
612 プログラム識別子(PID)
613 タスクキュー管理情報
614 タスク情報100
140 Program identifier (PID)
150
501
613 Task
以下では、本発明の実施形態について、図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本発明の一実施形態に係る情報処理システムにおいて実行されるジョブの詳細を示す図である。 FIG. 1 is a diagram showing details of a job executed in an information processing system according to an embodiment of the present invention.
図1に示すように、1つのジョブ400は、少なくとも1つ以上のタスクに分割することが可能である。
As shown in FIG. 1, one
タスク処理部Task1は、タスク300に対応する処理機能を実現する。タスク処理部Task1は、具体的にはプロセッサとそのプログラム又は、再構成可能ハードウェア(HW)とそのコンフィギュレーション等によって実現される。
The task processing unit Task1 realizes a processing function corresponding to the
タスク処理部Task1は、処理の対象となる入力データが入力する入力ポートIport1と、処理結果データが出力される出力ポートOport1を具備する。入力ポートIport1と出力ポートOport1は、それぞれ対応するバッファBuf1とBuf4に接続されている。 The task processing unit Task1 includes an input port Iport1 through which input data to be processed is input and an output port Oport1 through which processing result data is output. The input port Iport1 and the output port Oport1 are connected to the corresponding buffers Buf1 and Buf4, respectively.
入力ポートIport1に接続されたバッファBuf1に必要なデータがバッファされ、出力ポートOport1に接続されたバッファBuf4への書き込みが可能となると、タスク処理部Task1は、他のタスクとは独立に処理を実行することが可能となる。 When necessary data is buffered in the buffer Buf1 connected to the input port Iport1, and writing to the buffer Buf4 connected to the output port Oport1 becomes possible, the task processing unit Task1 executes processing independently of other tasks It becomes possible to do.
図1に示す例では、タスク処理部Task1の入力ポートIport1にバッファBuf1が、また出力ポートOport2にバッファBuf4接続されて、1つのタスク300が構成されている。しかしながら、タスク処理部は複数の入力ポート、複数の出力ポート、又はその双方を備えていてもよい。例えばタスク処理部Task4〜Task7のそれぞれは、2つの入力ポートIport1とIport2と1つの出力ポートOport1を具備している。これらの2つの入力ポートには、それぞれ異なるバッファが接続される。
In the example shown in FIG. 1, one
図1に示すジョブ400は、7個のタスク処理部Task1〜Task7と10個のバッファBuf1〜Buf10を含む。これらのタスク処理部Task1〜Task7に対応して、ジョブ400は複数のタスクに分割され得る。
A
タスク処理部Task2〜Task7も、タスク処理部Task1と同様な構成を有し、対応するタスク処理の機能を実現する。なお、1つのジョブ400が備えるタスク処理部の数は、7に限定されるわけではない。
The task processing units Task2 to Task7 also have the same configuration as the task processing unit Task1, and realize the corresponding task processing function. Note that the number of task processing units included in one
ジョブ400を構成する複数のタスクは互いに依存関係にあり、何れかのタスクの出力結果が、別のタスクの入力データとして利用されてもよい。各タスクについて、入力用のバッファ(当該タスクがアクセスする入力データが格納されているバッファ)と、当該タスクの処理結果が出力される出力用のバッファの情報は、タスク情報100(図3参照)に基づいて管理される。タスク情報100に基づいて、それぞれのタスクについて適切な入出力用のバッファが指定され、タスク間でのデータの受け渡しが行われる。
A plurality of tasks constituting the
例えばタスク処理ProcAを実行するタスク処理部Task1によるタスクは、このタスク処理部Task1と、入力ポートIport1に接続されたバッファBuf1と、出力ポートOport1に接続されたバッファBuf4とから構成される。 For example, a task by the task processing unit Task1 that executes the task processing ProcA includes the task processing unit Task1, a buffer Buf1 connected to the input port Iport1, and a buffer Buf4 connected to the output port Oport1.
更にバッファBuf4は、他のタスクを実行するためのタスク処理部Task4の入力ポートIport1にも接続され、この接続を介して、2つのタスクTask1とTask4とは互いに依存関係にあることになる。 Further, the buffer Buf4 is also connected to the input port Iport1 of the task processing unit Task4 for executing another task, and the two tasks Task1 and Task4 are dependent on each other through this connection.
ジョブ400は3つのジョブ入力ポート410と4つのジョブ出力ポート420を備えている。外部からの入力データはジョブ入力ポート410から入力され、対応するそれぞれのバッファに格納される。またジョブ400の処理結果は、出力側のバッファに格納され、ジョブ出力ポート420からジョブ400の外部に出力される。このジョブ400の処理結果のデータは、他のジョブによって処理され得る。
The
図2は、本発明の一実施形態に係る情報処理システムの一般的な構成を示す図である。 FIG. 2 is a diagram showing a general configuration of an information processing system according to an embodiment of the present invention.
この情報処理システムは、1つの情報処理装置上で実現されてもよい。情報処理システムは、1又は複数のプロセッシング要素(PE)500、外部メモリ510、及びタスク管理部530を含む。これらの各部は、通信路520を介して互いに接続されている。
This information processing system may be realized on one information processing apparatus. The information processing system includes one or more processing elements (PE) 500, an
プロセッシング要素500は、実際にタスクを処理するハードウェア構成を含み、具体的には、プロセッサ501、実行制御部502、及び内部メモリ503を含む。プロセッサ501は、タスクの処理を実際に行い、実行制御部502は、プロセッサ501によるタスクの実行を制御する。また、内部メモリ503は、プロセッサ501が占有してアクセスすることのできるメモリである。
The
プロセッサ501及び実行制御部502は、タスクの実行に際して、タスク情報100(図3参照)を参照する。
The
外部メモリ510は、処理対象となるデータや処理内容を定義するプログラム等を格納する記憶装置である。
The
タスク管理部530は、アプリケーションを構成するジョブやタスクを管理する管理機能を実現する。タスク管理部530は、外部からのデータの到着に応じて予め指定された処理を当該データに施してジョブ管理を行う。またタスク管理部530は、ジョブ内のタスクの実行状況に応じて、次に実行すべきタスクを動的に選択し、タスクの実行と、タスクの実行に必要なプログラムロードのスケジュール管理を動的に行う。
The
図3は、本発明の一実施形態に係る情報処理システムにおいて参照されるタスク情報の詳細を示す図である。 FIG. 3 is a diagram showing details of task information referred to in the information processing system according to the embodiment of the present invention.
図3に示すように、タスク情報100は一例として、入力ポートセット110、出力ポートセット120、タスク識別子(TID)130、プログラム識別子(PID)140、タスク管理情報150、及びストリーム識別子(SID)160等の項目を含む。
As illustrated in FIG. 3, the
タスク識別子130はタスク情報100に対応するタスクを指定し、プログラム識別子140は当該タスクの処理内容を指定する。
The
タスクの実行管理に必要とされるその他の情報は、例えばタスク管理情報150として管理される。また、ストリーム識別子160は、依存関係を持つ可能性があるタスクを識別するための識別子であり、例えば同一のグループ(ストリーム)に属しているタスクについては、同一の識別子が割り当てられてもよい。
Other information necessary for task execution management is managed as
入力ポートセット110は、タスク処理の入力データが格納される、少なくとも1以上のバッファをアドレス指定するための情報を含む。入力ポートセット110は、少なくとも1つの入力ポートアドレス111と、入力ポートアドレスに応じた入力ポート制御情報(IF)112を含む。
The input port set 110 includes information for addressing at least one or more buffers in which task processing input data is stored. The input port set 110 includes at least one
入力ポートアドレス111は、入力データが格納されるバッファをアドレス指定する。入力ポート制御情報112は、当該バッファに入力する入力データが、外部メモリ510に確保されたバッファから入力されるか、あるいは内部メモリ503に確保されたバッファから入力されるかを判定するための情報である。
出力ポートセット120は、タスクの処理結果データが出力される、少なくとも1以上のバッファをアドレス指定するための情報を含む。出力ポートセット120は、少なくとも1つの出力ポートアドレス121と、出力ポートアドレスに応じた出力ポート制御情報(OF)122を含む。
The output port set 120 includes information for addressing at least one buffer to which task processing result data is output. The output port set 120 includes at least one
出力ポートアドレス121は、出力データが格納されるバッファをアドレス指定する。出力ポート制御情報122は、出力データを外部メモリ510内のバッファに格納するか、内部メモリ503内のバッファに格納するかを判定するための情報である。
The
タスク処理を実行するプロセッサ501は、タスクに対応するタスク情報100を参照し、外部メモリ510内のバッファから入力データを取得するか、あるいは内部メモリ503内のバッファから入力データを取得するかを、入力ポートセット110のIF112の指定に応じて切り替える。同様にプロセッサ501は、出力ポートセット120のIF122の指定に応じて、出力データを外部メモリ510内のバッファに出力するか、内部メモリ503内のバッファへ出力するかを切り替える。
The
例えば画像ストリームのデコード処理を行う場合、フレームデータ毎にジョブを生成して処理が行われる。すなわち、連続する複数のフレームデータに対応して複数のジョブが生成され、それぞれのジョブは同様の処理を行うタスクに分割される。例えばそれぞれのフレームデータの処理は、ヘッダ解析、ハフマンデコード、逆量子化等の処理を含み、それぞれの処理がタスクとして実行される。 For example, when image stream decoding processing is performed, a job is generated for each frame data and processing is performed. That is, a plurality of jobs are generated corresponding to a plurality of continuous frame data, and each job is divided into tasks for performing similar processing. For example, the processing of each frame data includes processing such as header analysis, Huffman decoding, and inverse quantization, and each processing is executed as a task.
すなわち、複数のフレームデータに対してそれぞれジョブが生成され、それぞれのジョブは、ヘッダ解析タスク、ハフマンデコードタスク、逆量子化等のタスクに分割される。この場合、1つのジョブ内に3種類のタスクが存在するが、同一種類のタスクはタスクキューという1つのまとまりとして連続処理することができる。 That is, a job is generated for each of a plurality of frame data, and each job is divided into tasks such as a header analysis task, a Huffman decoding task, and an inverse quantization. In this case, there are three types of tasks in one job, but the same type of tasks can be continuously processed as one group called a task queue.
図4は、本発明の一実施形態に係るタスク管理情報の一例を示す図である。このようなタスク管理情報を用いることで、同じ種類毎にタスク群を管理することが可能になる。 FIG. 4 is a diagram showing an example of task management information according to an embodiment of the present invention. By using such task management information, it becomes possible to manage a task group for each same type.
図4に示すタスク群管理情報600は、1又は複数のタスクキュー610(タスクキュー1〜タスクキューN)を含んでいる。タスクキュー610のそれぞれは、同種類のタスクの情報を格納している。
The task
図5は、上述のタスク管理情報に含まれるタスクキューの詳細な構成の一例を示す図である。タスクキュー610は、タスクバッファ611、プログラム識別子(PID)612、及びタスクキュー管理情報613を含む。
FIG. 5 is a diagram illustrating an example of a detailed configuration of a task queue included in the above-described task management information. The
タスクバッファ611には、タスクの生成順に従って複数のタスク情報614が格納される。タスク情報614のそれぞれは、例えば図3に示すタスク情報100に相当する。
A plurality of pieces of
プログラム識別子612はタスクの種類の識別に用いられ、図3に示すプログラム識別子140と同様の情報を含む。
The
タスクキュー管理情報613は、タスクキュー610が管理する複数のタスクの実行管理に必要な情報を含んでいる。タスクキュー管理情報613には、タスクバッファ611に格納されているタスク情報が指定する全てのタスクを実行するのに必要な所要時間(タスクキュー所要処理時間)や、当該全てのタスクの実行を完了すべき時刻(タスクキューデッドライン)が含まれていてもよい。
The task
一般的に、1つのタスクキューにまとめられた連続する同一種類のタスク間にも、依存関係が成立することがある。 In general, a dependency relationship may be established between the same type of tasks that are grouped in one task queue.
図6は、互いに依存関係にある複数ジョブの一例を示す図であり、図6に示す例では、4つのジョブJobj(j=1~4)が図示されている。 FIG. 6 is a diagram illustrating an example of a plurality of jobs that are dependent on each other. In the example illustrated in FIG. 6, four jobs Jobj (j = 1 to 4) are illustrated.
ジョブJobj(j=1~4)は、2つのジョブ入力ポート処理Iport1,jとIport2,j、2つのジョブ出力ポートOport1,jとOport2,j、タスク処理ProcAを行うタスク処理部Task1,j、タスク処理ProcBを行うタスク処理部Task2, j、及び5つのバッファBuf1,j〜Buf5,jを含んでいる。 The job Jobj (j = 1 to 4) includes two job input port processes Iport1, j and Iport2, j, two job output ports Oport1, j and Oport2, j, and task processing units Task1, j that perform task processing ProcA, It includes task processing units Task2, j for performing task processing ProcB, and five buffers Buf1, j to Buf5, j.
ジョブJobjでは、ジョブ入力ポートIport1,jとバッファBuf1,jが接続されており、またジョブ入力ポートIport2,jとバッファBuf2,jが接続されている。タスク処理部Task1, jは2つの入力ポートIport1とOport1を含んでいる。バッファBuf1,jからは入力ポートIport1に入力データが入力し、バッファBuf2,jからは入力ポートIport2に入力データが入力する。 In job Jobj, job input port Iport1, j and buffer Buf1, j are connected, and job input port Iport2, j and buffer Buf2, j are connected. The task processing unit Task1, j includes two input ports Iport1 and Oport1. Input data is input to the input port Iport1 from the buffer Buf1, j, and input data is input to the input port Iport2 from the buffer Buf2, j.
タスク処理部Task1, jはこれらの入力データに対して処理ProcAで指定されるタスク処理を施す。タスク処理部Task1, jは、2つの出力ポートOport1とOport2を含んでおり、Oport1から出力される処理結果データはバッファBuf3,jに、Oport2から出力される処理結果データはバッファBuf5,jにそれぞれ格納される。
また、タスク処理部Task2, jは入力ポートIport1と出力ポートOport1を含んでいる。バッファBuf3,jに格納されたデータは、タスク処理部Task2,jの入力ポートIport1に入力される。タスク処理部Task2,jはこの入力データに対して処理ProcBで指定されるタスク処理を施す。タスク処理部Task2,jの処理結果データは、バッファBuf4,jに格納される。The task processing units Task1, j perform task processing specified by the processing ProcA on these input data. The task processing units Task1 and j include two output ports Oport1 and Oport2. Processing result data output from Oport1 is stored in buffer Buf3, j, and processing result data output from Oport2 is stored in buffer Buf5, j. Stored.
The task processing units Task2, j include an input port Iport1 and an output port Oport1. The data stored in the buffer Buf3, j is input to the input port Iport1 of the task processing unit Task2, j. The task processing unit Task2, j performs the task processing specified by the processing ProcB on this input data. The processing result data of the task processing unit Task2, j is stored in the buffer Buf4, j.
バッファBuf4,jはジョブ出力ポートOport1,jに、バッファBuf5, jはジョブ出力ポートOport2,jに接続されている。このため、タスク処理部Task1,jの処理結果データはバッファBuf5,jを介してジョブ出力ポートOport2,jに出力され、タスク処理部Task2,jの処理結果データはBuf4,jを介してジョブ出力ポートOport2,jに出力される。 The buffer Buf4, j is connected to the job output port Oport1, j, and the buffer Buf5, j is connected to the job output port Oport2, j. Therefore, the processing result data of the task processing unit Task1, j is output to the job output port Oport2, j via the buffer Buf5, j, and the processing result data of the task processing unit Task2, j is output to the job via Buf4, j Output to port Oport2, j.
図6に示す例では、ジョブJobjのジョブ出力ポートOport2,jが、次のジョブJobj+1のジョブ入力ポートIport1,j+1に接続されている。すなわち、前後のジョブの間で依存関係が成立している。 In the example shown in FIG. 6, the job output port Oport2, j of the job Jobj is connected to the job input port Iport1, j + 1 of the next job Jobj + 1. That is, a dependency relationship is established between the preceding and succeeding jobs.
図6に示す最初のジョブJob1の出力データの1系統は、後続のジョブJob2の一方の入力ポートに入力する。すなわち、ジョブJob1の一方の出力ポートOport2,1は、後続のジョブJob2の一方の入力ポートIport1,2に接続されている。 One line of output data of the first job Job1 shown in FIG. 6 is input to one input port of the subsequent job Job2. That is, one output port Oport2,1 of job Job1 is connected to one input port Iport1,2 of subsequent job Job2.
このような経路を介して、ジョブJob1のタスク処理部Task1,1と、ジョブJob2の同種類のタスク処理部Task1,2との間には依存関係が成立する。 Through such a route, a dependency relationship is established between the task processing unit Task1,1 of the job Job1 and the task processing unit Task1,2 of the same type of the job Job2.
ジョブJob2のタスクTask1,2とジョブJob3のタスクTask1,3との間、及びジョブJob3のタスクTask1,3とジョブJob4のタスクTask1,4にも同様な依存関係が存在する。 Similar dependencies exist between the tasks Task1 and 2 of the job Job2 and the tasks Task1 and 3 of the job Job3, and the tasks Task1 and 3 of the job Job3 and the tasks Task1 and 4 of the job Job4.
図7は、図6に示した複数のジョブにおいて同一種類のタスク間に成立する依存関係をさらに詳細に示す図である。 FIG. 7 is a diagram showing in more detail the dependency relationship established between tasks of the same type in a plurality of jobs shown in FIG.
タスク処理部Task1,i-1の処理結果データは、2つの出力ポートのうちOport2に対応付けられているバッファBuf5,i-1に格納される。続くタスク処理部Task1,iには入力ポートIPort1に対応付けられているバッファBuf1,iからデータが入力する。 The processing result data of the task processing unit Task1, i-1 is stored in the buffer Buf5, i-1 associated with Oport2 of the two output ports. Data is input from the buffers Buf1, i associated with the input port IPort1 to the subsequent task processing units Task1, i.
このような場合に、同一のバッファ領域をバッファBuf5,i-1及びバッファBuf1.iとして重複して指定することで、バッファBuf5,i-1からバッファBuf1,iの間の不要なコピー処理を生じさせない。同様に、バッファBuf5,iとバッファBuf1,i+1についても、不要なコピー処理を削減できる。しかしながら、このようなバッファ領域が外部メモリ510上に確保されると、通信路520を介したメモリアクセスが必要とされ、処理遅延が生じる可能性がある。
In such a case, unnecessary copy processing between the buffer Buf5, i-1 and the buffer Buf1, i can be performed by designating the same buffer area as the buffer Buf5, i-1 and the buffer Buf1.i. Don't make it happen. Similarly, unnecessary copy processing can be reduced for the buffers Buf5, i and the buffers Buf1, i + 1. However, if such a buffer area is secured on the
図8は、本発明の一実施形態に係る、プロセッサからバッファ領域へのアクセスの様子を示す図である。説明の簡単化のため、図8では図2に示した情報処理システムから、説明に関わる部分を抜粋して示している。 FIG. 8 is a diagram showing a state of access to the buffer area from the processor according to an embodiment of the present invention. For simplification of explanation, FIG. 8 shows an excerpt from the information processing system shown in FIG.
図8に示す例では、外部メモリ510の特定の領域において、各バッファが確保されている。この図においては、各バッファがすべて異なる領域に確保されているように示されているが、処理に影響がなければ同じ領域に異なるバッファが確保されてもよい。
In the example illustrated in FIG. 8, each buffer is secured in a specific area of the
タスク情報100は、タスク間の依存関係に従って、個別に実行制御部502に転送される。あるいは、複数タスクのタスク情報100が格納されたタスクキュー610(図5参照)が、依存関係に従って一括して実行制御部502に転送されてもよい。
The
実行制御部502は、タスク情報100、又はタスクキュー610に格納されているタスク情報612に従って、プロセッサ501の実行を制御する。すなわちタスク処理部310の処理実行に必要なプログラムに従って、プロセッサ501が動作する。
The
再構成可能プロセッサであれば、プログラムを内部メモリ503に格納した後に当該プログラムを実行したり、プログラムに応じてハードウェアの構成を変えたりすることができる。実行制御部502は、このようなプログラムの内部メモリ503へのロードや、ハードウェア構成の再構成等の制御も行う。
If the processor is a reconfigurable processor, the program can be executed after being stored in the
プロセッサ501は、タスク情報100の入力ポートセット110、及び出力ポートセット120の情報に基づき、指定されたバッファにアクセスして必要な処理を行う。
The
内部メモリ503は、一時的なデータの格納に用いられ得るため、処理内容によっては、外部メモリ510におけるバッファの記憶内容の一部を内部メモリ503に転送し、内部メモリ503に対してRead/Writeしながら処理を進めることもできる。その後、最終的な処理結果を、内部メモリ503から外部メモリ510の所定のバッファに転送してもよい。
Since the
図示の通り、例えばタスクTask1,i-1の実行では、バッファBuf1,i-1、Buf2,i-1に対してReadアクセス、バッファBuf3,i-1、Buf5,i-1に対してWriteアクセスが生じる。タスクT ask1,i、Task1,i+1の実行でも、同様に外部メモリ510内の2つのバッファへのReadアクセスと2つのバッファへのWriteアクセスが生じる。
As shown in the figure, for example, in the execution of task Task1, i-1, Read access to buffers Buf1, i-1, Buf2, i-1 and Write access to buffers Buf3, i-1, Buf5, i-1 Occurs. In the execution of the tasks T ask1, i and Task1, i + 1, read access to the two buffers in the
タスク同士が互いに独立に実行されると、外部メモリ510のバッファへのアクセスがタスクの実行毎に発生する。すなわち、タスク間でのデータの受け渡しは、外部メモリ510 に確保されたバッファを介して行うことになる。従って、連続するタスク間に依存関係があり、直前に実行されたタスクの処理結果を次のタスクが読み込む場合、先に外部メモリ内のバッファに格納されたデータを、改めて当該バッファから読み込まなくてはならない。
When tasks are executed independently of each other, access to the buffer of the
外部メモリ510は、通信路520を経由したアクセスによって、複数のプロセッシング要素で共有して使用される。このため一般的には、プロセッサ501が占有して使える内部メモリ503に比べて、外部メモリ510へのアクセスは遅延が大きい。また、他のプロセッシング要素とのアクセス競合のため、外部メモリ510へのアクセスに遅延を引き起こされる可能性もある。このため、タスクの処理に際して、外部メモリ510へのアクセスを削減して遅延を削減することが望まれる。
The
本実施形態に係る情報処理システムでは、タスクキュー610にまとめられた同種のタスクは、同一のプロセッサ501の同一のプログラムによって実行される。すなわち、外部メモリ510ではなくプロセッサ501が占有して利用可能な内部メモリ503にバッファ領域を確保しデータを受け渡す。
In the information processing system according to the present embodiment, the same type of tasks collected in the
依存関係にある複数のタスクを同一のプロセッサ501によって連続して処理する場合に、当該プロセッサ501に接続された内部メモリ503にバッファ領域を確保することで、外部メモリ510へのアクセスを抑制することができる。従って、外部メモリ510を介したデータの受け渡しに比べてオーバーヘッド(すなわち遅延)を削減できるようになる。
When a plurality of tasks having dependency relations are continuously processed by the
図8に示すように、タスクTask1,i-1の実行では、バッファBuf1,i-1、Buf2,i-1に対してReadアクセス、バッファBuf3,i-1、Buf5,i-1に対してWriteアクセスが生じる。このうちバッファBuf5,i-1は、後続するタスクTask1,iの実行において、入力ポートIport1からReadアクセスされる。 As shown in FIG. 8, in the execution of tasks Task1 and i-1, read access is made to buffers Buf1, i-1, Buf2, and i-1, and buffers Buf3, i-1, and Buf5, i-1. Write access occurs. Among them, the buffer Buf5, i-1 is read-accessed from the input port Iport1 in the subsequent execution of the tasks Task1, i.
そこで、このバッファBuf5,i-1に相当するバッファ領域を、内部メモリ503内に内部メモリBufとして確保する。これによって、タスクTask1,i-1の結果を当該バッファBufに格納し、タスクTask1,iの実行の際は、バッファBufに格納された結果を参照することができる。従って、外部メモリ510内のバッファBuf5,i-1へのWriteアクセス及びReadアクセスをそれぞれ削減することができる。
Therefore, a buffer area corresponding to the buffers Buf5, i-1 is secured in the
同様に、タスクTask1,i-1の処理結果を内部メモリ503内のバッファBufに格納し、タスクTask1,i+1がその結果を参照することで、バッファBuf5,i-1へのWriteアクセス及びReadアクセスをそれぞれ削減できる。
Similarly, the processing result of the task Task1, i-1 is stored in the buffer Buf in the
次に依存のあるタスクがあったとしても、当該タスクがTask1,i+1の直後には実行されなければ、タスクTask1,i+1の処理結果は外部メモリ510内のバッファBuf5,i+1に格納してもよい。
Even if there is a next dependent task, if the task is not executed immediately after Task1, i + 1, the processing result of task Task1, i + 1 is the buffer Buf5, i + 1 in the
タスクTask1,i+1とタスクTask1,i+2(図示せず)が依存関係にあるが、タスクTask1,i+1 とタスクTask1,i+2とが連続して実行されない場合、タスクTask1,i+1の実行とタスクTask1,i+2の実行の間に異なる種類のタスクTaskX(図示せず)が実行される可能性がある。このような場合は、タスクTaskXが内部メモリ503をバッファ領域Bufとして利用することで、内部バッファBufの内容が破壊される可能性がある。従って、タスクTask1,i+2を実行するときは、タスクTask1,i-1と同様に入力ポートIport1に対応付けられている外部メモリ510のバッファBuf5,i+1から入力データを取得すれば、タスクTask1,i+1の出力結果を正しくタスクTask1,i+2に伝達することができる。
If task Task1, i + 1 and task Task1, i + 2 (not shown) are in a dependency relationship, but task Task1, i + 1 and task Task1, i + 2 are not executed continuously, task Task1, There is a possibility that different types of tasks TaskX (not shown) are executed between the execution of i + 1 and the execution of tasks Task1 and i + 2. In such a case, the task TaskX uses the
一般に、同一タスクキュー610内において、依存関係のあるタスクのタスク情報614同士が常に隣接しているわけではない。例えば、2つの入力ストリームのデコードを並列におこなうような場合、それぞれのストリームのフレームデータの処理に必要なタスクに対応するタスク情報614が1つのタスクキュー610内に混在することがある。
In general, in the
同じストリームに属するフレームデータを処理するタスク間には依存関係があるが、異なるストリームに属するフレームデータを処理するタスク間には通常は依存関係がない。しかしながら、1つのタスクキュー610内のタスク情報614についてタスク処理を行う場合、プロセッサ501は、それぞれのタスク間に依存関係が成り立っているかどうかを判断することができないこともある。このような場合には、内部メモリ503上のバッファを用いてデータの受け渡しができたとしても、外部メモリ510内のバッファを用いたデータの受け渡しが行われてもよい。
There is a dependency between tasks that process frame data belonging to the same stream, but there is usually no dependency between tasks that process frame data belonging to different streams. However, when performing task processing on the
タスクを実行するプロセッサ501は、タスク情報を参照して、指定されたタスクの処理を行う。プロセッサ501によって実行されるタスク処理は、プログラム識別子で指定される。具体的なタスク処理は、プロセッサ501のプログラムとして実現されたり、またはプロセッサ501が再構成可能ハードウェアである場合、再構成データにより再構成されたハードウェアとして実現されたりする。
The
プロセッサ501は、タスク情報100における入力ポート制御情報(IF1~IFJ)に応じて、入力ポートとの間のアクセス設定を変更する。すなわち、入力ポート制御情報が外部メモリ510を参照するよう設定されている場合(例えば制御情報の設定値=1であるとする)、対応する入力ポートアドレスを参照して外部メモリ510内のバッファから入力データを取得する。一方、タスク情報100において入力ポート制御情報が内部メモリ503を参照するよう設定されている場合(例えば制御情報の設定値=0であるとする)、内部メモリ503内に確保された内部バッファBufのデータを参照する。
The
内部メモリ503での内部バッファBufのアドレスは、対応する入力ポートアドレスによって指定されてもよい。また、同一のタスク識別子を持つタスクは同じプログラム、又は同じハードウェア構成に対応するため、タスク識別子が同じであるタスク間で内部メモリ503を介してデータの受け渡しをする場合は、プログラムやハードウェア構成に埋め込まれたアドレスを用いて内部メモリ503にアクセスできてもよい。
The address of the internal buffer Buf in the
同様にプロセッサ501は、タスク情報100の出力ポート制御情報(OF1~OFJ)に応じて、出力ポートとの間のアクセス設定を変更する。すなわち、出力ポート制御情報の設定が外部メモリ510を参照するよう設定されている場合(例えば制御情報の設定値=1であるとする)、対応する出力ポートアドレスを参照して外部メモリ510内のバッファへ出力データが出力される。一方、タスク情報100において出力ポート制御情報が内部メモリ503へのアクセスを指定している場合(例えば制御情報の設定値=0であるとする)、内部メモリ503内に確保された内部バッファへ出力データが出力される。
Similarly, the
内部メモリ503における内部バッファのアドレスは、対応する出力ポートアドレスによって指定されてもよい。また、同一のタスク識別子を持つタスクは同じプログラム、又は同じハードウェア構成に対応するため、タスク識別子が同じであるタスク間で内部メモリ503を介してデータの受け渡しをする場合は、プログラムやハードウェア構成に埋め込まれたアドレスを用いて内部メモリ503にアクセスできてもよい。
The address of the internal buffer in the
同一種類のタスクの処理を連続して行う場合、タスク間に依存関係が成立すれば、出力ポート制御情報の設定値を0として、先行タスクの依存を伝えることができる。これによって、出力ポートからの出力データは内部メモリ503のバッファに書き込まれる。その後、続くタスクの対応する入力ポート制御情報の設定値を0とすると、タスク間の依存関係が正しく伝達される。すなわち、続くタスクでは、内部メモリ503から入力データが読み出される。従って、依存関係にあるタスク間でのデータの転送を、内部メモリ503内のバッファを用いて行うことで、オーバーヘッドを削減することができる。
When processing of the same type of task is continuously performed, if a dependency relationship is established between the tasks, the set value of the output port control information is set to 0, and the dependency of the preceding task can be transmitted. As a result, the output data from the output port is written into the buffer of the
図9は、図7に示す3つのタスクが実行される場合の、各タスクのタスク情報100の設定の一例を示す図である。
FIG. 9 is a diagram illustrating an example of setting of
タスクキュー600のタスクバッファ611内には、3つのタスクTask1,i-1、Task1,i、及びTask1,i+1それぞれのタスク情報100(すなわちタスク情報614)が格納されている。それぞれのタスク情報100は、入力ポート制御情報112、出力ポート制御情報122を含む。
The
3つのタスクは、プロセッサ501によってタスクTask1,i-1、Task1,i、Task1,i+1の順に実行される。これらのタスク間では依存関係が成立している。
The three tasks are executed by the
しかしながら、図9に示す例では、すべてのタスクについて、入力ポート制御情報112と出力ポート制御情報122の制御値が1に設定されている。このため、データの転送は、入力ポートアドレス111と出力ポートアドレス121で指定される外部メモリ510内のバッファを介して行われる。
However, in the example shown in FIG. 9, the control values of the input
図10は、図9と同様に3つのタスクが実行される場合の、各タスク情報100の設定の他の一例を示す図である。
FIG. 10 is a diagram illustrating another example of setting of each
以下では、タスクバッファ611の先頭のタスクTask1,i-1は、プロセッサ501により直前に実行されたタスクとの依存はないものとする。
In the following, it is assumed that the first task Task1, i-1 in the
従って、タスクTask1,i-1への入力データは、外部メモリ510において入力ポートアドレスBuf1,i-1、Buf2,i-1で指定される領域から取得される。入力ポート制御情報IF1、IF2の値はそれぞれ1に設定されており、入力ポートに対応付けられたバッファが外部メモリ510内にあることが示されている。
Therefore, the input data to the tasks Task1, i-1 is acquired from the area specified by the input port addresses Buf1, i-1, Buf2, i-1 in the
先頭タスクTask1,i-1の2つの出力ポートのうち出力ポートOport1,i-1は、連続して実行される次のタスクTkas1,iとは依存関係がない。このため、出力ポートOport1,i-1から、外部メモリ510内において出力ポートアドレス1(Buf3,i-1)で指定される領域へ、出力データが送られる。出力ポートアドレス1に対応する出力ポート制御情報OF1の値は1に設定される。
Of the two output ports of the first task Task1, i-1, the output port Oport1, i-1 has no dependency relationship with the next task Tkas1, i to be executed continuously. Therefore, output data is sent from the output port Oport1, i-1 to an area specified by the output port address 1 (Buf3, i-1) in the
一方、先頭タスクTask1,i-1の他方の出力ポートOport2,i-1からの出力データは、直後に実行されるタスクTask1,iの入力ポートIport1,iに入力される。この場合は、内部メモリ503内の内部バッファを介したデータの転送によってオーバーヘッドを削減することが考えられる。従って、対応する出力ポート制御情報OF2の値は0に設定され、内部メモリ503の内部バッファへの出力が指示される。
On the other hand, the output data from the other output port Oport2, i-1 of the first task Task1, i-1 is input to the input port Iport1, i of the task Task1, i to be executed immediately after. In this case, it is conceivable to reduce overhead by transferring data via an internal buffer in the
図10の例では、内部メモリ503内の内部バッファのアドレスは、タスクを実行するプログラムに埋め込まれているものとする。従って、出力ポートアドレス2に対応するアドレスを設定する必要は無い。
In the example of FIG. 10, it is assumed that the address of the internal buffer in the
出力ポート制御情報の設定値が0である場合、対応する出力ポートアドレス121に設定されたアドレスが、内部メモリ503内のバッファ領域のアドレスとして利用されてもよい。
When the set value of the output port control information is 0, the address set in the corresponding
同様に、タスクTask1,iの入力ポートIport1,iの入力ポート制御情報IF1の値は0に設定されており、入力ポートIport1,iには、内部メモリ503内の内部バッファから入力データが入力される。また他方の入力ポート制御情報IF2の値は1に設定されており、外部メモリ510において入力ポートアドレス2(Buf2,i)で指定される領域から入力データが取得される。
Similarly, the value of the input port control information IF1 of the input port Iport1, i of the task Task1, i is set to 0, and input data is input to the input port Iport1, i from the internal buffer in the
このタスクTask1,iの出力ポートの設定はタスクTask1,i-1と同様であり、出力ポート制御情報OF1の値は1、OF2の値は0に設定されている。 The setting of the output port of task Task1, i is the same as that of task Task1, i-1, the value of output port control information OF1 is set to 1 and the value of OF2 is set to 0.
次のタスクTask1,i+1の入力ポートの設定はタスクTask1,iの入力ポートの設定と同様である。すなわち、タスクTask1,i+1入力ポート制御情報IF1の値は0に、IF2の値は1に設定されている。 The setting of the input port of the next task Task1, i + 1 is the same as the setting of the input port of the task Task1, i. That is, the value of task Task1, i + 1 input port control information IF1 is set to 0, and the value of IF2 is set to 1.
このタスクTask1,i+1は3つのタスクのうち最後のタスクであり、出力結果はすべて外部メモリ510に出力する必要がある。このため、タスクTask1,i+1についての出力ポート制御情報OF1、OF2の値は共に1に設定されている。
This task Task1, i + 1 is the last task among the three tasks, and all output results must be output to the
続いて、本発明の一実施形態に係る情報処理システムにおける、タスク管理部530(図2参照)の動作について説明する。 Next, the operation of the task management unit 530 (see FIG. 2) in the information processing system according to an embodiment of the present invention will be described.
上述の通り、1つのタスクキュー610には同一のプログラム(プロセッサが再構成ハードウェアの場合は、同一のハードウェア構成) によって処理される複数のタスクのタスク情報がまとめられている。
As described above, task information of a plurality of tasks processed by the same program (or the same hardware configuration when the processor is reconfigurable hardware) is collected in one
例えば複数の異なるストリームデータを処理する場合は、異なるストリームの処理のためのジョブとそのジョブを構成するタスクが生成され、1つのタスクキュー610に格納されることがある。この場合、ストリームデータの到着順等に依存して、タスクキュー610内では、必ずしも同一ストリームのタスクが連続するわけではない。同一プログラムで実行されるタスクであっても同一のストリームに属さないタスクは依存関係がないので、タスク間の依存は内部メモリを介して転送することはできない。従って、本実施形態に係るタスク管理部530は、次に実行すべきタスクキュー610内のタスクの並べ替えを行い、同一のストリームに属する依存のあるタスクが連続して実行されるようにする。
For example, when processing a plurality of different stream data, a job for processing different streams and a task constituting the job may be generated and stored in one
図11は、本発明の一実施形態に係るタスク管理動作の一例を示すフローチャートである。図11は、プロセッシング要素500で実行するためのタスクキュー610の選択、及びその後に行われる動作を示す。
FIG. 11 is a flowchart showing an example of a task management operation according to an embodiment of the present invention. FIG. 11 illustrates the selection of a
タスク管理部530は、各タスクキューのタスクキュー管理情報613に基づいて、次に実行すべきタスクキューを選択する(ステップS100)。
The
タスク管理部530は、選択されたタスクキュー内で、タスクの並べ替えを行う(ステップS110)。このとき、同一ストリームに属するタスクが連続するように並び替えが行われる。ただし、同一ストリームに属するタスク間での順序は変化しないようにする。
The
これは、タスクバッファ611の先頭から順に、同一ストリームに属するタスク情報614を選択することで実現可能である。タスク情報614(すなわちタスク情報100)が属するストリームは、ストリーム識別子160を参照して判定できる。連続するように並び替えられた同一ストリームに属するタスク群は、タスクグループと称される。
This can be realized by selecting
タスク管理部530は、選択されたタスクキューから1つのタスクグループを選択する(ステップS120)。選択の順序は任意に設定可能であってもよい。
The
タスク管理部530は、選択されたタスクグループの各タスクについて、入力ポート制御情報を設定し(ステップS130)、同様に出力ポート制御情報を設定する(ステップS140)。
The
すなわち、タスク管理部530は、タスク間の依存に関わる入力ポートに対して、タスクグループの先頭のタスクの入力ポート制御情報は1に設定し、先頭以外のタスクの入力ポート制御情報は0に設定する。
That is, the
またタスク管理部530は、タスク間の依存に関わる出力ポートに対して、タスクグループの最後尾のタスクの出力ポート制御情報は1に設定し、最後尾以外のタスクの出力ポート制御情報は0に設定する。
Further, the
タスク管理部530は、タスクグループ内の全てのタスクについて、入力ポート制御情報と出力ポート制御情報の設定が完了したか否かを判定する(ステップS150)。タスクグループ内全てのタスクについて設定が完了していなければ(ステップS150でNo)、処理はステップS130に戻り、入力ポート制御情報と出力ポート制御情報の設定が繰り返される。
The
タスクグループ内全てのタスクについて設定が完了したら(ステップS150でYes)、タスク管理部530は、全てのタスクグループについて設定が完了したか否かを判定する(ステップS160)。設定が完了していないタスクグループがあれば(ステップS160でNo)、タスク管理部503は、ステップS120に戻って次のタスクグループを選択し、ステップS130以降の処理を繰り返す。
When the setting is completed for all tasks in the task group (Yes in step S150), the
全てのタスクグループについて設定が完了していれば(ステップS160でYes)、タスク間のデータ転送の設定が終了する。 If the setting is completed for all task groups (Yes in step S160), the setting of data transfer between tasks is completed.
次に、本発明の一実施形態に係る情報処理システムにおける、プロセッサ501(図2参照)の動作について説明する。 Next, the operation of the processor 501 (see FIG. 2) in the information processing system according to the embodiment of the present invention will be described.
図12は、タスク情報を受け取ったプロセッサ501の動作の一例を示すフローチャートである。
FIG. 12 is a flowchart illustrating an example of the operation of the
プロセッサ501は、実行制御部502からタスク情報100を受け取り(ステップS200)、入力ポートセット110の入力ポート制御情報112を参照して、指定された入力ポートを介して入力データを取得する(ステップS210)。
The
すなわちプロセッサ501は、入力ポート制御情報の設定値が0である場合は内部メモリ503内のバッファから入力データを取得し、入力ポート制御情報の設定値が1である場合には外部メモリ510において入力ポートアドレス111によってアドレス指定されるバッファ領域から入力データを取得する。
That is, the
プロセッサ501は、取得した入力データに対して、タスク情報100のプログラム識別子140が指定するタスクの処理を実行する(ステップS220)。
The
そしてプロセッサ501は、出力ポートセット120の出力ポート制御情報122を参照して、指定されたバッファに出力ポートから処理結果データを出力する(ステップS230)。
Then, the
すなわちプロセッサ501は、出力ポート制御情報の設定値が0である場合は内部メモリ503内のバッファへ処理結果データを出力し、出力ポート制御情報の設定値が1である場合は外部メモリ510において出力ポートアドレス121によってアドレス指定されるバッファ領域へ処理結果データを出力する。
That is, the
図12では、一例として、入力ポートからのデータ入力(ステップS210)、タスクの実行(ステップS220)、出力ポートへのデータ出力(ステップS230)の各処理が別個に行われる場合が図示されている。しかしながら、これらの各処理が混在しても良い。 In FIG. 12, as an example, a case where data input from the input port (step S210), task execution (step S220), and data output to the output port (step S230) are performed separately is illustrated. . However, these processes may be mixed.
以上のように、本実施形態に係る情報処理システムによれば、同一プログラムで連続して実行される複数タスクのタスク情報を同一ストリームに属するタスクグループとしてまとめ、依存のあるタスクをプロセッサにより連続実行できるようにし、さらに連続実行される依存のあるタスクの入力ポート制御情報、出力ポート制御情報をタスク間の依存に従って設定し、依存のあるデータ転送はオーバーヘッドの少ない内部メモリ内の内部バッファを用いて行うことを指示し、プロセッサはタスク情報に従って入力ポートからの入力データの入力、出力ポートからの出力データの出力を行う。 As described above, according to the information processing system according to the present embodiment, task information of a plurality of tasks that are continuously executed by the same program is grouped as a task group that belongs to the same stream, and dependent tasks are continuously executed by a processor. In addition, input port control information and output port control information of dependent tasks that are continuously executed are set according to the dependency between tasks, and dependent data transfer is performed using an internal buffer in the internal memory with low overhead. In response to the task information, the processor inputs input data from the input port and outputs output data from the output port.
従って、依存関係にあり、同一プログラムによって連続して実行される複数タスクを実行する際には、外部メモリアクセスの一部を内部メモリアクセスとすることができる。このため、外部メモリアクセス、及び外部メモリアクセスに伴うオーバーヘッドを削減し、効率的な処理を実現できる。 Therefore, when executing a plurality of tasks that are dependent and are continuously executed by the same program, a part of the external memory access can be set as the internal memory access. Therefore, it is possible to reduce the external memory access and the overhead associated with the external memory access, and to realize efficient processing.
なお、本発明の実施形態に係る情報処理システムは、ハードウェアにより実現することもできるが、コンピュータを情報処理システムその装置として機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。 Note that the information processing system according to the embodiment of the present invention can be realized by hardware, but the computer reads a program for causing the computer to function as an apparatus of the information processing system from a computer-readable recording medium and executes the program. This can also be realized.
また、本発明の実施形態による情報処理方法は、ハードウェアにより実現することもできるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。 In addition, the information processing method according to the embodiment of the present invention can be realized by hardware, but the computer can also read and execute a program for causing the computer to execute the method from a computer-readable recording medium. Can be realized.
更に、上記実施形態では、本実施形態特有のプログラムが、情報処理システムに予め組み込まれているものとして説明した。しかし、コンピュータを、情報処理システムの全部又は一部として動作させ、あるいは、上述の処理を実行させるためのプログラムを、フレキシブルディスク、CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical Disk(Disc))BD(Blu-ray Disc)等のコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。更に、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波にプログラムを重畳させて、コンピュータにダウンロード等してプログラムを実行してもよい。 Furthermore, in the above-described embodiment, the program unique to this embodiment has been described as being pre-installed in the information processing system. However, a program for causing a computer to operate as all or part of an information processing system or to execute the above-described processing is a flexible disk, a CD-ROM (Compact Disc Read-Only Memory), a DVD (Digital Versatile Disc). ), Stored on a computer-readable recording medium such as an MO (Magneto Optical Disk (Disc)) BD (Blu-ray Disc) and distributed, installed on another computer, and operated as the above-mentioned means, or The above-described steps may be executed. Furthermore, the program may be stored in a disk device or the like included in a server device on the Internet, and the program may be executed by, for example, superimposing the program on a carrier wave and downloading it to a computer.
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。 Moreover, although the above-described embodiment is a preferred embodiment of the present invention, the scope of the present invention is not limited only to the above-described embodiment, and various modifications are made without departing from the gist of the present invention. Implementation in the form is possible.
本願は、日本の特願2010−213704(2010年9月24日に出願)に基づいたものであり、又、特願2010−213704に基づくパリ条約の優先権を主張するものである。特願2010−213704の開示内容は、特願2010−213704を参照することにより本明細書に援用される。 This application is based on Japanese Patent Application No. 2010-213704 (filed on Sep. 24, 2010), and claims the priority of the Paris Convention based on Japanese Patent Application No. 2010-213704. The disclosure of Japanese Patent Application No. 2010-213704 is incorporated herein by reference to Japanese Patent Application No. 2010-213704.
本発明の代表的な実施の形態が詳細に述べられたが、様々な変更(changes)、置き換え(substitutions)及び選択(alternatives)が請求項で定義された発明の精神と範囲から逸脱することなくなされることが理解されるべきである。また、仮にクレームが出願手続きにおいて補正されたとしても、クレームされた発明の均等の範囲は維持されるものと発明者は意図する。 Although exemplary embodiments of the present invention have been described in detail, various changes, substitutions and alternatives may be made without departing from the spirit and scope of the invention as defined in the claims. It should be understood that this is done. Moreover, even if the claim is amended in the application procedure, the inventor intends that the equivalent scope of the claimed invention is maintained.
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 A part or all of the above-described embodiment can be described as in the following supplementary notes, but is not limited thereto.
(付記1)
タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを具備するプロセッシング要素と、前記プロセッシング要素の動作を制御するタスク管理部とを備え、
前記タスク管理部が、
前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容、及び前記プロセッサによる処理結果のデータを格納する少なくとも1つの出力用バッファを指定し、
前記タスクに対応する処理を前記プロセッサに行わせ、
前記入力用バッファ及び前記出力用バッファを前記プロセッシング要素の外部に設けられた外部メモリに確保するか前記内部メモリに確保するかをタスク間の依存に応じて管理する、
ことを特徴とする情報処理装置。(Appendix 1)
A processor that executes processing corresponding to a task, a processing element that includes an internal memory that the processor occupies and can access, and a task management unit that controls the operation of the processing element,
The task management unit
At least one input buffer for storing the data to be processed, at least one output for storing the contents of processing performed by the processor on the data to be processed, and data of processing results by the processor Specify the buffer for
Causing the processor to perform processing corresponding to the task;
Managing whether to secure the input buffer and the output buffer in an external memory provided outside the processing element or in the internal memory according to the dependency between tasks;
An information processing apparatus characterized by that.
(付記2)
前記タスク管理部は、
前記入力用バッファに格納されたデータを前記プロセッサに入力するための入力ポートを指定し、
前記入力ポートが接続される前記入力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための入力ポート識別情報と、
前記入力用バッファのアドレスと、
を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記入力用バッファから前記処理の対象となるデータを取得することを特徴とする付記1に記載の情報処理装置。(Appendix 2)
The task management unit
Specify an input port for inputting data stored in the input buffer to the processor;
Input port identification information for identifying whether the input buffer to which the input port is connected is secured in the external memory or the internal memory;
An address of the input buffer;
Task information including: to the processor,
The information processing apparatus according to
(付記3)
前記タスク管理部は、
前記プロセッサによる処理結果のデータを前記出力用バッファに格納するための出力ポートを指定し、
前記出力ポートが接続される前記出力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための出力ポート識別情報と、
前記出力ポートが接続される前記出力用バッファのアドレスと、
を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記出力用バッファに前記処理結果のデータを転送することを特徴とする付記1に記載の情報処理装置。(Appendix 3)
The task management unit
Specify an output port for storing the processing result data by the processor in the output buffer;
Output port identification information for identifying in which of the external memory and the internal memory the output buffer to which the output port is connected;
An address of the output buffer to which the output port is connected;
Task information including: to the processor,
The information processing apparatus according to
(付記4)
前記タスク管理部は、
前記入力用バッファに格納されたデータを前記プロセッサに入力するための入力ポートを指定し、
前記入力ポートが接続される前記入力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための入力ポート識別情報と、
前記入力用バッファのアドレスと、
を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記入力用バッファから前記処理の対象となるデータを取得し、
また前記タスク管理部は、
前記プロセッサによる処理結果のデータを前記出力用バッファに格納するための出力ポートを指定し、
前記出力ポートが前記外部メモリと前記内部メモリのいずれに接続されるかを識別するための出力ポート識別情報と、
前記出力ポートが接続される前記出力用バッファのアドレスと、
を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記出力用バッファに前記処理結果のデータを転送することを特徴とする付記1に記載の情報処理装置。(Appendix 4)
The task management unit
Specify an input port for inputting data stored in the input buffer to the processor;
Input port identification information for identifying whether the input buffer to which the input port is connected is secured in the external memory or the internal memory;
An address of the input buffer;
Task information including: to the processor,
The processor acquires data to be processed from the input buffer according to the task information,
In addition, the task management unit
Specify an output port for storing the processing result data by the processor in the output buffer;
Output port identification information for identifying whether the output port is connected to the external memory or the internal memory;
An address of the output buffer to which the output port is connected;
Task information including: to the processor,
The information processing apparatus according to
(付記5)
前記タスク管理部は、
前記処理の対処となるデータが前記内部メモリに確保された前記入力用バッファに格納されている場合は、前記入力ポートが前記内部メモリに接続されるように前記入力ポート識別情報を設定し、前記処理の対象となるデータが格納された領域の前記内部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
前記処理の対処となるデータが前記外部メモリに確保された前記入力用バッファに格納されている場合は、前記入力ポートが前記外部メモリに接続されるように前記入力ポート識別情報を設定し、前記処理の対象となるデータが格納された領域の前記外部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
また前記タスク管理部は、
前記処理結果のデータを前記内部メモリに確保された前記出力用バッファに格納する場合は、前記出力ポートが前記内部メモリに接続されるように前記出力ポート識別情報を設定し、前記処理結果のデータを格納する領域の前記内部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定し、
前記処理結果のデータを前記外部メモリに確保された前記出力用バッファに格納する場合は、前記出力ポートが前記外部メモリに接続されるように前記出力ポート識別情報を設定し、前記処理結果のデータを格納する領域の前記外部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定することを特徴とする付記4に記載の情報処理装置。(Appendix 5)
The task management unit
If the data to be handled by the process is stored in the input buffer secured in the internal memory, the input port identification information is set so that the input port is connected to the internal memory, and Specify the address in the internal memory of the area where the data to be processed is stored as the address of the input buffer,
When the data to be handled by the processing is stored in the input buffer secured in the external memory, the input port identification information is set so that the input port is connected to the external memory, and Specify the address in the external memory of the area where the data to be processed is stored as the address of the input buffer,
In addition, the task management unit
When storing the processing result data in the output buffer secured in the internal memory, the output port identification information is set so that the output port is connected to the internal memory, and the processing result data Specify the address in the internal memory of the area to store the output buffer as an address,
When storing the processing result data in the output buffer secured in the external memory, the output port identification information is set so that the output port is connected to the external memory, and the processing result data The information processing apparatus according to
(付記6)
複数のプロセッシング要素を具備するハードウェア部を更に備えることを特徴とする付記1乃至5の何れか1に記載の情報処理装置。(Appendix 6)
6. The information processing apparatus according to any one of
(付記7)
前記タスク管理部は、
同一のプログラム識別子を持つ複数のタスクのタスク情報を1つのタスクキューに、前記タスクが生成される順に格納し、
前記タスクキューを前記プロセッサに渡し、
前記プロセッサは、前記タスクキューに従って、前記複数のタスクを実行することを特徴とする付記1乃至6の何れか1に記載の情報処理装置。(Appendix 7)
The task management unit
Store task information of a plurality of tasks having the same program identifier in one task queue in the order in which the tasks are generated,
Passing the task queue to the processor;
The information processing apparatus according to any one of
(付記8)
前記タスク情報は、タスク間の依存関係を示すストリーム識別子情報を含み、
前記タスク管理部は、
同じストリーム識別子を持つ複数のタスクが連続して実行され、同一のストリーム識別子を持つ複数のタスク間での実行順序が変わらないように、前記タスクキューに格納されている前記複数のタスクのタスク情報を、前記ストリーム識別子を参照して並べ替えることを特徴とする付記7に記載の情報処理装置。(Appendix 8)
The task information includes stream identifier information indicating a dependency relationship between tasks,
The task management unit
Task information of the plurality of tasks stored in the task queue so that a plurality of tasks having the same stream identifier are continuously executed and the execution order between the plurality of tasks having the same stream identifier does not change. The information processing apparatus according to
(付記9)
前記タスク管理部は、
同じストリーム識別子を持つタスクからなるタスクグループにおいて、他のタスクとの間に依存関係があるタスクについて、
前記依存関係に関わる入力ポートが、前記内部メモリに確保された前記入力用バッファに接続されるように前記タスク情報を設定することを特徴とする付記8に記載の情報処理装置。(Appendix 9)
The task management unit
In a task group consisting of tasks with the same stream identifier, for tasks that have a dependency relationship with other tasks,
9. The information processing apparatus according to appendix 8, wherein the task information is set so that an input port related to the dependency relationship is connected to the input buffer secured in the internal memory.
(付記10)
前記タスク管理部は、
同じストリーム識別子を持つタスクからなるタスクグループにおいて、他のタスクとの間に依存関係があるタスクについて、
前記依存関係に関わる出力ポートが、前記内部メモリに確保された前記出力用バッファに接続されるように前記タスク情報を設定する付記9に記載の情報処理装置。(Appendix 10)
The task management unit
In a task group consisting of tasks with the same stream identifier, for tasks that have a dependency relationship with other tasks,
The information processing apparatus according to
(付記11)
タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを備えるプロセッシング要素を具備する情報処理装置において用いられる情報処理方法であって、
前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容、及び前記プロセッサによる処理結果のデータを格納する少なくとも1つの出力用バッファを指定し、
前記タスクに対応する処理を前記プロセッサに行わせ、
前記入力用バッファ及び前記出力用バッファを前記プロセッシング要素の外部に設けられた外部メモリに確保するか前記内部メモリに確保するかをタスク間の依存に応じて管理することを特徴とする情報処理方法。(Appendix 11)
An information processing method used in an information processing apparatus including a processor that executes processing corresponding to a task, and a processing element that includes an internal memory that is occupied and accessible by the processor,
At least one input buffer for storing the data to be processed, at least one output for storing the contents of processing performed by the processor on the data to be processed, and data of processing results by the processor Specify the buffer for
Causing the processor to perform processing corresponding to the task;
An information processing method for managing whether to secure the input buffer and the output buffer in an external memory provided outside the processing element or in the internal memory according to dependency between tasks .
(付記12)
前記入力用バッファに格納されたデータを前記プロセッサに入力するための入力ポートを指定し、
前記入力ポートが接続される前記入力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための入力ポート識別情報と、前記入力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記入力用バッファから前記処理の対象となるデータを取得することを特徴とする付記11に記載の情報処理方法。(Appendix 12)
Specify an input port for inputting data stored in the input buffer to the processor;
Task information including input port identification information for identifying whether the input buffer to which the input port is connected is reserved in the external memory or the internal memory, and an address of the input buffer To the processor,
The information processing method according to
(付記13)
前記プロセッサによる処理結果のデータを前記出力用バッファに格納するための出力ポートを指定し、
前記出力ポートが接続される前記出力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための出力ポート識別情報と、前記出力ポートが接続される前記出力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記出力用バッファに前記処理結果のデータを転送することを特徴とする付記11に記載の情報処理方法。(Appendix 13)
Specify an output port for storing the processing result data by the processor in the output buffer;
Output port identification information for identifying whether the output buffer to which the output port is connected is secured in the external memory or the internal memory, and the output buffer to which the output port is connected Task information including an address to the processor,
12. The information processing method according to
(付記14)
前記入力用バッファに格納されたデータを前記プロセッサに入力するための入力ポートを指定し、
前記入力ポートが接続される前記入力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための入力ポート識別情報と、
前記入力用バッファのアドレスと、
を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記入力用バッファから前記処理の対象となるデータを取得し、
また、
前記プロセッサによる処理結果のデータを前記出力用バッファに格納するための出力ポートを指定し、
前記出力ポートが前記外部メモリと前記内部メモリのいずれに接続されるかを識別するための出力ポート識別情報と、前記出力ポートが接続される前記出力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記出力用バッファに前記処理結果のデータを転送することを特徴とする付記11に記載の情報処理方法。(Appendix 14)
Specify an input port for inputting data stored in the input buffer to the processor;
Input port identification information for identifying whether the input buffer to which the input port is connected is secured in the external memory or the internal memory;
An address of the input buffer;
Task information including: to the processor,
The processor acquires data to be processed from the input buffer according to the task information,
Also,
Specify an output port for storing the processing result data by the processor in the output buffer;
Task information including output port identification information for identifying whether the output port is connected to the external memory or the internal memory, and an address of the output buffer to which the output port is connected To the processor,
12. The information processing method according to
(付記15)
前記処理の対処となるデータが前記内部メモリに確保された前記入力用バッファに格納されている場合は、前記入力ポートが前記内部メモリに接続されるように前記入力ポート識別情報を設定し、前記処理の対象となるデータが格納された領域の前記内部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
前記処理の対処となるデータが前記外部メモリに確保された前記入力用バッファに格納されている場合は、前記入力ポートが前記外部メモリに接続されるように前記入力ポート識別情報を設定し、前記処理の対象となるデータが格納された領域の前記外部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
また、
前記処理結果のデータを前記内部メモリに確保された前記出力用バッファに格納する場合は、前記出力ポートが前記内部メモリに接続されるように前記出力ポート識別情報を設定し、前記処理結果のデータを格納する領域の前記内部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定し、
前記処理結果のデータを前記外部メモリに確保された前記出力用バッファに格納する場合は、前記出力ポートが前記外部メモリに接続されるように前記出力ポート識別情報を設定し、前記処理結果のデータを格納する領域の前記外部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定することを特徴とする付記14に記載の情報処理方法。(Appendix 15)
If the data to be handled by the process is stored in the input buffer secured in the internal memory, the input port identification information is set so that the input port is connected to the internal memory, and Specify the address in the internal memory of the area where the data to be processed is stored as the address of the input buffer,
When the data to be handled by the processing is stored in the input buffer secured in the external memory, the input port identification information is set so that the input port is connected to the external memory, and Specify the address in the external memory of the area where the data to be processed is stored as the address of the input buffer,
Also,
When storing the processing result data in the output buffer secured in the internal memory, the output port identification information is set so that the output port is connected to the internal memory, and the processing result data Specify the address in the internal memory of the area to store the output buffer as an address,
When storing the processing result data in the output buffer secured in the external memory, the output port identification information is set so that the output port is connected to the external memory, and the processing result data 15. The information processing method according to appendix 14, wherein an address in the external memory of an area for storing is specified as an address of the output buffer.
(付記16)
前記情報処理装置は、複数のプロセッシング要素を具備するハードウェア部を更に具備することを特徴とする付記11乃至15の何れか1に記載の情報処理方法。(Appendix 16)
16. The information processing method according to any one of
(付記17)
同一のプログラム識別子を持つ複数のタスクのタスク情報を1つのタスクキューに、前記タスクが生成される順に格納し、
前記タスクキューを前記プロセッサに渡し、
前記プロセッサは、前記タスクキューに従って、前記複数のタスクを実行することを特徴とする付記11乃至16の何れか1に記載の情報処理方法。(Appendix 17)
Store task information of a plurality of tasks having the same program identifier in one task queue in the order in which the tasks are generated,
Passing the task queue to the processor;
The information processing method according to any one of
(付記18)
前記タスク情報は、タスク間の依存関係を示すストリーム識別子情報を含み、
同じストリーム識別子を持つ複数のタスクが連続して実行され、同一のストリーム識別子を持つ複数のタスク間での実行順序が変わらないように、前記タスクキューに格納されている前記複数のタスクのタスク情報を、前記ストリーム識別子を参照して並べ替えることを特徴とする付記17に記載の情報処理方法。(Appendix 18)
The task information includes stream identifier information indicating a dependency relationship between tasks,
Task information of the plurality of tasks stored in the task queue so that a plurality of tasks having the same stream identifier are continuously executed and the execution order between the plurality of tasks having the same stream identifier does not change. 18. The information processing method according to appendix 17, wherein the information is rearranged with reference to the stream identifier.
(付記19)
同じストリーム識別子を持つタスクからなるタスクグループにおいて、他のタスクとの間に依存関係があるタスクについて、前記依存関係に関わる入力ポートが、前記内部メモリに確保された前記入力用バッファに接続されるように前記タスク情報が設定されることを特徴とする付記18に記載の情報処理方法。(Appendix 19)
In a task group consisting of tasks having the same stream identifier, for a task having a dependency relationship with another task, an input port related to the dependency relationship is connected to the input buffer secured in the internal memory. The information processing method according to appendix 18, wherein the task information is set as described above.
(付記20)
同じストリーム識別子を持つタスクからなるタスクグループにおいて、他のタスクとの間に依存関係があるタスクについて、前記依存関係に関わる出力ポートが、前記内部メモリに確保された前記出力用バッファに接続されるように前記タスク情報が設定されることを特徴とする付記19に記載の情報処理方法。(Appendix 20)
In a task group consisting of tasks having the same stream identifier, for a task having a dependency relationship with another task, an output port related to the dependency relationship is connected to the output buffer secured in the internal memory. The information processing method according to appendix 19, wherein the task information is set as described above.
(付記21)
タスクに対応する処理を実行するプロセッサと、前記プロセッサが占有してアクセス可能な内部メモリを具備するプロセッシング要素と、前記プロセッサの動作を制御するタスク管理部とを備える情報処理装置に組み込まれる情報処理プログラムであって、
前記タスク管理部が、
前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容、及び前記プロセッサによる処理結果のデータを格納する少なくとも1つの出力用バッファを指定し、
前記タスクに対応する処理を前記プロセッサに行わせ、
前記入力用バッファ及び前記出力用バッファを前記プロセッシング要素の外部に設けられた外部メモリに確保するか前記内部メモリに確保するかをタスク間の依存に応じて管理する、
情報処理装置としてコンピュータを機能させることを特徴とする情報処理プログラム。(Appendix 21)
Information processing incorporated in an information processing apparatus including a processor that executes processing corresponding to a task, a processing element that includes an internal memory that the processor occupies and can access, and a task management unit that controls the operation of the processor A program,
The task management unit
At least one input buffer for storing the data to be processed, at least one output for storing the contents of processing performed by the processor on the data to be processed, and data of processing results by the processor Specify the buffer for
Causing the processor to perform processing corresponding to the task;
Managing whether to secure the input buffer and the output buffer in an external memory provided outside the processing element or in the internal memory according to the dependency between tasks;
An information processing program for causing a computer to function as an information processing apparatus.
(付記22)
前記タスク管理部が、
前記入力用バッファに格納されたデータを前記プロセッサに入力するための入力ポートを指定し、
前記入力ポートが接続される前記入力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための入力ポート識別情報と、前記入力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記入力用バッファから前記処理の対象となるデータを取得することを特徴とする付記21に記載の情報処理プログラム。(Appendix 22)
The task management unit
Specify an input port for inputting data stored in the input buffer to the processor;
Task information including input port identification information for identifying whether the input buffer to which the input port is connected is reserved in the external memory or the internal memory, and an address of the input buffer To the processor,
The information processing program according to appendix 21, wherein the processor acquires data to be processed from the input buffer according to the task information.
(付記23)
前記タスク管理部が、
前記プロセッサによる処理結果のデータを前記出力用バッファに格納するための出力ポートを指定するし、
前記出力ポートが接続される前記出力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための出力ポート識別情報と、前記出力ポートが接続される前記出力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記出力用バッファに前記処理結果のデータを転送することを特徴とする付記21に記載の情報処理プログラム。(Appendix 23)
The task management unit
Specify an output port for storing data of a processing result by the processor in the output buffer;
Output port identification information for identifying whether the output buffer to which the output port is connected is secured in the external memory or the internal memory, and the output buffer to which the output port is connected Task information including an address to the processor,
The information processing program according to appendix 21, wherein the processor transfers data of the processing result to the output buffer according to the task information.
(付記24)
前記タスク管理部が、
前記入力用バッファに格納されたデータを前記プロセッサに入力するための入力ポートを指定し、
前記入力ポートが接続される前記入力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための入力ポート識別情報と、前記入力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記入力用バッファから前記処理の対象となるデータを取得し、
また前記タスク管理部が、
前記プロセッサによる処理結果のデータを前記出力用バッファに格納するための出力ポートを指定し、
前記出力ポートが前記外部メモリと前記内部メモリのいずれに接続されるかを識別するための出力ポート識別情報と、前記出力ポートが接続される前記出力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記出力用バッファに前記処理結果のデータを転送することを特徴とする付記21に記載の情報処理プログラム。(Appendix 24)
The task management unit
Specify an input port for inputting data stored in the input buffer to the processor;
Task information including input port identification information for identifying whether the input buffer to which the input port is connected is reserved in the external memory or the internal memory, and an address of the input buffer To the processor,
The processor acquires data to be processed from the input buffer according to the task information,
In addition, the task management unit
Specify an output port for storing the processing result data by the processor in the output buffer;
Task information including output port identification information for identifying whether the output port is connected to the external memory or the internal memory, and an address of the output buffer to which the output port is connected To the processor,
The information processing program according to appendix 21, wherein the processor transfers data of the processing result to the output buffer according to the task information.
(付記25)
前記タスク管理部が、
前記処理の対処となるデータが前記内部メモリに確保された前記入力用バッファに格納されている場合は、
前記入力ポートが前記内部メモリに接続されるように前記入力ポート識別情報を設定し、
前記処理の対象となるデータが格納された領域の前記内部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
前記処理の対処となるデータが前記外部メモリに確保された前記入力用バッファに格納されている場合は、
前記入力ポートが前記外部メモリに接続されるように前記入力ポート識別情報を設定し、
前記処理の対象となるデータが格納された領域の前記外部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
また前記タスク管理部が、
前記処理結果のデータを前記内部メモリに確保された前記出力用バッファに格納する場合は、
前記出力ポートが前記内部メモリに接続されるように前記出力ポート識別情報を設定し、
前記処理結果のデータを格納する領域の前記内部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定し、
前記処理結果のデータを前記外部メモリに確保された前記出力用バッファに格納する場合は、
前記出力ポートが前記外部メモリに接続されるように前記出力ポート識別情報を設定し、
前記処理結果のデータを格納する領域の前記外部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定することを特徴とする付記24に記載の情報処理プログラム。(Appendix 25)
The task management unit
When the data to be dealt with by the processing is stored in the input buffer secured in the internal memory,
Setting the input port identification information so that the input port is connected to the internal memory;
Specify the address in the internal memory of the area where the data to be processed is stored as the address of the input buffer,
When the data to be handled by the process is stored in the input buffer secured in the external memory,
Setting the input port identification information such that the input port is connected to the external memory;
Specify the address in the external memory of the area where the data to be processed is stored as the address of the input buffer,
In addition, the task management unit
When storing the processing result data in the output buffer secured in the internal memory,
Setting the output port identification information such that the output port is connected to the internal memory;
Specify the address in the internal memory of the area for storing the processing result data as the output buffer address;
When storing the processing result data in the output buffer secured in the external memory,
Setting the output port identification information such that the output port is connected to the external memory;
25. The information processing program according to appendix 24, wherein an address in the external memory of an area for storing the processing result data is designated as an address of the output buffer.
(付記26)
前記情報処理装置は、複数のプロセッシング要素を具備するハードウェア部を更に具備することを特徴とする付記21乃至25の何れか1に記載の情報処理プログラム。(Appendix 26)
26. The information processing program according to any one of appendices 21 to 25, wherein the information processing apparatus further includes a hardware unit including a plurality of processing elements.
(付記27)
前記タスク管理部が、
同一のプログラム識別子を持つ複数のタスクのタスク情報を1つのタスクキューに、前記タスクが生成される順に格納し、
前記タスクキューを前記プロセッサに渡し、
前記プロセッサは、前記タスクキューに従って、前記複数のタスクを実行することを特徴とする付記21乃至26の何れか1に記載の情報処理プログラム。(Appendix 27)
The task management unit
Store task information of a plurality of tasks having the same program identifier in one task queue in the order in which the tasks are generated,
Passing the task queue to the processor;
The information processing program according to any one of appendices 21 to 26, wherein the processor executes the plurality of tasks in accordance with the task queue.
(付記28)
前記タスク情報は、タスク間の依存関係を示すストリーム識別子情報を含み、
前記タスク管理部が、
同じストリーム識別子を持つ複数のタスクが連続して実行され、同一のストリーム識別子を持つ複数のタスク間での実行順序が変わらないように、前記タスクキューに格納されている前記複数のタスクのタスク情報を、前記ストリーム識別子を参照して並べ替えることを特徴とする付記27に記載の情報処理プログラム。(Appendix 28)
The task information includes stream identifier information indicating a dependency relationship between tasks,
The task management unit
Task information of the plurality of tasks stored in the task queue so that a plurality of tasks having the same stream identifier are continuously executed and the execution order between the plurality of tasks having the same stream identifier does not change. 28. The information processing program according to appendix 27, wherein the information is rearranged with reference to the stream identifier.
(付記29)
前記タスク管理部が、
同じストリーム識別子を持つタスクからなるタスクグループにおいて、他のタスクとの間に依存関係があるタスクについて、
前記依存関係に関わる入力ポートが、前記内部メモリに確保された前記入力用バッファに接続されるように前記タスク情報を設定することを特徴とする付記28に記載の情報処理プログラム。(Appendix 29)
The task management unit
In a task group consisting of tasks with the same stream identifier, for tasks that have a dependency relationship with other tasks,
29. The information processing program according to appendix 28, wherein the task information is set so that an input port related to the dependency relationship is connected to the input buffer secured in the internal memory.
(付記30)
前記タスク管理部が、
同じストリーム識別子を持つタスクからなるタスクグループにおいて、他のタスクとの間に依存関係があるタスクについて、
前記依存関係に関わる出力ポートが、前記内部メモリに確保された前記出力用バッファに接続されるように前記タスク情報を設定することを特徴とする付記29に記載の情報処理プログラム。(Appendix 30)
The task management unit
In a task group consisting of tasks with the same stream identifier, for tasks that have a dependency relationship with other tasks,
The information processing program according to appendix 29, wherein the task information is set so that an output port related to the dependency relationship is connected to the output buffer secured in the internal memory.
本発明は、音声ストリーム、画像ストリーム等の複数のメディアのエンコード、デコードを行うマルチメディア処理装置や、ネットワークのパケットデータ等の処理を行う、ネットワーク処理への適用が可能である。 The present invention can be applied to a multimedia processing apparatus that performs encoding and decoding of a plurality of media such as an audio stream and an image stream, and network processing that performs processing of network packet data and the like.
Claims (10)
前記プロセッシング要素は、タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを含み、
前記タスク管理部は、前記プロセッサによる前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ用の領域と、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容と、前記プロセッサによる前記処理の処理結果のデータを格納する少なくとも1つの出力用バッファ用の領域と、のそれぞれを指定した上で前記処理を前記プロセッサに行わせる部分であり、
前記タスク管理部が、前記タスク間の依存関係に基づいて、該依存関係に関わる入力用バッファ用の領域及び該依存関係に関わる出力用バッファ用の領域が、前記プロセッシング要素の外部に設けられた外部メモリではなく、前記内部メモリに確保されるように前記指定を行なうことを特徴とする情報処理装置。 An information processing apparatus comprising a processing element and a task management unit that controls the operation of the processing element,
The processing element includes a processor that executes processing corresponding to a task , and an internal memory that the processor occupies and can access ,
The task management unit includes at least one region of the input buffer for storing the data to be the process by the processor, the details of a process performed on data that the processor is subject to the treatment, before and at least one region of the output buffer for storing the data of said processing of the processing result of the serial processor is a portion of the front Kisho physical Ru was performed to the processor on the specified respectively,
Based on the dependency relationship between the tasks , the task management unit is provided with an input buffer region related to the dependency relationship and an output buffer region related to the dependency relationship outside the processing element. An information processing apparatus that performs the designation so as to be secured not in an external memory but in the internal memory .
前記入力用バッファに格納されたデータを前記プロセッサに入力するための入力ポートを指定し、
前記入力ポートが接続される前記入力用バッファが、前記外部メモリと前記内部メモリのいずれに確保されるかを識別するための入力ポート識別情報と、前記入力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記入力用バッファから前記処理の対象となるデータを取得し、
また前記タスク管理部は、
前記プロセッサによる処理結果のデータを前記出力用バッファに格納するための出力ポートを指定し、
前記出力ポートが前記外部メモリと前記内部メモリのいずれに接続されるかを識別するための出力ポート識別情報と、前記出力ポートが接続される前記出力用バッファのアドレスと、を含むタスク情報を前記プロセッサに渡し、
前記プロセッサは、前記タスク情報に応じて前記出力用バッファに前記処理結果のデータを転送することを特徴とする請求項1に記載の情報処理装置。 The task management unit
Specify an input port for inputting data stored in the input buffer to the processor;
Task information including input port identification information for identifying whether the input buffer to which the input port is connected is reserved in the external memory or the internal memory, and an address of the input buffer To the processor,
The processor acquires data to be processed from the input buffer according to the task information,
In addition, the task management unit
Specify an output port for storing the processing result data by the processor in the output buffer;
Task information including output port identification information for identifying whether the output port is connected to the external memory or the internal memory, and an address of the output buffer to which the output port is connected To the processor,
The information processing apparatus according to claim 1, wherein the processor transfers data of the processing result to the output buffer according to the task information.
前記処理の対象となるデータが前記内部メモリに確保された前記入力用バッファに格納されている場合は、前記入力ポートが前記内部メモリに接続されるように前記入力ポート識別情報を設定し、前記処理の対象となるデータが格納された領域の前記内部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
前記処理の対象となるデータが前記外部メモリに確保された前記入力用バッファに格納されている場合は、前記入力ポートが前記外部メモリに接続されるように前記入力ポート識別情報を設定し、前記処理の対象となるデータが格納された領域の前記外部メモリにおけるアドレスを前記入力用バッファのアドレスとして指定し、
また前記タスク管理部は、
前記処理結果のデータを前記内部メモリに確保された前記出力用バッファに格納する場合は、前記出力ポートが前記内部メモリに接続されるように前記出力ポート識別情報を設定し、前記処理結果のデータを格納する領域の前記内部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定し、
前記処理結果のデータを前記外部メモリに確保された前記出力用バッファに格納する場合は、前記出力ポートが前記外部メモリに接続されるように前記出力ポート識別情報を設定し、前記処理結果のデータを格納する領域の前記外部メモリにおけるアドレスを前記出力用バッファのアドレスとして指定することを特徴とする請求項2に記載の情報処理装置。 The task management unit
If data to be subject to the processing is stored in the input buffer secured in the internal memory, and set the input port identification information as the input port is connected to said internal memory, Specify the address in the internal memory of the area where the data to be processed is stored as the address of the input buffer,
If data to be subject to the processing is stored in the input buffer that is reserved in the external memory, set the input port identification information as the input port is connected to said external memory, Specify the address in the external memory of the area where the data to be processed is stored as the address of the input buffer,
In addition, the task management unit
When storing the processing result data in the output buffer secured in the internal memory, the output port identification information is set so that the output port is connected to the internal memory, and the processing result data Specify the address in the internal memory of the area to store the output buffer as an address,
When storing the processing result data in the output buffer secured in the external memory, the output port identification information is set so that the output port is connected to the external memory, and the processing result data The information processing apparatus according to claim 2, wherein an address in the external memory of an area for storing data is designated as an address of the output buffer.
前記タスク管理部は、前記複数のプロセッシング要素それぞれの動作を制御することを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。 The information processing apparatus, a plurality of the processing elements,
The information processing apparatus according to claim 1 , wherein the task management unit controls operations of the plurality of processing elements .
処理内容の種類が同一である複数のタスクを、1つのタスクキューに、前記タスクが生成される順に格納し、
前記タスクキューを前記プロセッサに渡し、
前記プロセッサは、前記タスクキューに従って、前記複数のタスクを実行することを特徴とする請求項2又は請求項3に記載の情報処理装置。 The task management unit
A plurality of tasks having the same processing content type are stored in one task queue in the order in which the tasks are generated,
Passing the task queue to the processor;
The information processing apparatus according to claim 2 , wherein the processor executes the plurality of tasks according to the task queue.
前記タスクキューに格納されている複数のタスクを、
依存関係の有るタスクが連続して実行されるように、且つ、依存関係の有るタスク間での実行順序が変わらないように並べ替えることを特徴とする請求項5に記載の情報処理装置。 Before Symbol task management unit,
A plurality of tasks stored in the task queue are
In so that runs dependency of a task continuously, and information processing apparatus according to claim 5, characterized in that changing base parallel to execution order between the dependent task does not change.
他のタスクとの間に依存関係があるタスクについて、
前記依存関係に関わる入力ポートが、前記内部メモリに確保された前記入力用バッファに接続されるように前記タスク情報を設定することを特徴とする請求項6に記載の情報処理装置。 The task management unit,
For the dependencies tasks between other tasks,
The information processing apparatus according to claim 6, wherein the task information is set so that an input port related to the dependency relationship is connected to the input buffer secured in the internal memory.
他のタスクとの間に依存関係があるタスクについて、
前記依存関係に関わる出力ポートが、前記内部メモリに確保された前記出力用バッファに接続されるように前記タスク情報を設定することを特徴とする請求項7に記載の情報処理装置。 The task management unit,
For the dependencies tasks between other tasks,
The information processing apparatus according to claim 7, wherein the task information is set so that an output port related to the dependency relationship is connected to the output buffer secured in the internal memory.
前記プロセッシング要素は、タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを含み、
当該情報処理方法では、
前記プロセッサによる前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ用の領域と、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容と、前記プロセッサによる前記処理の処理結果のデータを格納する少なくとも1つの出力用バッファ用の領域と、のそれぞれを指定した上で前記処理を前記プロセッサに行わせるにあたり、
前記タスク間の依存関係に基づいて、該依存関係に関わる入力用バッファ用の領域及び該依存関係に関わる出力用バッファ用の領域が、前記プロセッシング要素の外部に設けられた外部メモリではなく、前記内部メモリに確保されるように前記指定を行なうことを特徴とする情報処理方法。 An information processing method of Bei obtain information processing apparatus processing element performs,
The processing element includes a processor that executes processing corresponding to a task, and an internal memory that the processor occupies and can access,
In the information processing method,
And at least one region of the input buffer for storing the data to be the process by the processor, the details of a process performed on data that the processor is subject to the treatment, the treatment with pre-Symbol processor and at least one region of the output buffer for storing the data of the processing result, when each of the previous Kisho management after designating the Ru was performed to the processor,
Based on the dependencies between the tasks, the region of output buffer related to the region, and the dependency of the input buffer related to the dependency, rather than external memory provided outside of said processing elements, wherein An information processing method comprising performing the designation so as to be secured in an internal memory .
前記プロセッシング要素は、タスクに対応する処理を実行するプロセッサ、及び前記プロセッサが占有してアクセス可能な内部メモリを含み、
前記タスク管理部は、前記プロセッサによる前記処理の対象となるデータを格納する少なくとも1つの入力用バッファ用の領域と、前記プロセッサが前記処理の対象となるデータに対して行う処理の内容と、前記プロセッサによる前記処理の処理結果のデータを格納する少なくとも1つの出力用バッファ用の領域と、のそれぞれを指定した上で前記処理を前記プロセッサに行わせる部分であり、
前記タスク管理部が、前記タスク間の依存関係に基づいて、該依存関係に関わる入力用バッファ用の領域及び該依存関係に関わる出力用バッファ用の領域が、前記プロセッシング要素の外部に設けられた外部メモリではなく、前記内部メモリに確保されるように前記指定を行なう、
情報処理装置としてコンピュータを機能させることを特徴とする情報処理プログラム。 And flop Rosesshingu element, an information processing program to be incorporated into the information processing apparatus and a task management unit for controlling the operation of said processing elements,
The processing element includes a processor that executes processing corresponding to a task, and an internal memory that the processor occupies and can access,
The task management unit includes at least one region of the input buffer for storing the data to be the process by the processor, the details of a process performed on data that the processor is subject to the treatment, before and at least one region of the output buffer for storing the data of said processing of the processing result of the serial processor is a portion of the front Kisho physical Ru was performed to the processor on the specified respectively,
Based on the dependency relationship between the tasks , the task management unit is provided with an input buffer region related to the dependency relationship and an output buffer region related to the dependency relationship outside the processing element. The designation is made so as to be secured in the internal memory, not in the external memory.
An information processing program for causing a computer to function as an information processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012534967A JP5825261B2 (en) | 2010-09-24 | 2011-08-18 | Information processing apparatus, method and program thereof |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010213704 | 2010-09-24 | ||
JP2010213704 | 2010-09-24 | ||
PCT/JP2011/068667 WO2012039216A1 (en) | 2010-09-24 | 2011-08-18 | Information processing device, method therefor and program therefor |
JP2012534967A JP5825261B2 (en) | 2010-09-24 | 2011-08-18 | Information processing apparatus, method and program thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2012039216A1 JPWO2012039216A1 (en) | 2014-02-03 |
JP5825261B2 true JP5825261B2 (en) | 2015-12-02 |
Family
ID=45873710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012534967A Active JP5825261B2 (en) | 2010-09-24 | 2011-08-18 | Information processing apparatus, method and program thereof |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5825261B2 (en) |
WO (1) | WO2012039216A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180026327A (en) * | 2016-09-02 | 2018-03-12 | 삼성전자주식회사 | Automatic stream detection and assignment algorithm |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104781789B (en) * | 2012-12-20 | 2018-06-05 | 三菱电机株式会社 | Car-mounted device |
AT514444A2 (en) * | 2013-06-24 | 2015-01-15 | Fts Computertechnik Gmbh | Method and device for timely data transfer to the cyclic tasks in a distributed real-time system |
WO2015194133A1 (en) | 2014-06-19 | 2015-12-23 | 日本電気株式会社 | Arithmetic device, arithmetic device control method, and storage medium in which arithmetic device control program is recorded |
US10656838B2 (en) | 2015-07-13 | 2020-05-19 | Samsung Electronics Co., Ltd. | Automatic stream detection and assignment algorithm |
US10866905B2 (en) | 2016-05-25 | 2020-12-15 | Samsung Electronics Co., Ltd. | Access parameter based multi-stream storage device access |
JP7145094B2 (en) * | 2019-02-05 | 2022-09-30 | Kddi株式会社 | Control device, computer program and information processing method |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11328134A (en) * | 1998-05-14 | 1999-11-30 | Hitachi Ltd | Method for transmitting and receiving data between computers |
JP2002207710A (en) * | 2001-01-11 | 2002-07-26 | Mitsubishi Electric Corp | Processing unit for multi-processor signal |
JP2006099579A (en) * | 2004-09-30 | 2006-04-13 | Toshiba Corp | Information processor and information processing method |
WO2007029421A1 (en) * | 2005-09-05 | 2007-03-15 | Nec Corporation | Information processing device |
JP2007179358A (en) * | 2005-12-28 | 2007-07-12 | Nec Corp | Information processor and method of using reconfiguration device |
WO2009131167A1 (en) * | 2008-04-23 | 2009-10-29 | 日本電気株式会社 | Multiprocessor control apparatus, method therefor, and program therefor |
-
2011
- 2011-08-18 JP JP2012534967A patent/JP5825261B2/en active Active
- 2011-08-18 WO PCT/JP2011/068667 patent/WO2012039216A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11328134A (en) * | 1998-05-14 | 1999-11-30 | Hitachi Ltd | Method for transmitting and receiving data between computers |
JP2002207710A (en) * | 2001-01-11 | 2002-07-26 | Mitsubishi Electric Corp | Processing unit for multi-processor signal |
JP2006099579A (en) * | 2004-09-30 | 2006-04-13 | Toshiba Corp | Information processor and information processing method |
WO2007029421A1 (en) * | 2005-09-05 | 2007-03-15 | Nec Corporation | Information processing device |
JP2007179358A (en) * | 2005-12-28 | 2007-07-12 | Nec Corp | Information processor and method of using reconfiguration device |
WO2009131167A1 (en) * | 2008-04-23 | 2009-10-29 | 日本電気株式会社 | Multiprocessor control apparatus, method therefor, and program therefor |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180026327A (en) * | 2016-09-02 | 2018-03-12 | 삼성전자주식회사 | Automatic stream detection and assignment algorithm |
Also Published As
Publication number | Publication date |
---|---|
JPWO2012039216A1 (en) | 2014-02-03 |
WO2012039216A1 (en) | 2012-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5825261B2 (en) | Information processing apparatus, method and program thereof | |
KR100649107B1 (en) | Method and system for performing real-time operation | |
KR100628492B1 (en) | Method and system for performing real-time operation | |
US7418705B2 (en) | Method and system for performing real-time operation | |
JP5018480B2 (en) | Information processing device | |
US7657890B2 (en) | Scheduling system and method in which threads for performing a real-time operation are assigned to a plurality of processors | |
US7464379B2 (en) | Method and system for performing real-time operation | |
WO2005116830A1 (en) | Signal processing apparatus | |
US20080133899A1 (en) | Context switching method, medium, and system for reconfigurable processors | |
JP5175517B2 (en) | Processor | |
JP4102425B2 (en) | Processor | |
JP2007047968A (en) | Multiprocessor system | |
WO2019178178A1 (en) | Thread scheduling for multithreaded data processing environments | |
JP2010186347A (en) | System, method and program for scheduling job | |
JP5236386B2 (en) | Image decoding apparatus and image decoding method | |
JP2007122337A (en) | Arithmetic unit | |
JP7331482B2 (en) | Arithmetic processing device and information processing device | |
JP2010039860A (en) | Component program controller, method for controlling component program, and program | |
JP4410297B2 (en) | Reconfigurable circuit | |
JP3931883B2 (en) | Job scheduling method, computer system, and job scheduling program | |
JPH11232111A (en) | Information processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150416 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150525 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150730 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150821 |
|
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: 20150915 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150928 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5825261 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |