JP2008527558A - タスクスケジューリングのデータ処理システム及び方法 - Google Patents

タスクスケジューリングのデータ処理システム及び方法 Download PDF

Info

Publication number
JP2008527558A
JP2008527558A JP2007550893A JP2007550893A JP2008527558A JP 2008527558 A JP2008527558 A JP 2008527558A JP 2007550893 A JP2007550893 A JP 2007550893A JP 2007550893 A JP2007550893 A JP 2007550893A JP 2008527558 A JP2008527558 A JP 2008527558A
Authority
JP
Japan
Prior art keywords
data
task
tasks
waiting time
processed
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.)
Withdrawn
Application number
JP2007550893A
Other languages
English (en)
Inventor
ナレンドラナス ウドゥパ
ナガラジュ ブッサ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips NV
Koninklijke Philips Electronics NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips NV, Koninklijke Philips Electronics NV filed Critical Koninklijke Philips NV
Publication of JP2008527558A publication Critical patent/JP2008527558A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Abstract

マルチタスク環境におけるデータ処理システムが提供される。前記データ処理システムは、複数のタスクのインターリーブ処理に対して少なくとも1つの処理ユニット1を有する。前記複数のタスクの各々は、関連付けられた利用可能なデータ及び対応する待機時間を有する。加えて、前記複数のタスクを前記少なくとも1つの処理ユニット1により処理されるようにスケジューリングするタスクスケジューラ2が提供される。タスクスケジューリングは、前記複数のタスクの1つに利用可能なデータの量に基づいて、及び当該タスクにより処理されるデータの待機時間に基づいて実行される。

Description

本発明は、マルチタスク環境(multi-tasking environment)におけるデータ処理システム及びマルチタスクデータ処理環境内でタスクスケジューリング(task scheduling)する方法に関する。
新しい種類のマルチプロセッサ又はマルチコアシステムの性能を向上するために、複数のタスクが、オペレーティングシステムにより、実質的に同時に又はタスクスケジューリングにより複数のタスク間で切り換えることによりインターリーブされた形で実行される。タスクスケジューリング技術は、ラウンドロビン(Round Robin)、RMAのような優先順位ベース又はEDFのような期限ベースのアルゴリズムを含みうる。ラウンドロビン形式に基づくタスクスケジューリングにおいて、実行可能なタスクは、ラウンドロビン技術で確認され、プロセッサ又は処理ユニットで処理されるべきタスクが選択される。優先順位ベースのタスクスケジューリングにおいて、処理ユニットで実行されるべき次のタスクのスケジューリングは、静的又は動的のいずれかで決定されたタスクの各々の優先順位に基づく。タスクの選択は、それぞれ、RMAのように静的に、タスクの頻度、即ち毎秒の回数に基づくEDFのように動的に、又は期限、即ち残っているサイクルに基づいて実行される。EDFは、最良のスケジューリングアルゴリズムと見なされることができるが、しかしながら、残っているサイクルを決定する複雑さのため、ランタイムに及びオンザフライ(on the fly)でタスクスケジューリングを実行することができない。したがって、EDF技術は、実際の埋め込まれたシステムにおいて好ましくなかった。RMAのように静的な優先順位を決定するためのタスクの頻度の使用は、単純であるが、非常に強力かつ効果的なタスクスケジューリング技術である。処理に対する動的なデータ出現(data appearance)が規則的でなく不規則である場合、タスクの頻度に基づく技術は、特にデータ依存性の高いタスクに対して効率的なスケジューリングを実行することができない。
既存のスケジューリング技術の場合、データ出現の不規則性は、不要の高価なコンテキスト切り換え(context switch)並びにキャッシュ破損、キャッシュミス及び過剰なバストラフィックのような関連した性能副産物をもたらす可能性がある。
静的優先順位スケジューリング方式の場合、タスク切り換えは、準備ができているが、処理するのにかなりの時間を要するデータより少ないデータを持つタスクに対して実行されることができ、この結果、コンテキスト切り換えはすぐに実行される。
本発明の目的は、データ出現不規則性を効果的に処理する改良されたタスクスケジューリングを持つデータ処理システムを提供することである。
この目的は、請求項1によるデータ処理システムにより、及び請求項4によるデータ処理システム内でタスクスケジューリングする方法により解決される。
したがって、マルチタスク環境におけるデータ処理システムが提供される。前記データ処理システムは、複数のタスクのインターリーブ処理(interleaved processing)に対する少なくとも1つの処理ユニットを有する。前記複数のタスクの各々は、関連付けられた利用可能なデータ及び対応する待機時間を有する。加えて、タスクスケジューラは、前記複数のタスクを前記少なくとも1つの処理ユニットにより処理されるようにスケジューリングするために提供される。タスクスケジューリングは、前記複数のタスクの1つに利用可能なデータ量に基づいて、及び当該タスクにより処理されるデータの待機時間に基づいて実行される。
したがって、前記タスクのいずれか1つが飢餓状態(starved)になる、即ちスケジュールされないことは避けられることができる。前記タスクスケジューリングはデータの量及び前記データの待機時間に基づくので、両方のパラメータが前記タスクスケジューリングに影響する。
本発明の一態様によると、前記タスクスケジューラは、タスクにより処理されるべき前記データの量及び前記データの待機時間に基づいて前記複数のタスクのスケジューリングを実行する。したがって、前記データの量と前記待機時間との間のトレードオフは、小さな待機時間に対する大量のデータでさえ、それぞれのタスクスケジューリングの確率を増大し、他方で、少量のデータに対する長い待機時間でさえも、タスクスケジューリングの確率を増大するように、実行されることができる。
本発明は、マルチタスクデータ処理環境内でタスクスケジューリングする方法にも関する。処理される準備ができている全てのタスクが識別され、前記複数のタスクの各々は、関連付けられた利用可能なデータ及び対応する待機時間を有する。前記処理される準備ができているタスクの各々に関連付けられた利用可能なデータの量及びこのデータの待機時間が決定される。前記タスクは、利用可能なデータの量及びこのデータの待機時間によって切り換えられる。
本発明の更に他の態様によると、タスクのデータを書き込むのに利用可能なスペースの量及びこのデータの待機時間も、前記タスクスケジューリングに影響する。
本発明のこれら及び他の態様は、以下に記載される実施例を参照して及び以下の図面に関して説明され、明らかになる。
図1は、マルチタスク環境におけるデータ処理システムを示す。前記データ処理システムは、少なくとも1つの処理ユニット1と、タスクスケジューラ2と、キャッシュ3と、バス4と、メインメモリ5とを有する。処理ユニット1は、タスクスケジューラ2及びキャッシュ3を介してバス4に接続される。メインメモリ5もバス4に接続されることができる。1つの処理ユニット1のみが図1に明示的に示されているが、他の処理ユニットも、図1による前記データ処理システムに含まれることができる。
好ましくは、図1による前記データ処理システムは、アプリケーションをストリーミングするように設計される。幾つかのタスク又は複数のタスクは、インターリーブ処理により前記処理ユニットの効率を向上するために処理ユニット1上にマッピングされる。複数のタスクがデータ処理ユニット1により処理されることになるので、前記タスクの一部が、キャッシュ3又はメモリ5内のデータ利用可能性を依然として待機することになる可能性がある一方で、他のタスクが既にデータを中に有し、この結果、処理ユニット1は、前記データの処理を直ちに開始することができる。処理するデータを有するこのようなタスクは、実行可能タスク(ready tasks)と称されることができる。処理されるべきデータを依然として待機しているタスクは、ブロックタスク(blocked tasks)と称されることができる。したがって、前記実行可能タスクの幾つかは、これらのデータが例えばキャッシュ3又はメモリ5において既に利用可能である場合に処理ユニット1による実行を待機していることができる。
本発明によると、前記実行可能タスクの1つをスケジューリングするためにデータの量及びこのデータに関連する待機時間を考慮に入れる動的スケジューリングアルゴリズムが提供される。バイト単位の利用可能なデータサイズとサイクル単位のこのデータの現在の待機時間との積は、データモーメント(data momentum)と称されることができる。
例えば、第1のタスクT1は、データd1が処理ユニット1による処理に利用可能である場合に実行可能タスクになる。前記タスクが出力に書き込む十分なスペースを持つことが仮定される。t1サイクル後、データd2も処理に利用可能になる。t2サイクルの終わりに(t2>t1)、前記データと前記データの待機時間との積は、M1(t)=d1*t2+d2*(t2-t1)として定義される。このような積は、バイト‐サイクル単位のデータモーメントと称される。これは、全ての実行可能タスクに対して計算されることができる。
更に、処理ユニットPU1上にマッピングされるタスクT1、T4及びT6を検討し、タスクT1及びタスクT6は実行可能タスクを構成し、タスクT4はブロックタスクを構成する。前記積又はデータモーメントM1(t)及びM6(t)が、実行可能タスクT1及びT6に対して計算される。この場合、2つのタスクT1及びT6のいずれがより高い積又はデータモーメントを有するかが決定され、このタスクは、次に、即ち次の実行タスク(running task)として処理されるようにスケジューリングされる。前記積又はデータモーメントは、少なくとも増大されるデータ待機時間のために前記タスクが最終的にスケジューリングされるまでサイクルごとに増大する。前記タスクが前記処理ユニットにより処理されるようにスケジューリングされるとすぐに、前記タスクのデータは、前記処理ユニット上の処理のために消費され、この結果、前記タスクの積又はデータモーメントは減少し始め、この結果、前記タスクは、実行可能リストからより高いモーメントを持つ他の実行可能タスクにより置換されることさえできる。
実際のタスクスケジューリングは、2つの形によって、即ちスケジュールアウトする(sheduling out)又はスケジュールインする(scheduling in)ことにより実行されることができる。実行可能タスクがスケジュールインされる、即ち実行タスクとして選択される場合、前記実行可能タスクの中で最も高いデータモーメント又は積を有するタスクが選択される。スケジュールアウトストラテジが実行される場合、現在実行中のタスクは、このタスクのデータモーメントが残りの実行可能タスクのいずれかのデータモーメントの所定のパーセンテージより小さくなる場合に置換される。典型的な数は50%である。しかしながら、他の数も選択されることができる。
データのD個のブロックd1, d2, ...dDを持つ実行可能タスクTのデータモーメントMT(t)は、
MT(t)=d1*(t-td1)+d2*(t-td2)+...+dD*(t-tdD) (1)
のように時間tの関数として計算されることができ、ここで前記データブロックは、時刻td1, td2, ..., tdDに到着する。したがって、前記データモーメントは、
Figure 2008527558
のように計算されることもできる。
図2は、第1の実施例によるタスクスケジューリングのフローチャートを示す。ステップ1において、全ての実行可能タスクが識別され、リストされる。ステップ2において、式(1)又は(2)によって前記データモーメントが、前記実行可能タスクの各々に対して、及び実行タスク、即ち前記処理ユニットにより現在処理されているタスクに対して計算される。ステップ3において、前記実行タスクのデータモーメントが前記リストされた実行可能タスクの最高のデータモーメントの固定パーセンテージ、例えば50%より大きいかどうかが決定される。これが真(true)である場合、前記実行タスクはステップ4において実行され、フローはステップ1に進む。ステップ5において、前記実際に実行中のタスクはスケジュールアウトされ、最高のデータモーメントを有する前記実行可能タスクの1つが前記処理ユニットにより処理されるようにスケジューリングされる。この後に、前記フローはステップ1に進む。
好ましくは前記第1の実施例に基づく第2の実施例によると、前記出力を買い込むスペースの利用可能性が、前記式(1)又は(2)に追加されることもできる。したがって、2つのタスクがおおよそ同じ量のデータモーメントを持つ場合、スペースの実際の利用可能性が、前記2つのタスクを差別化するのに使用されることができる。より多くのスペースモーメント(space momentum)、即ちより長い時間に対してデータを書き込む、より多くのスペースを持つタスクが、より少ないスペースモーメントを持つタスクより好ましい。
書き込むスペースのD個のブロック、例えばs1, s2, ..., sDを持つ実行可能タスクTのスペースモーメントは、
MT(t)=s1*(t-ts1)+s2*(t-ts2)+...+sD*(t-sdD) (3)
のように時間tの関数として計算されることができ、ここで前記データブロックを書き込むスペースは時刻ts1, ts2, ..., tsDに出現する。したがって、前記スペースモーメントは、
Figure 2008527558
のように計算されることもできる。
前記スペースが前記出力を書き込むタスクに利用可能ではないが、前記データモーメントが前記実行可能タスク中で最高である場合、前記コンテキスト切り換えが直ちに生じるので、前記タスクのスケジューリングは役に立たず、この結果、データモーメントベースのタスクスケジューリングの目的は廃止(obsolete)にされる。したがって、総合的モーメントが、前記タスクの各々に対して定義され、前記データモーメント及びスペースモーメントに対するPRODUCT又はMIN演算として定義されることができる。
本発明の他の実施例において、前記タスクの前記総合的モーメントが、前記複数のタスクをスケジューリングするパラメータとして使用されることができる。
したがって、前記総合的モーメントは、
Figure 2008527558
のように計算されることができる。
前記タスクスケジューラは、前記実行可能タスク中の最高の総合的モーメントを持つタスクを、前記処理ユニットにより処理されるように選択する。前記実行タスクの総合的モーメントが前記実行可能リスト中の残りのタスクの最高の総合的モーメントの例えば0.5倍より小さい場合に、スケジュールアウトが実行される。
代わりに又は加えて、前記タスクスケジューリングは、上述のスペースモーメントに基づいて実行されることもできる。
上述のデータ処理システムは、ストリーミングオーディオ/ビデオアプリケーションを処理するマルチプロセスアーキテクチャを構成する。本発明の上述の原理は、次世代TriMedia又は他のメディアプロセッサにおいて実施されることができる。
上述の実施例が、本発明を限定するのではなく説明し、当業者が、添付の請求項の範囲から逸脱することなく多くの代替実施例を設計することができることに注意すべきである。請求項において、括弧間に配置された参照符号は、前記請求項を限定するように解釈されるべきでない。単語"有する"は、請求項に記載された要素又はステップ以外の要素又はステップの存在を除外しない。要素に先行する単語"1つの"は、複数のこのような要素の存在を除外しない。複数の手段を列挙する装置請求項において、これらの手段の幾つかがハードウェアの同一アイテムにより実施されることができる。特定の方策が相互に異なる従属請求項内にあるという単なる事実は、これらの方策の組み合わせが有利に使用されることができないことを示さない。
更に、請求項内の参照符号は、前記請求項の範囲を限定するように構成されるべきでない。
第1の実施例によるデータ処理システムの基本構造のブロック図を示す。 第1の実施例によるタスクスケジューリングのプロセスのフローチャートを示す。

Claims (6)

  1. マルチタスク環境におけるデータ処理システムにおいて、
    複数のタスクのインターリーブ処理に対する少なくとも1つの処理ユニットであって、前記複数のタスクの各々が前記複数のタスクの各々に関連付けられた利用可能なデータ及び対応する待機時間を有する、当該少なくとも1つの処理ユニットと、
    特定のタスクに利用可能なデータの量及びタスクの対応する待機時間に基づいて前記少なくとも1つの処理ユニットにより処理されるように前記複数のタスクをスケジューリングするタスクスケジューラと、
    を有するデータ処理システム。
  2. 前記タスクスケジューラが、前記複数のタスクの1つの前記利用可能なデータの量と前記待機時間との積に基づいて前記複数のタスクのスケジューリングを実行するように構成される、
    請求項1に記載のデータ処理システム。
  3. 前記タスクスケジューラが、前記複数のタスクの1つの前記利用可能なデータのデータブロックと前記データブロックに関連付けられた待機時間との積の和に基づいて前記複数のタスクのスケジューリングを実行するように構成される、
    請求項1又は2に記載のデータ処理システム。
  4. マルチタスクデータ処理システム内でタスクスケジューリングする方法において、
    処理される準備ができている全てのタスクを識別するステップであって、前記複数のタスクの各々が、前記タスクの各々に関連付けられた利用可能なデータ及び対応する待機時間を有する、当該識別するステップと、
    前記処理される準備ができているタスクの各々に関連付けられた利用可能なデータの量及び前記処理される準備ができているタスクの各々に対して前記データを待機する時間を決定するステップと、
    前記処理される準備ができているタスクの前記利用可能なデータの量及び前記データの待機時間によりタスクスケジューリングするステップと、
    を有するタスクスケジューリングする方法。
  5. 現在処理されているタスクの利用可能なデータの量及び対応する待機時間を決定するステップと、
    これらの結果を前記処理される準備ができているタスクの各々に関連付けられた前記利用可能なデータの量及び前記対応する待機時間と比較するステップと、
    前記利用可能なデータの量及び前記関連付けられた待機時間が、前記処理される準備ができているタスクの前記利用可能なデータの量及び前記対応する待機時間の所定のパーセンテージより低い場合に前記現在処理されているタスクをスケジュールアウトするステップと、
    を有する、請求項4に記載のタスクスケジューリングする方法。
  6. 前記処理される準備ができているタスクの各々に関連付けられたデータを書き込むのに利用可能なスペースの量及び前記処理される準備ができているタスクの各々に対して書き込まれるべきデータに対する待機時間を決定するステップ、
    を更に有し、
    タスク切り換えが、前記データを書き込むのに利用可能なスペースの量及び前記書き込まれるべきデータの待機時間に基づく、
    請求項4又は5に記載のタスクスケジューリングする方法。
JP2007550893A 2005-01-13 2006-01-09 タスクスケジューリングのデータ処理システム及び方法 Withdrawn JP2008527558A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05100179 2005-01-13
PCT/IB2006/050071 WO2006075278A1 (en) 2005-01-13 2006-01-09 Data processing system and method of task scheduling

Publications (1)

Publication Number Publication Date
JP2008527558A true JP2008527558A (ja) 2008-07-24

Family

ID=36449007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007550893A Withdrawn JP2008527558A (ja) 2005-01-13 2006-01-09 タスクスケジューリングのデータ処理システム及び方法

Country Status (5)

Country Link
US (1) US20100037234A1 (ja)
EP (1) EP1839147A1 (ja)
JP (1) JP2008527558A (ja)
CN (1) CN101103336A (ja)
WO (1) WO2006075278A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101771178B1 (ko) 2016-05-05 2017-08-24 울산과학기술원 인메모리 캐시를 관리하는 방법
KR101771183B1 (ko) * 2016-05-05 2017-08-24 울산과학기술원 인메모리 캐시를 관리하는 방법
KR20190109638A (ko) * 2018-03-05 2019-09-26 울산과학기술원 분산 파일 시스템을 기반으로 하는 빅데이터 처리 플랫폼의 태스크 스케줄링 방법, 이를 위한 컴퓨터 프로그램 및 컴퓨터 판독 가능 기록 매체
KR102168464B1 (ko) * 2019-05-24 2020-10-21 울산과학기술원 인메모리 캐시를 관리하는 방법

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007264863A (ja) * 2006-03-28 2007-10-11 Hitachi Ltd 業務使用解析装置
US8296767B1 (en) 2007-02-16 2012-10-23 Vmware, Inc. Defining and measuring skew between coscheduled contexts
US8176493B1 (en) 2007-02-16 2012-05-08 Vmware, Inc. Detecting and responding to skew between coscheduled contexts
US8171488B1 (en) * 2007-02-16 2012-05-01 Vmware, Inc. Alternating scheduling and descheduling of coscheduled contexts
US8127301B1 (en) 2007-02-16 2012-02-28 Vmware, Inc. Scheduling selected contexts in response to detecting skew between coscheduled contexts
US8752058B1 (en) 2010-05-11 2014-06-10 Vmware, Inc. Implicit co-scheduling of CPUs
CN101872191B (zh) * 2010-05-20 2012-09-05 北京北方微电子基地设备工艺研究中心有限责任公司 一种生产线设备的工艺任务调度方法及装置
US8959224B2 (en) * 2011-11-17 2015-02-17 International Business Machines Corporation Network data packet processing
WO2013095392A1 (en) * 2011-12-20 2013-06-27 Intel Corporation Systems and method for unblocking a pipeline with spontaneous load deferral and conversion to prefetch
CN104103553B (zh) * 2013-04-12 2017-02-08 北京北方微电子基地设备工艺研究中心有限责任公司 半导体生产设备的数据传输处理方法和系统
US9652286B2 (en) 2014-03-21 2017-05-16 Oracle International Corporation Runtime handling of task dependencies using dependence graphs
CN108549652B (zh) * 2018-03-08 2021-10-29 北京三快在线科技有限公司 酒店动态数据获取方法、装置、电子设备及可读存储介质
CN109032779B (zh) * 2018-07-09 2020-11-24 广州酷狗计算机科技有限公司 任务处理方法、装置、计算机设备及可读存储介质
WO2020111254A1 (ja) 2018-11-29 2020-06-04 ヤマハ発動機株式会社 リーン車両

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5210872A (en) * 1991-06-28 1993-05-11 Texas Instruments Inc. Critical task scheduling for real-time systems
US5442730A (en) * 1993-10-08 1995-08-15 International Business Machines Corporation Adaptive job scheduling using neural network priority functions
US6714960B1 (en) * 1996-11-20 2004-03-30 Silicon Graphics, Inc. Earnings-based time-share scheduling
US6658447B2 (en) * 1997-07-08 2003-12-02 Intel Corporation Priority based simultaneous multi-threading
US6571391B1 (en) * 1998-07-09 2003-05-27 Lucent Technologies Inc. System and method for scheduling on-demand broadcasts for heterogeneous workloads
US6578065B1 (en) * 1999-09-23 2003-06-10 Hewlett-Packard Development Company L.P. Multi-threaded processing system and method for scheduling the execution of threads based on data received from a cache memory
WO2002015591A1 (en) * 2000-08-16 2002-02-21 Koninklijke Philips Electronics N.V. Method of playing multimedia data
US6957431B2 (en) * 2001-02-13 2005-10-18 International Business Machines Corporation System for incrementally computing the maximum cost extension allowable for subsequent execution of each task using fixed percentage of the associated cost
US20040139441A1 (en) * 2003-01-09 2004-07-15 Kabushiki Kaisha Toshiba Processor, arithmetic operation processing method, and priority determination method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101771178B1 (ko) 2016-05-05 2017-08-24 울산과학기술원 인메모리 캐시를 관리하는 방법
KR101771183B1 (ko) * 2016-05-05 2017-08-24 울산과학기술원 인메모리 캐시를 관리하는 방법
KR20190109638A (ko) * 2018-03-05 2019-09-26 울산과학기술원 분산 파일 시스템을 기반으로 하는 빅데이터 처리 플랫폼의 태스크 스케줄링 방법, 이를 위한 컴퓨터 프로그램 및 컴퓨터 판독 가능 기록 매체
KR102045997B1 (ko) 2018-03-05 2019-11-18 울산과학기술원 분산 파일 시스템을 기반으로 하는 빅데이터 처리 플랫폼의 태스크 스케줄링 방법, 이를 위한 컴퓨터 프로그램 및 컴퓨터 판독 가능 기록 매체
KR102168464B1 (ko) * 2019-05-24 2020-10-21 울산과학기술원 인메모리 캐시를 관리하는 방법

Also Published As

Publication number Publication date
EP1839147A1 (en) 2007-10-03
WO2006075278A1 (en) 2006-07-20
CN101103336A (zh) 2008-01-09
US20100037234A1 (en) 2010-02-11

Similar Documents

Publication Publication Date Title
JP2008527558A (ja) タスクスケジューリングのデータ処理システム及び方法
US7941643B2 (en) Multi-thread processor with multiple program counters
JP5097251B2 (ja) 同時マルチスレッディングプロセッサを用いてバッファ型アプリケーションのエネルギー消費を低減する方法
KR100628492B1 (ko) 실시간 동작 수행방법 및 시스템
US7134002B2 (en) Apparatus and method for switching threads in multi-threading processors
US20080040724A1 (en) Instruction dispatching method and apparatus
KR101827289B1 (ko) 실시간 운영체제에서 태스크 스케줄링 방법
US7213137B2 (en) Allocation of processor bandwidth between main program and interrupt service instruction based on interrupt priority and retiring micro-ops to cache
US9170841B2 (en) Multiprocessor system for comparing execution order of tasks to a failure pattern
US9436464B2 (en) Instruction-issuance controlling device and instruction-issuance controlling method
US9858115B2 (en) Task scheduling method for dispatching tasks based on computing power of different processor cores in heterogeneous multi-core processor system and related non-transitory computer readable medium
JP2005043959A (ja) スケジューリング方法および情報処理システム
JP2005517228A (ja) スケジューリングの順序付けられたステージの基準を使用してリクエストをスケジューリングする方法及び装置
JP2005018610A (ja) スケジューリング方法および情報処理システム
WO2001046827A1 (en) System and method for instruction level multithreading in an embedded processor using zero-time context switching
JP5347451B2 (ja) マルチプロセッサシステム、競合回避プログラム及び競合回避方法
JP2006343872A (ja) マルチスレッド中央演算装置および同時マルチスレッディング制御方法
JP2010086131A (ja) マルチスレッドプロセッサ及びその割り込み処理方法
US20060037021A1 (en) System, apparatus and method of adaptively queueing processes for execution scheduling
US8042116B2 (en) Task switching based on the execution control information held in register groups
JP5726006B2 (ja) タスクおよびリソースのスケジューリング装置及びその方法並びに制御装置
JP6311330B2 (ja) 情報処理装置、情報処理方法およびプログラム
WO2006129767A1 (ja) マルチスレッド中央演算装置および同時マルチスレッディング制御方法
JP2008102847A (ja) マルチスレッドプログラム処理方法及び装置
US7904703B1 (en) Method and apparatus for idling and waking threads by a multithread processor

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20090407