JP4712876B2 - 並列プロセッサ方法と装置 - Google Patents
並列プロセッサ方法と装置 Download PDFInfo
- Publication number
- JP4712876B2 JP4712876B2 JP2008533492A JP2008533492A JP4712876B2 JP 4712876 B2 JP4712876 B2 JP 4712876B2 JP 2008533492 A JP2008533492 A JP 2008533492A JP 2008533492 A JP2008533492 A JP 2008533492A JP 4712876 B2 JP4712876 B2 JP 4712876B2
- Authority
- JP
- Japan
- Prior art keywords
- work
- policy module
- queues
- priority
- work queue
- 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
- 238000000034 method Methods 0.000 title claims description 77
- 238000012545 processing Methods 0.000 claims description 127
- 238000003491 array Methods 0.000 claims 2
- 230000008569 process Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 238000007726 management method Methods 0.000 description 8
- 238000013523 data management Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000002195 synergetic effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 241000699666 Mus <mouse, genus> Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5033—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering data affinity
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Description
本出願は、2005年9月27日に出願された米国特許出願第11/238,077号、"CELL PROCESSOR METHODS AND APPARATUS"(代理人整理番号SCEA05009US00)、John P. Batesの一部継続出願でありその優先権を主張し、参照によりその開示内容全体をここに援用する。
本出願はまた、2005年9月27日に出願された米国特許出願第11/238,087号、"SPU TASK MANAGER FOR CELL PROCESSOR"(代理人整理番号SCEA05015US00)、John P. Bates, Payton R. White, Richard Stenson, Howard Berkey, Attila Vass, Mark Cernyの一部継続出願でありその優先権を主張し、参照によりその開示内容全体をここに援用する。
本出願はまた、2005年9月27日に出願された米国特許出願第11/238,095号、"CELL PROCESSOR TASK AND DATA MANAGEMENT"(代理人整理番号SCEA05013US00)、Richard B. Stenson, John P. Batesの一部継続出願でありその優先権を主張し、参照によりその開示内容全体をここに援用する。
本出願はまた、2005年9月27日に出願された米国特許出願第11/238,085号、"METHOD AND SYSTEM FOR PERFORMING MEMORY COPY FUNCTION ON A CELL PROCESSOR"(代理人整理番号SCEA05018US00)、Antoine Labour, John P. Bates, Richard B. Stensonの一部継続出願でありその優先権を主張し、参照によりその開示内容全体をここに援用する。
本出願はまた、2005年9月27日に出願された本願と譲受人が共通する米国特許出願第11/238,086号、"OPERATING CELL PROCESSORS OVER A NETWORK"(代理人整理番号SCEA05014US00)、Tatsuya Iwamotoに関連し、参照によりその開示内容全体をここに援用する。
本出願はまた、2005年10月24日に出願された本願と譲受人が共通する米国特許出願第11/257,761号、"SECURE OPERATION OF CELL PROCESSORS"(代理人整理番号SCEA05014CIP US00(SCEA05014US01))、Tatsuya Iwamotoに関連し、参照によりその開示内容全体をここに援用する。
本発明は一般には並列処理に関し、特に並列プロセッサにおける様々のプログラミングモデルにわたるスケジューリングに関する。
a.優先度=0、
b.ワークキュー状態=SPMエンプティ、すなわち、ステップ228においてWがレディ(準備完了)でない、
c.競合度が最大競合度以上、がある。
a.優先度=0
b.レディカウント=0
c.競合度が最大競合度以上
d.競合度が(レディカウント+アイドルカウント)以上。これにより、過剰のSPUが特定のワークキュー118に割り当てられることが防止される。
Claims (47)
- 一つ以上の中央プロセッサと一つ以上の第2処理要素とを含み、各第2処理要素がプロセッサとローカルメモリを含むプロセッサシステムにおいて、一つ以上の第2処理要素上のコードとデータを管理するための方法であって、
一つ以上の第2処理要素上で実行されるポリシーモジュールマネージャが、優先権の階層にしたがって、選択された一つ以上のワークキューを、メインメモリから、選択された一つ以上の第2処理要素に割り当てるステップと、
前記ポリシーモジュールマネージャが、選択された一つ以上のワークキュー用のポリシーモジュールを、前記選択された一つ以上の第2処理要素にロードするステップであって、前記ポリシーモジュールが自身のコンテクストデータを管理するように構成されている、ステップと、
前記ポリシーモジュールが、前記選択された一つ以上のワークキューを解釈するステップと、
前記ポリシーモジュールが、前記選択された一つ以上のワークキューのうちの一つまたは複数からのワークを、前記選択された一つ以上の第2処理要素のローカルメモリにロードするステップと、
前記選択された一つ以上の第2処理要素が、前記ワークを実行するステップと、
前記ワークの完了後またはプリエンプションが起きたとき、前記ポリシーモジュールが、前記選択された一つ以上の第2処理要素の制御権を前記ポリシーモジュールマネージャに戻すステップと、
を含む方法。 - 前記メインメモリからポリシーモジュールをロードするステップは、前記ポリシーモジュールマネージャが、ワークキューアレイのワーク定義から、前記メインメモリにおける前記ポリシーモジュールのメモリアドレスを読み出すことを含む請求項1に記載の方法。
- 前記選択された一つ以上のワークキューからワークをロードするステップは、前記ポリシーモジュールが、ワークキューアレイのワーク定義から、前記メインメモリにおける前記ワークのメモリアドレスを読み出すことを含む請求項1または2に記載の方法。
- 前記ワークの前記メモリアドレスはコードとデータの両方を含む請求項3に記載の方法。
- 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから前記選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、前記一つ以上のワークキューのうち特定の一つがスケジュール可能であるかを判定することを含む請求項1ないし4のいずれかに記載に記載の方法。
- 前記一つ以上のワークキューのうち特定の一つがスケジュール可能であるかを判定するステップは、前記ポリシーモジュールマネージャが、前記ワークキューのうち特定の一つについて、競合度、優先度、レディカウント、最大競合度、アイドルリクエストカウントの少なくとも一つを判定することを含む請求項5に記載の方法。
- 前記ワークキューのうち特定の一つがスケジュール可能であるかを判定するステップは、前記ポリシーモジュールマネージャが、
優先度=0、または
レディカウント=0、または
競合度が最大競合度以上、または
競合度が(レディカウント+アイドルリクエストカウント)以上であるかを判定することを含む請求項6に記載の方法。 - 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから前記選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、一つ以上のワークキューがスケジュール可能でありかつレディネスを有するかを判定することを含む請求項1ないし7のいずれかに記載の方法。
- 一つ以上のワークキューがレディネスを有するかを判定するステップは、前記ポリシーモジュールマネージャが、前記一つ以上のワークキューについて競合度およびレディカウントを判定することを含み、前記ワークの実行は、スケジュール可能であり、かつ競合度がレディカウントよりも小さい一つ以上のワークキューのうちの一つまたは複数に、一つ以上の第2処理要素を優先的に割り当てることを含む請求項8に記載の方法。
- スケジュール可能であり、かつ競合度がレディカウントよりも小さい一つ以上のワークキューに一つ以上の第2処理要素を優先的に割り当てるステップは、前記ポリシーモジュールマネージャが、競合度がレディカウントよりも小さいスケジュール可能なワークキューに一つ以上の第2処理要素を割り当て、競合度がレディカウントよりも小さくないスケジュール可能なワークキューに第2処理要素を割り当てないことを含む請求項9に記載の方法。
- 前記ポリシーモジュールマネージャが特定のワークキューについてのアイドルリクエストカウントを判定することをさらに含み、前記ワークを実行することが、前記特定のワークキューについてのレディカウント値と前記アイドルリクエストカウントの合計以下である第2処理要素の数を前記特定のワークキューに割り当てることを含む請求項9または10に記載の方法。
- 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、一つ以上のワークキューがスケジュール可能でありかつレディネスを有するかを判定すること、およびレディネスを有する一つ以上のスケジュール可能なワークキューについて第2処理要素毎の優先度値を判定することを含む請求項1ないし11のいずれかに記載の方法。
- 前記選択された一つ以上のワークキューを割り当てるステップは、前記ポリシーモジュールマネージャが、スケジュール可能でありレディネスを有するワークキューに対して、特定の第2処理要素についてより好ましい優先度値を有するワークキューにその特定の第2処理要素を割り当てることを含む請求項12に記載の方法。
- 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから前記選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、一つ以上のワークキューがスケジュール可能でありかつレディネスを有するかを判定し、レディネスを有する一つ以上のスケジュール可能なワークキューについて第2処理要素毎の優先度値を判定し、任意のワークキューについてのコードまたはデータが任意の第2処理要素に既にロードされているかを判定することを含む請求項1ないし13のいずれかに記載の方法。
- 前記選択された一つ以上のワークキューを割り当てるステップは、前記ポリシーモジュールマネージャが、レディネスを有しかつ特定の第2処理要素について等しい優先度を持つ二つ以上のスケジュール可能なワークキューに対して、レディネスを有し優先度が等しい前記二つ以上のスケジュール可能なワークキューのうち、前記特定の第2処理要素のローカルストアにコードまたはデータが既にロードされているワークキューに前記特定の第2処理要素を優先的に割り当てることを含む請求項14に記載の方法。
- 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、一つ以上のワークキューがスケジュール可能でありかつレディネスを有するかを判定し、前記一つ以上のワークキューについて第2処理要素毎の優先度値を判定し、前記一つ以上のワークキューについてワークキューアフィニティを判定し、前記一つ以上のワークキューについて緊急度を判定することを含む請求項1ないし15のいずれかに記載の方法。
- 前記選択された一つ以上のワークキューに割り当てるステップは、スケジュール可能であり、レディネスを有し、特定の第2処理要素について優先度が等しくかつワークキューアフィニティが等しい二つ以上のワークキューに対して、前記ポリシーモジュールマネージャが、前記二つ以上の特定のワークキューのうち緊急度の高いワークキューに前記特定の第2処理要素を優先的に割り当てることを含む請求項16に記載の方法。
- 前記一つ以上のワークキューについて緊急度を判定するステップは、前記ポリシーモジュールマネージャが、前記一つ以上のワークキューについて競合度を判定し、前記一つ以上のワークキューについて最小競合度を判定することを含む請求項16または17に記載の方法。
- 前記二つ以上の特定のワークキューのうち緊急度の高いワークキューに前記特定の第2処理要素を優先的に割り当てるステップは、前記ポリシーモジュールマネージャが、前記競合度がゼロより大きいが前記最小競合度よりも小さいワークキューに、そうではないワークキューを超えて、前記特定のワークキューを割り当てることを含む請求項18に記載の方法。
- 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、一つ以上のワークキューがスケジュール可能でありかつレディネスを有するかを判定し、前記一つ以上のワークキューについて第2処理要素毎の優先度値を判定し、前記一つ以上のワークキューについてワークキューアフィニティを判定し、前記一つ以上のワークキューについて緊急度を判定し、前記一つ以上のワークキューについて競合度を判定することを含む請求項1ないし19のいずれかに記載の方法。
- 前記選択された一つ以上のワークキューを割り当てるステップは、スケジュール可能であり、レディネスを有し、特定の第2処理要素について優先度およびワークキューアフィニティが等しく、かつ緊急度が等しい二つ以上の特定のワークキューに対して、前記ポリシーモジュールマネージャが、二つ以上の利用可能な第2処理要素の間で前記二つ以上の特定のワークキューの競合度がバランスされる態様で、前記二つ以上の特定のワークキューを前記二つ以上の利用可能な第2処理要素に割り当てることを含む請求項20に記載の方法。
- 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、一つ以上のワークキューがスケジュール可能でありかつレディネスを有するかを判定し、前記一つ以上のワークキューについて第2処理要素毎の優先度値を判定し、前記一つ以上のワークキューについてワークキューアフィニティを判定し、前記一つ以上のワークキューについて緊急度を判定し、前記一つ以上のワークキューについて競合度を判定し、前記一つ以上のワークキューについて第2処理要素毎のポリシーモジュールアフィニティを判定することを含む請求項1ないし21のいずれかに記載の方法。
- 前記一つ以上のワークキューについて第2処理要素毎のポリシーモジュールアフィニティを判定することは、前記ポリシーモジュールマネージャが、特定の第2処理要素のローカルストアに特定のワークキュー用のポリシーモジュールが既にロードされているかを判定することを含む請求項22に記載の方法。
- 前記選択された一つ以上のワークキューを割り当てるステップは、スケジュール可能であり、レディネスを有し、特定の第2処理要素について優先度およびワークキューアフィニティが等しく、緊急度が等しく、かつ競合度のバランスが取れている二つ以上の特定のワークキューに対して、前記ポリシーモジュールマネージャが、前記特定のワークキューとともにポリシーモジュールアフィニティを有する第2処理要素に特定のワークキューを優先的に割り当てることを含む請求項22または23に記載の方法。
- 優先権の階層にしたがって、選択された一つ以上のワークキューをメインメモリから選択された一つ以上の第2処理要素に割り当てるステップは、前記ポリシーモジュールマネージャが、一つ以上のワークキューがスケジュール可能でありかつレディネスを有するかを判定し、前記一つ以上のワークキューについて第2処理要素毎の優先度値を判定し、前記一つ以上のワークキューについてワークキューアフィニティを判定し、前記一つ以上のワークキューについて緊急度を判定し、前記一つ以上のワークキューについて競合度を判定し、前記一つ以上のワークキューについて第2処理要素毎のポリシーモジュールアフィニティを判定し、前記一つ以上のワークキューについてワークロードIDを判定することを含む請求項1ないし24のいずれかに記載の方法。
- 前記選択された一つ以上のワークキューを割り当てるステップは、スケジュール可能であり、レディネスを有し、特定の第2処理要素について優先度、ワークキューアフィニティおよびポリシーモジュールアフィニティが等しく、緊急度が等しく、かつ競合度のバランスが取れている二つ以上の特定のワークキューに対して、前記ポリシーモジュールマネージャが、より好適なワークロードIDを有する特定のワークキューを前記特定の第2処理要素に優先的に割り当てることを含む請求項25に記載の方法。
- メインメモリと、
前記メインメモリに接続された中央プロセッサと、
前記メインメモリおよび前記中央プロセッサに接続され、それぞれがプロセッサユニットとローカルメモリを有する一つ以上の第2処理要素と、
一つ以上の前記第2処理要素上で実行されるポリシーモジュールマネージャであって、優先権の階層にしたがって、選択された一つ以上のワークキューを、メインメモリから、選択された一つ以上の第2処理要素に割り当てるように構成されたポリシーモジュールマネージャとを含み、
前記ポリシーモジュールマネージャは、前記選択された一つ以上のワークキュー用のポリシーモジュールを前記選択された一つ以上の第2処理要素へロードするように構成されており、前記ポリシーモジュールは、前記選択された一つ以上のワークキューのうち一つまたは複数から得たワークを前記選択された一つ以上の第2処理要素にロードし、前記選択された一つ以上の第2処理要素上で解釈および処理し、前記ワークの完了後またはプリエンプションが起きたとき、前記選択された一つ以上の第2処理要素の制御権を前記ポリシーモジュールマネージャに戻すように構成され、
前記ポリシーモジュールが自身のコンテクストデータを管理するように構成されることを特徴とするプロセッサ。 - 前記メインメモリは一つ以上のワークキューアレイを含み、各ワークキューは一つ以上のワーク定義を含み、各ワーク定義はワークキューと関連づけられている請求項27に記載のプロセッサ。
- 前記一つ以上のワークキューアレイのそれぞれは、正確に16個のワーク定義を含む請求項28に記載のプロセッサ。
- 各ワーク定義はワークキューのメモリアドレスとポリシー定義のメモリアドレスを含む請求項28または29に記載のプロセッサ。
- 各ワーク定義は第2処理要素毎の優先度の値を含む請求項30に記載のプロセッサ。
- 各ワーク定義はレディカウント値を含む請求項30または31に記載のプロセッサ。
- 各ワーク定義は最大許容競合値を含む請求項30ないし32のいずれかに記載のプロセッサ。
- 各ワーク定義は最小競合値を含む請求項30ないし33のいずれかに記載のプロセッサ。
- 各ワーク定義はアイドルリクエストカウント値を含む請求項30ないし34のいずれかに記載のプロセッサ。
- 前記ポリシー定義はポリシーモジュール第2処理要素コードイメージのアドレスを含む請求項30ないし35のいずれかに記載のプロセッサ。
- 前記ワークキューの前記メモリアドレスはコードとデータの両方を含む請求項30ないし36のいずれかに記載のプロセッサ。
- 前記選択された一つ以上のワークキューを前記メインメモリから前記選択された一つ以上の第2処理要素に割り当てる際に、ワークキューのスケジュール可能性が他の全ての検討事項よりも優先するように前記優先権の階層が構成される請求項27ないし37のいずれかに記載のプロセッサ。
- 前記選択された一つ以上のワークキューを前記メインメモリから前記選択された一つ以上の第2処理要素に割り当てる際に、ワークキューのスケジュール可能性が該ワークキューのレディネスよりも優先し、かつ該ワークキューのレディネスが他の全ての検討事項よりも優先するように前記優先権の階層が構成される請求項27ないし38のいずれかに記載のプロセッサ。
- 前記選択された一つ以上のワークキューを前記メインメモリから前記選択された一つ以上の第2処理要素に割り当てる際に、ワークキューのスケジュール可能性がレディネスよりも優先し、該ワークキューのレディネスが該ワークキューの第2処理要素毎の優先度に優先し、該ワークキューの第2処理要素毎の優先度が他の全ての検討事項よりも優先するように前記優先権の階層が構成される請求項27ないし39のいずれかに記載のプロセッサ。
- 前記選択された一つ以上のワークキューを前記メインメモリから前記選択された一つ以上の第2処理要素に割り当てる際に、ワークキューのスケジュール可能性が該ワークキューのレディネスよりも優先し、該ワークキューのレディネスが該ワークキューの第2処理要素毎の優先度に優先し、該ワークキューの優先度が該ワークキューのワークキューアフィニティよりも優先し、該ワークキューのワークキューアフィニティが他の全ての検討事項よりも優先するように前記優先権の階層が構成される請求項27ないし40のいずれかに記載のプロセッサ。
- 前記選択された一つ以上のワークキューを前記メインメモリから前記選択された一つ以上の第2処理要素に割り当てる際に、ワークキューのスケジュール可能性が該ワークキューのレディネスよりも優先し、該ワークキューのレディネスが該ワークキューの第2処理要素毎の優先度に優先し、該ワークキューの第2処理要素毎の優先度が該ワークキューのワークキューアフィニティよりも優先し、該ワークキューのワークキューアフィニティが前記一つ以上の選択されたワークキューのバランスの取れた競合度よりも優先し、前記一つ以上の選択されたワークキューのバランスの取れた競合度が他の全ての検討事項よりも優先するように前記優先権の階層が構成される請求項27ないし41のいずれかに記載のプロセッサ。
- 前記選択された一つ以上のワークキューを前記メインメモリから前記選択された一つ以上の第2処理要素に割り当てる際に、ワークキューのスケジュール可能性が該ワークキューのレディネスよりも優先し、該ワークキューのレディネスが該ワークキューの第2処理要素毎の優先度に優先し、該ワークキューの第2処理要素毎の優先度が該ワークキューのワークキューアフィニティよりも優先し、該ワークキューのワークキューアフィニティが前記一つ以上の選択されたワークキューのバランスの取れた競合度よりも優先し、前記一つ以上の選択されたワークキューのバランスの取れた競合度が該ワークキューのポリシーモジュールアフィニティよりも優先し、該ワークキューのポリシーモジュールアフィニティが他の全ての検討事項よりも優先するように前記優先権の階層が構成される請求項27ないし42のいずれかに記載のプロセッサ。
- 前記選択された一つ以上のワークキューを前記メインメモリから前記選択された一つ以上の第2処理要素に割り当てる際に、ワークキューのスケジュール可能性が該ワークキューのレディネスよりも優先し、該ワークキューのレディネスが該ワークキューの第2処理要素毎の優先度に優先し、該ワークキューの第2処理要素毎の優先度が該ワークキューのワークキューアフィニティよりも優先し、該ワークキューのワークキューアフィニティが前記一つ以上の選択されたワークキューのバランスの取れた競合度よりも優先し、前記一つ以上の選択されたワークキューのバランスの取れた競合度が該ワークキューのポリシーモジュールアフィニティよりも優先し、該ワークキューのポリシーモジュールアフィニティが該ワークキューのワークロードIDよりも優先し、該ワークキューのワークロードIDが他の全ての検討事項よりも優先するように前記優先権の階層が構成される請求項27ないし43のいずれかに記載のプロセッサ。
- ユーザインタフェースをさらに備え、該ユーザインタフェースは、前記選択された一つ以上のワークキューの一つ以上のパラメータをユーザが調整できるように構成されている請求項27ないし44のいずれかに記載のプロセッサ。
- データプロセッシングシステムであって、
一つ以上のプロセッサを含み、
各プロセッサは、メインメモリと、中央プロセッサユニットと、一つ以上の第2処理要素とを含み、
各第2処理要素は、プロセッサとローカルメモリを有し、
前記メモリ、前記中央プロセッサユニット、前記第2処理要素は互いにデータバスで結合されており、
前記メインメモリまたは前記ローカルメモリは、一つ以上の第2処理要素上でコードとデータを管理する方法を実行するためのプロセッサで実行可能なインストラクションを含み、
当該方法は、
一つ以上の第2処理要素上で実行されるポリシーモジュールマネージャが、優先権の階層にしたがって、選択された一つ以上のワークキューを、メインメモリから、選択された一つ以上の第2処理要素に割り当てるステップと、
前記ポリシーモジュールマネージャが、選択された一つ以上のワークキュー用のポリシーモジュールを、前記選択された一つ以上の第2処理要素にロードするステップであって、前記ポリシーモジュールが自身のコンテクストデータを管理するように構成されている、ステップと、
前記ポリシーモジュールが、前記選択された一つ以上のワークキューのうち選択された一つまたは複数を解釈するステップと、
前記ポリシーモジュールが、前記選択された一つ以上のワークキューのうちの一つまたは複数からのワークを、前記選択された一つ以上の第2処理要素のローカルメモリにロードするステップと、
前記選択された一つ以上の第2処理要素が、前記一つ以上のタスクを実行するステップと、
前記タスクの完了後またはプリエンプションが起きたとき、前記ポリシーモジュールが、前記選択された一つ以上の第2処理要素の制御権を前記ポリシーモジュールマネージャに戻すステップと、
を含むことを特徴とするデータプロセッシングシステム。 - 中央プロセッサユニットと、それぞれがプロセッサとローカルメモリを有する一つ以上の第2処理要素とを含むプロセッサにおいて、前記一つ以上の第2処理要素上でコードとデータを管理する方法を実行するためのプロセッサ読み込み可能なインストラクションセットが具体化された非一時的なプロセッサ読み込み可能な記憶媒体であって、
当該方法は、
一つ以上の第2処理要素上で実行されるポリシーモジュールマネージャが、優先権の階層にしたがって、選択された一つ以上のワークキューを、メインメモリから、選択された一つ以上の第2処理要素に割り当てるステップと、
前記ポリシーモジュールマネージャが、選択された一つ以上のワークキュー用のポリシーモジュールを、前記選択された一つ以上の第2処理要素にロードするステップであって、前記ポリシーモジュールが自身のコンテクストデータを管理するように構成されている、ステップと、
前記ポリシーモジュールが、前記選択された一つ以上のワークキューのうち選択された一つまたは複数を解釈するステップと、
前記ポリシーモジュールが、前記選択された一つ以上のワークキューのうちの一つまたは複数からのワークを、前記選択された一つ以上の第2処理要素のローカルメモリにロードするステップと、
前記選択された一つ以上の第2処理要素が、前記一つ以上のタスクを実行するステップと、
前記タスクの完了後またはプリエンプションが起きたとき、前記ポリシーモジュールが、前記一つ以上の第2処理要素の制御権を前記ポリシーモジュールマネージャに戻すステップと、
を含むことを特徴とする媒体。
Applications Claiming Priority (15)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/238,086 | 2005-09-27 | ||
US11/238,086 US8316220B2 (en) | 2005-09-27 | 2005-09-27 | Operating processors over a network |
US11/238,087 US8037474B2 (en) | 2005-09-27 | 2005-09-27 | Task manager with stored task definition having pointer to a memory address containing required code data related to the task for execution |
US11/238,087 | 2005-09-27 | ||
US11/238,095 US7522168B2 (en) | 2005-09-27 | 2005-09-27 | Cell processor task and data management |
US11/238,085 US7506123B1 (en) | 2005-09-27 | 2005-09-27 | Method and system for performing memory copy function on a cell processor |
US11/238,077 | 2005-09-27 | ||
US11/238,077 US8141076B2 (en) | 2005-09-27 | 2005-09-27 | Cell processor methods and apparatus |
US11/238,095 | 2005-09-27 | ||
US11/238,085 | 2005-09-27 | ||
US11/257,761 US7734827B2 (en) | 2005-09-27 | 2005-10-24 | Operation of cell processors |
US11/257,761 | 2005-10-24 | ||
US11/461,390 US7975269B2 (en) | 2005-09-27 | 2006-07-31 | Parallel processor methods and apparatus |
US11/461,390 | 2006-07-31 | ||
PCT/US2006/037334 WO2007038455A1 (en) | 2005-09-27 | 2006-09-25 | Cell processor methods and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009510611A JP2009510611A (ja) | 2009-03-12 |
JP4712876B2 true JP4712876B2 (ja) | 2011-06-29 |
Family
ID=37622054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008533492A Active JP4712876B2 (ja) | 2005-09-27 | 2006-09-25 | 並列プロセッサ方法と装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7975269B2 (ja) |
EP (2) | EP1934737B1 (ja) |
JP (1) | JP4712876B2 (ja) |
WO (1) | WO2007038455A1 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160253210A1 (en) * | 2004-07-26 | 2016-09-01 | Yi-Chuan Cheng | Cellular with Multi-Processors |
WO2006027639A1 (en) * | 2004-09-09 | 2006-03-16 | Pirelli Tyre S.P.A. | Method for allowing a control of a vehicle provided with at least two wheels in case of puncture of a tyre |
US8037474B2 (en) * | 2005-09-27 | 2011-10-11 | Sony Computer Entertainment Inc. | Task manager with stored task definition having pointer to a memory address containing required code data related to the task for execution |
US7522168B2 (en) * | 2005-09-27 | 2009-04-21 | Sony Computer Entertainment Inc. | Cell processor task and data management |
US8141076B2 (en) * | 2005-09-27 | 2012-03-20 | Sony Computer Entertainment Inc. | Cell processor methods and apparatus |
US7975269B2 (en) | 2005-09-27 | 2011-07-05 | Sony Computer Entertainment Inc. | Parallel processor methods and apparatus |
US7734827B2 (en) * | 2005-09-27 | 2010-06-08 | Sony Computer Entertainment, Inc. | Operation of cell processors |
US8316220B2 (en) * | 2005-09-27 | 2012-11-20 | Sony Computer Entertainment Inc. | Operating processors over a network |
US7506123B1 (en) * | 2005-09-27 | 2009-03-17 | Sony Computer Entertainment Inc. | Method and system for performing memory copy function on a cell processor |
US8595747B2 (en) * | 2005-12-29 | 2013-11-26 | Sony Computer Entertainment Inc. | Efficient task scheduling by assigning fixed registers to scheduler |
US7647483B2 (en) * | 2007-02-20 | 2010-01-12 | Sony Computer Entertainment Inc. | Multi-threaded parallel processor methods and apparatus |
GB0703974D0 (en) * | 2007-03-01 | 2007-04-11 | Sony Comp Entertainment Europe | Entertainment device |
US8589943B2 (en) * | 2007-08-15 | 2013-11-19 | Sony Computer Entertainment Inc. | Multi-threaded processing with reduced context switching |
US9158713B1 (en) * | 2010-04-07 | 2015-10-13 | Applied Micro Circuits Corporation | Packet processing with dynamic load balancing |
US9026657B2 (en) | 2010-12-03 | 2015-05-05 | Synchronoss Technologies, Inc. | Method and system for provisioning telecommunication services and equipment using sequential or parallel processing |
US8949839B2 (en) | 2012-07-26 | 2015-02-03 | Centurylink Intellectual Property Llc | Method and system for controlling work request queue in a multi-tenant cloud computing environment |
US9286114B2 (en) * | 2012-12-13 | 2016-03-15 | Nvidia Corporation | System and method for launching data parallel and task parallel application threads and graphics processing unit incorporating the same |
US9838471B2 (en) * | 2014-02-03 | 2017-12-05 | Cavium, Inc. | Method and an apparatus for work request arbitration in a network processor |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997006484A1 (en) * | 1995-08-08 | 1997-02-20 | Novell, Inc. | Method and apparatus for strong affinity multiprocessor scheduling |
US6665699B1 (en) * | 1999-09-23 | 2003-12-16 | Bull Hn Information Systems Inc. | Method and data processing system providing processor affinity dispatching |
JP2005513587A (ja) * | 2001-05-10 | 2005-05-12 | オラクル・インターナショナル・コーポレイション | マルチポリシーリソーススケジューリングのための方法およびシステム |
JP2005235228A (ja) * | 2004-02-20 | 2005-09-02 | Sony Computer Entertainment Inc | マルチプロセッサシステムにおけるタスク管理方法および装置 |
JP2005235229A (ja) * | 2004-02-20 | 2005-09-02 | Sony Computer Entertainment Inc | マルチプロセッサシステムにおけるプロセッサタスクの移動方法および装置 |
Family Cites Families (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3496551A (en) * | 1967-07-13 | 1970-02-17 | Ibm | Task selection in a multi-processor computing system |
US3596257A (en) * | 1969-09-17 | 1971-07-27 | Burroughs Corp | Method and apparatus for allocating small memory spaces to a computer program |
US5047923A (en) * | 1987-08-21 | 1991-09-10 | Siemens Aktiengesellschaft | Modularly structured digital communication system for interconnecting terminal equipment and public networks |
JPH01258135A (ja) * | 1988-04-08 | 1989-10-16 | Nec Corp | トランザクション実行制御方式 |
US5185694A (en) * | 1989-06-26 | 1993-02-09 | Motorola, Inc. | Data processing system utilizes block move instruction for burst transferring blocks of data entries where width of data blocks varies |
US5136712A (en) * | 1989-06-29 | 1992-08-04 | Digital Equipment Corporation | Temporary object handling system and method in an object based computer operating system |
EP0416767A3 (en) * | 1989-09-08 | 1992-04-29 | Digital Equipment Corporation | Position independent code location system |
US5452452A (en) * | 1990-06-11 | 1995-09-19 | Cray Research, Inc. | System having integrated dispatcher for self scheduling processors to execute multiple types of processes |
JPH04123234A (ja) * | 1990-09-14 | 1992-04-23 | Hitachi Ltd | マルチプロセッサのプロセススケジューリング方式及びメモリ管理方式 |
JPH05216844A (ja) * | 1991-07-17 | 1993-08-27 | Internatl Business Mach Corp <Ibm> | マルチプロセッサデータ処理システムにおける改良されたタスク分散のための方法および装置 |
JP2809962B2 (ja) * | 1993-03-02 | 1998-10-15 | 株式会社東芝 | 資源管理方式 |
US5528513A (en) * | 1993-11-04 | 1996-06-18 | Digital Equipment Corp. | Scheduling and admission control policy for a continuous media server |
US5745778A (en) * | 1994-01-26 | 1998-04-28 | Data General Corporation | Apparatus and method for improved CPU affinity in a multiprocessor system |
JP3658420B2 (ja) * | 1994-04-14 | 2005-06-08 | 株式会社日立製作所 | 分散処理システム |
US5794017A (en) * | 1995-02-06 | 1998-08-11 | International Business Machines Corporation | Method and system of updating graphics memory in a graphics display system through multiple address transferring of pixel data |
US6633897B1 (en) * | 1995-06-30 | 2003-10-14 | International Business Machines Corporation | Method and system for scheduling threads within a multiprocessor data processing system using an affinity scheduler |
US5832262A (en) * | 1995-09-14 | 1998-11-03 | Lockheed Martin Corporation | Realtime hardware scheduler utilizing processor message passing and queue management cells |
US6341324B1 (en) * | 1995-10-06 | 2002-01-22 | Lsi Logic Corporation | Exception processing in superscalar microprocessor |
US5978843A (en) | 1995-12-06 | 1999-11-02 | Industrial Technology Research Institute | Scalable architecture for media-on-demand servers |
EP0888585A1 (en) * | 1996-03-19 | 1999-01-07 | Massachusetts Institute Of Technology | Computer system and computer implemented process for representing software system descriptions and for generating executable computer programs and computer system configurations from software system descriptions |
US5826081A (en) * | 1996-05-06 | 1998-10-20 | Sun Microsystems, Inc. | Real time thread dispatcher for multiprocessor applications |
US5872972A (en) * | 1996-07-05 | 1999-02-16 | Ncr Corporation | Method for load balancing a per processor affinity scheduler wherein processes are strictly affinitized to processors and the migration of a process from an affinitized processor to another available processor is limited |
US6144986A (en) * | 1997-03-27 | 2000-11-07 | Cybersales, Inc. | System for sorting in a multiprocessor environment |
US6003112A (en) * | 1997-06-30 | 1999-12-14 | Intel Corporation | Memory controller and method for clearing or copying memory utilizing register files to store address information |
US6378072B1 (en) * | 1998-02-03 | 2002-04-23 | Compaq Computer Corporation | Cryptographic system |
US6295598B1 (en) * | 1998-06-30 | 2001-09-25 | Src Computers, Inc. | Split directory-based cache coherency technique for a multi-processor computer system |
US6289369B1 (en) * | 1998-08-25 | 2001-09-11 | International Business Machines Corporation | Affinity, locality, and load balancing in scheduling user program-level threads for execution by a computer system |
FR2792087B1 (fr) * | 1999-04-07 | 2001-06-15 | Bull Sa | Procede d'amelioration des performances d'un systeme multiprocesseur comprenant une file d'attente de travaux et architecture de systeme pour la mise en oeuvre du procede |
US6463457B1 (en) * | 1999-08-26 | 2002-10-08 | Parabon Computation, Inc. | System and method for the establishment and the utilization of networked idle computational processing power |
GB2394336B (en) | 1999-11-19 | 2004-09-08 | Gen Dynamics Decisions Systems | Method of allocating memory |
US7058750B1 (en) * | 2000-05-10 | 2006-06-06 | Intel Corporation | Scalable distributed memory and I/O multiprocessor system |
US6981260B2 (en) * | 2000-05-25 | 2005-12-27 | International Business Machines Corporation | Apparatus for minimizing lock contention in a multiple processor system with multiple run queues when determining the threads priorities |
US7565651B1 (en) * | 2000-05-25 | 2009-07-21 | Oracle International Corporation | Parallel task scheduling system for computers |
US20030154284A1 (en) * | 2000-05-31 | 2003-08-14 | James Bernardin | Distributed data propagator |
US6986052B1 (en) | 2000-06-30 | 2006-01-10 | Intel Corporation | Method and apparatus for secure execution using a secure memory partition |
US6502170B2 (en) * | 2000-12-15 | 2002-12-31 | Intel Corporation | Memory-to-memory compare/exchange instructions to support non-blocking synchronization schemes |
US7233998B2 (en) * | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
US6526491B2 (en) * | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
US7178145B2 (en) * | 2001-06-29 | 2007-02-13 | Emc Corporation | Queues for soft affinity code threads and hard affinity code threads for allocation of processors to execute the threads in a multi-processor system |
US6996822B1 (en) * | 2001-08-01 | 2006-02-07 | Unisys Corporation | Hierarchical affinity dispatcher for task management in a multiprocessor computer system |
US6738378B2 (en) * | 2001-08-22 | 2004-05-18 | Pluris, Inc. | Method and apparatus for intelligent sorting and process determination of data packets destined to a central processing unit of a router or server on a data packet network |
CA2411294C (en) * | 2001-11-06 | 2011-01-04 | Everyware Solutions Inc. | A method and system for access to automatically synchronized remote files |
US7080379B2 (en) * | 2002-06-20 | 2006-07-18 | International Business Machines Corporation | Multiprocessor load balancing system for prioritizing threads and assigning threads into one of a plurality of run queues based on a priority band and a current load of the run queue |
US7089547B2 (en) * | 2002-09-13 | 2006-08-08 | International Business Machines Corporation | Firmware updating |
JP2004287801A (ja) | 2003-03-20 | 2004-10-14 | Sony Computer Entertainment Inc | 情報処理システム、情報処理装置、分散情報処理方法及びコンピュータプログラム |
US20050022173A1 (en) * | 2003-05-30 | 2005-01-27 | Codito Technologies Private Limited | Method and system for allocation of special purpose computing resources in a multiprocessor system |
US7236738B2 (en) * | 2003-08-01 | 2007-06-26 | Pathfire, Inc. | Multicast control systems and methods for dynamic, adaptive time, bandwidth,frequency, and satellite allocations |
US7236998B2 (en) * | 2003-09-25 | 2007-06-26 | International Business Machines Corporation | System and method for solving a large system of dense linear equations |
US7523157B2 (en) * | 2003-09-25 | 2009-04-21 | International Business Machines Corporation | Managing a plurality of processors as devices |
US7478390B2 (en) * | 2003-09-25 | 2009-01-13 | International Business Machines Corporation | Task queue management of virtual devices using a plurality of processors |
US7516456B2 (en) * | 2003-09-25 | 2009-04-07 | International Business Machines Corporation | Asymmetric heterogeneous multi-threaded operating system |
US7321958B2 (en) * | 2003-10-30 | 2008-01-22 | International Business Machines Corporation | System and method for sharing memory by heterogeneous processors |
US8028292B2 (en) * | 2004-02-20 | 2011-09-27 | Sony Computer Entertainment Inc. | Processor task migration over a network in a multi-processor system |
US7298377B2 (en) * | 2004-06-24 | 2007-11-20 | International Business Machines Corporation | System and method for cache optimized data formatting |
US7304646B2 (en) * | 2004-08-19 | 2007-12-04 | Sony Computer Entertainment Inc. | Image data structure for direct memory access |
US7522168B2 (en) * | 2005-09-27 | 2009-04-21 | Sony Computer Entertainment Inc. | Cell processor task and data management |
US8037474B2 (en) | 2005-09-27 | 2011-10-11 | Sony Computer Entertainment Inc. | Task manager with stored task definition having pointer to a memory address containing required code data related to the task for execution |
US7975269B2 (en) | 2005-09-27 | 2011-07-05 | Sony Computer Entertainment Inc. | Parallel processor methods and apparatus |
US8544014B2 (en) * | 2007-07-24 | 2013-09-24 | Microsoft Corporation | Scheduling threads in multi-core systems |
US20090165003A1 (en) * | 2007-12-21 | 2009-06-25 | Van Jacobson | System and method for allocating communications to processors and rescheduling processes in a multiprocessor system |
-
2006
- 2006-07-31 US US11/461,390 patent/US7975269B2/en active Active
- 2006-09-25 JP JP2008533492A patent/JP4712876B2/ja active Active
- 2006-09-25 EP EP06815381.6A patent/EP1934737B1/en active Active
- 2006-09-25 WO PCT/US2006/037334 patent/WO2007038455A1/en active Application Filing
- 2006-09-25 EP EP10186971.7A patent/EP2312441B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997006484A1 (en) * | 1995-08-08 | 1997-02-20 | Novell, Inc. | Method and apparatus for strong affinity multiprocessor scheduling |
US6665699B1 (en) * | 1999-09-23 | 2003-12-16 | Bull Hn Information Systems Inc. | Method and data processing system providing processor affinity dispatching |
JP2005513587A (ja) * | 2001-05-10 | 2005-05-12 | オラクル・インターナショナル・コーポレイション | マルチポリシーリソーススケジューリングのための方法およびシステム |
JP2005235228A (ja) * | 2004-02-20 | 2005-09-02 | Sony Computer Entertainment Inc | マルチプロセッサシステムにおけるタスク管理方法および装置 |
JP2005235229A (ja) * | 2004-02-20 | 2005-09-02 | Sony Computer Entertainment Inc | マルチプロセッサシステムにおけるプロセッサタスクの移動方法および装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1934737B1 (en) | 2019-09-18 |
EP2312441B1 (en) | 2019-06-12 |
EP2312441A2 (en) | 2011-04-20 |
JP2009510611A (ja) | 2009-03-12 |
US20070198628A1 (en) | 2007-08-23 |
EP1934737A1 (en) | 2008-06-25 |
WO2007038455A1 (en) | 2007-04-05 |
US7975269B2 (en) | 2011-07-05 |
EP2312441A3 (en) | 2012-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4712876B2 (ja) | 並列プロセッサ方法と装置 | |
JP4964243B2 (ja) | プロセッサ方法と装置 | |
JP4712877B2 (ja) | 並列プロセッサのためのタスクマネージャ | |
US7647483B2 (en) | Multi-threaded parallel processor methods and apparatus | |
US10241831B2 (en) | Dynamic co-scheduling of hardware contexts for parallel runtime systems on shared machines | |
US9870252B2 (en) | Multi-threaded processing with reduced context switching | |
JP6897574B2 (ja) | アクセラレータ制御装置、アクセラレータ制御方法およびプログラム | |
CA2722670C (en) | Scheduler instances in a process | |
JP2011044165A (ja) | システムにおける要求のスケジューリング | |
US20120137300A1 (en) | Information Processor and Information Processing Method | |
Pinho et al. | Real-time fine-grained parallelism in ada | |
US9378062B2 (en) | Interface between a resource manager and a scheduler in a process | |
JP2003186686A (ja) | リソース制御装置、方法及び記憶媒体 | |
JP2008243203A (ja) | 仮想化されたデータ処理環境におけるワークロード管理 | |
Chandran et al. | AN EFFICIENT MULTIPROCESSOR MEMORY | |
JPH09167096A (ja) | 仮想計算機システムにおけるスケジューリング方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080526 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101116 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20101126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110131 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110131 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110131 |
|
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: 20110322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110323 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4712876 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |