JP2009020692A - タスク管理装置、タスク管理方法及びタスク管理プログラム - Google Patents
タスク管理装置、タスク管理方法及びタスク管理プログラム Download PDFInfo
- Publication number
- JP2009020692A JP2009020692A JP2007182574A JP2007182574A JP2009020692A JP 2009020692 A JP2009020692 A JP 2009020692A JP 2007182574 A JP2007182574 A JP 2007182574A JP 2007182574 A JP2007182574 A JP 2007182574A JP 2009020692 A JP2009020692 A JP 2009020692A
- Authority
- JP
- Japan
- Prior art keywords
- task
- group
- tasks
- assigned
- cpu
- 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.)
- Pending
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/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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/506—Constraint
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【解決手段】タスクを実行する複数のCPUと、所定時間以内にCPUに割り当てられる複数のタスクと当該複数タスク毎に割り当てられた時間的局所グループと対応付けて記憶するタスクテーブルと、複数のタスクのいずれか一つのタスクを、複数のCPUのうちいずれか一つに対して割り当てる第1の割当部と、割り当てた後に、タスクが終了したCPUに対して、割り当てたタスクに対応付けられた時間的局所グループと同じ時間的局所グループと対応付けられているタスクを、当該時間的局所グループに対応付けられていない他のタスクより先に割り当てる第2の割当部と、を備える。
【選択図】 図1
Description
図1は、本発明の第1の実施の形態にかかるタスク管理装置100の構成を示すブロック図である。本図に示すように、タスク管理装置100は、ソフトウェア部にアプリケーション150a〜nと、OS101とを備え、ハードウェア部にキャッシュメモリ11と、CPU12と、RAM13とを備える。
第1の実施の形態では、タスク管理装置100が1個のCPUのみ備えている場合について説明した。次に第2の実施の形態ではタスク管理装置が複数のCPUを備えている場合について説明する。
上述した第1及び第2の実施形態では、タスクを時間的局所グループでグループ化した。しかしながら、グループ化は時間的局所性の概念に制限するものではない。そこで、第3の実施の形態では、時間的局所性以外の概念を用いてグループ化した例について説明する。
第4の実施の形態では、時間的局所性及び空間的局所性のそれぞれについてグループ化した場合について説明する。
次に、グループ化されたタスクをCPUに割り当てた後、割り当てたタスクを別のCPUに再割り当てを行う場合について説明する。
次に、空間的局所グループ及び時間的局所グループが存在する場合にさらに詳細に割り当てる条件を定めた例について説明する。
12 CPU
13 RAM
14 ROM
15 通信I/F
16 バス
21 第1キャッシュメモリ
22 第1CPU
23 第2キャッシュメモリ
24 第2CPU
25 第3キャッシュメモリ
26 第3CPU
100、1100、1900、3100、4200、4700 タスク管理装置
101、1101、1901、3101、4201、4701 OS
102、1905、3105 タスク生成部
103、1904、3103 スケジューリング履歴記憶部
104、1902、3102 タスクテーブル
105、1102、1903、3104、4202、4702 スケジューリング部
111、1111、1911、3111、4711 第1割当部
112、1112、1912、3112、4712 第2割当部
113、1913、3113、4713 グループ判断部
114、1914、3114、4212 アクティブ設定部
150a〜n アプリケーション
4211 再割当部
Claims (8)
- タスクを実行する複数のプロセッサと、
所定時間以内に前記プロセッサに割り当てられる複数のタスクと、当該複数タスク毎に割り当てられた時間的グループと、対応付けて記憶するタスク記憶部と、
複数の前記タスクのいずれか一つのタスクを、複数の前記プロセッサのうちいずれか一つに対して割り当てる第1の割当部と、
前記第1の割当部が割り当てた後に、タスクが終了したプロセッサに対して、割り当てられた前記タスクに対応付けられた前記時間的グループと同じ前記時間的グループに対応付けられている他のタスクを、当該時間的グループに対応付けられていないタスクより先に割り当てる第2の割当部と、
を備えることを特徴とするタスク管理装置。 - 前記タスク記憶部は、さらに、同じプロセッサに割り当てられるタスクをグループ化した空間的グループを、対応付けて記憶し、
前記第2の割当部は、さらに前記第1の割当部が前記タスクを割り当てた前記プロセッサに対して、当該タスクに対応付けられた前記空間的グループと同じ前記空間的グループに対応付けられている他のタスクを割り当てること、
を特徴とする請求項1に記載のタスク管理装置。 - 前記第2の割当部は、当該タスクに対応付けられた前記空間的グループと同じ前記空間的グループに対応付けられている他のタスクを、前記空間的グループと対応付けられていない前記タスクより先に前記プロセッサに割り当てること、
を特徴とする請求項2に記載のタスク管理装置。 - 前記タスク記憶部は、所定時間以内に前記プロセッサに割り当てられると共に同じプロセッサに割り当てられる複数のタスクと、当該複数タスク毎に割り当てられた時間的グループと、を対応付けて記憶し、
前記第2の割当部は、前記第1の割当部が割り当てた前記タスクが終了した前記プロセッサに対して、当該タスクに対応付けられた前記時間的グループと同じ前記時間的グループと対応付けられている他のタスクを、当該時間的グループに対応付けられていないタスクより先に割り当てること、
を特徴とする請求項1に記載のタスク管理装置。 - 任意の前記プロセッサが他の前記プロセッサより割り当てられた前記タスクの数が多い場合に、任意の当該プロセッサに対して割り当てられている前記タスクに対応付けられた前記空間的グループと同じ前記空間的グループと対応付けられている他のタスクを、他の前記プロセッサに再割り当てを行う再割当部をさらに備えることを特徴とする請求項2乃至4のいずれか一つに記載のタスク管理装置。
- プロセッサと、
所定時間以内に前記プロセッサに割り当てられる複数のタスクと、当該複数タスク毎に割り当てられた時間的グループと、対応付けて記憶するタスク記憶部と、
複数の前記タスクのいずれか一つのタスクを、前記プロセッサに対して割り当てる第1の割当部と、
割り当てられた前記タスクに対応付けられた前記時間的グループと同じ前記時間的グループに対応付けられている他のタスクを、当該時間的グループに対応付けられていないタスクより先に前記プロセッサに割り当てる第2の割当部と、
を備えることを特徴とするタスク管理装置。 - 所定時間以内にプロセッサに割り当てられる時間的グループにグループ化された複数のタスクと、当該複数タスク毎に割り当てられた時間的グループと、対応付けてタスク記憶部に記憶するタスク記憶ステップと、
複数の前記タスクのいずれか一つのタスクを、複数の前記プロセッサのうちいずれか一つに対して割り当てる第1の割当ステップと、
前記第1の割当ステップが割り当てた後に、タスクが終了したプロセッサに対して、割り当てられた前記タスクに対応付けられた前記時間的グループと同じ前記時間的グループに対応付けられている他のタスクを、当該時間的グループに対応付けられていないタスクより先に割り当てる第2の割当ステップと、
を有することを特徴とするタスク管理方法。 - 所定時間以内にプロセッサに割り当てられる複数のタスクと、当該複数タスク毎に割り当てられた時間的グループと、対応付けてタスク記憶部に記憶するタスク記憶ステップと、
複数の前記タスクのいずれか一つのタスクを、複数の前記プロセッサのうちいずれか一つに対して割り当てる第1の割当ステップと、
前記第1の割当ステップが割り当てた後に、タスクが終了したプロセッサに対して、割り当てられた前記タスクに対応付けられた前記時間的グループと同じ前記時間的グループに対応付けられている他のタスクを、当該時間的グループに対応付けられていないタスクより先に割り当てる第2の割当ステップと、
をコンピュータに実行させることを特徴とするタスク管理プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007182574A JP2009020692A (ja) | 2007-07-11 | 2007-07-11 | タスク管理装置、タスク管理方法及びタスク管理プログラム |
US12/041,325 US20090019450A1 (en) | 2007-07-11 | 2008-03-03 | Apparatus, method, and computer program product for task management |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007182574A JP2009020692A (ja) | 2007-07-11 | 2007-07-11 | タスク管理装置、タスク管理方法及びタスク管理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009020692A true JP2009020692A (ja) | 2009-01-29 |
Family
ID=40254194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007182574A Pending JP2009020692A (ja) | 2007-07-11 | 2007-07-11 | タスク管理装置、タスク管理方法及びタスク管理プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090019450A1 (ja) |
JP (1) | JP2009020692A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010113482A (ja) * | 2008-11-05 | 2010-05-20 | Panasonic Corp | 資源割付方法、プログラム、及び資源割付装置 |
WO2014181924A1 (ko) * | 2013-05-06 | 2014-11-13 | (주)넥셀 | 프로세싱 장치 및 방법 |
JP2019106120A (ja) * | 2017-12-14 | 2019-06-27 | 日本電気株式会社 | プロセススケジューリング装置、プロセス実行装置およびプロセススケジューリング方法 |
JP2021005287A (ja) * | 2019-06-27 | 2021-01-14 | 富士通株式会社 | 情報処理装置及び演算プログラム |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5347648B2 (ja) * | 2009-03-30 | 2013-11-20 | 富士通株式会社 | プログラム、情報処理装置及び状態出力方法 |
US9430286B2 (en) * | 2011-12-12 | 2016-08-30 | International Business Machines Corporation | Authorizing distributed task processing in a distributed storage network |
US9058217B2 (en) | 2012-09-14 | 2015-06-16 | International Business Machines Corporation | Preferential CPU utilization for tasks |
US9329671B2 (en) * | 2013-01-29 | 2016-05-03 | Nvidia Corporation | Power-efficient inter processor communication scheduling |
US20150081400A1 (en) * | 2013-09-19 | 2015-03-19 | Infosys Limited | Watching ARM |
US9465645B1 (en) * | 2014-06-25 | 2016-10-11 | Amazon Technologies, Inc. | Managing backlogged tasks |
US10120716B2 (en) * | 2014-10-02 | 2018-11-06 | International Business Machines Corporation | Task pooling and work affinity in data processing |
US10366358B1 (en) | 2014-12-19 | 2019-07-30 | Amazon Technologies, Inc. | Backlogged computing work exchange |
US10013214B2 (en) | 2015-12-29 | 2018-07-03 | International Business Machines Corporation | Adaptive caching and dynamic delay scheduling for in-memory data analytics |
CN107329820B (zh) * | 2016-04-28 | 2019-12-20 | 杭州海康威视数字技术股份有限公司 | 一种用于集群系统的任务处理方法及装置 |
CN111190717B (zh) * | 2020-01-02 | 2023-04-25 | 北京字节跳动网络技术有限公司 | 任务的处理方法和系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03113563A (ja) * | 1989-09-28 | 1991-05-14 | Hitachi Ltd | マルチプロセッサスケジューリング方法 |
JPH07152587A (ja) * | 1993-09-21 | 1995-06-16 | Microsoft Corp | 協調型のタスク・グループを有する横取り型のマルチ・タスキング方法およびデータ処理システム |
JPH11259318A (ja) * | 1998-03-13 | 1999-09-24 | Hitachi Ltd | ディスパッチ方式 |
JP2004199674A (ja) * | 2002-12-13 | 2004-07-15 | Hewlett-Packard Development Co Lp | 複数の優先順位グループに関連付けられたプロセスを複数のリソース間に分散する方法 |
JP2004326486A (ja) * | 2003-04-25 | 2004-11-18 | Matsushita Electric Ind Co Ltd | タスク管理装置 |
JP2005258920A (ja) * | 2004-03-12 | 2005-09-22 | Fujitsu Ltd | マルチスレッド実行方法、マルチスレッド実行プログラム、およびマルチスレッド実行装置 |
JP2006024180A (ja) * | 2004-06-10 | 2006-01-26 | Hitachi Ltd | 計算機システム及びその資源割当て方法 |
JP2006155480A (ja) * | 2004-12-01 | 2006-06-15 | Sony Computer Entertainment Inc | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム |
JP2007140710A (ja) * | 2005-11-15 | 2007-06-07 | Sony Computer Entertainment Inc | タスク割り当て方法およびタスク割り当て装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5339415A (en) * | 1990-06-11 | 1994-08-16 | Cray Research, Inc. | Dual level scheduling of processes to multiple parallel regions of a multi-threaded program on a tightly coupled multiprocessor computer system |
JPH04195577A (ja) * | 1990-11-28 | 1992-07-15 | Hitachi Ltd | マルチプロセッサにおけるタスクスケジューリング方式 |
US6948172B1 (en) * | 1993-09-21 | 2005-09-20 | Microsoft Corporation | Preemptive multi-tasking with cooperative groups of tasks |
US5745778A (en) * | 1994-01-26 | 1998-04-28 | Data General Corporation | Apparatus and method for improved CPU affinity in a multiprocessor system |
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 |
JP3730740B2 (ja) * | 1997-02-24 | 2006-01-05 | 株式会社日立製作所 | 並列ジョブ多重スケジューリング方法 |
US6658448B1 (en) * | 1999-10-21 | 2003-12-02 | Unisys Corporation | System and method for assigning processes to specific CPU's to increase scalability and performance of operating systems |
US6996822B1 (en) * | 2001-08-01 | 2006-02-07 | Unisys Corporation | Hierarchical affinity dispatcher for task management in a multiprocessor computer system |
US7155716B2 (en) * | 2002-03-08 | 2006-12-26 | Intel Corporation | Weighted and prioritized task scheduler |
US7076781B2 (en) * | 2002-05-31 | 2006-07-11 | International Business Machines Corporation | Resource reservation for large-scale job scheduling |
JP4028444B2 (ja) * | 2003-06-27 | 2007-12-26 | 株式会社東芝 | スケジューリング方法およびリアルタイム処理システム |
US8533716B2 (en) * | 2004-03-31 | 2013-09-10 | Synopsys, Inc. | Resource management in a multicore architecture |
US8051418B1 (en) * | 2005-03-21 | 2011-11-01 | Oracle America, Inc. | Techniques for providing improved affinity scheduling in a multiprocessor computer system |
US8489700B2 (en) * | 2005-11-30 | 2013-07-16 | International Business Machines Corporation | Analysis of nodal affinity behavior |
US8032884B2 (en) * | 2006-10-31 | 2011-10-04 | Hewlett-Packard Development Company, L.P. | Thread hand off |
US8645963B2 (en) * | 2009-11-05 | 2014-02-04 | International Business Machines Corporation | Clustering threads based on contention patterns |
-
2007
- 2007-07-11 JP JP2007182574A patent/JP2009020692A/ja active Pending
-
2008
- 2008-03-03 US US12/041,325 patent/US20090019450A1/en not_active Abandoned
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03113563A (ja) * | 1989-09-28 | 1991-05-14 | Hitachi Ltd | マルチプロセッサスケジューリング方法 |
JPH07152587A (ja) * | 1993-09-21 | 1995-06-16 | Microsoft Corp | 協調型のタスク・グループを有する横取り型のマルチ・タスキング方法およびデータ処理システム |
JPH11259318A (ja) * | 1998-03-13 | 1999-09-24 | Hitachi Ltd | ディスパッチ方式 |
JP2004199674A (ja) * | 2002-12-13 | 2004-07-15 | Hewlett-Packard Development Co Lp | 複数の優先順位グループに関連付けられたプロセスを複数のリソース間に分散する方法 |
JP2004326486A (ja) * | 2003-04-25 | 2004-11-18 | Matsushita Electric Ind Co Ltd | タスク管理装置 |
JP2005258920A (ja) * | 2004-03-12 | 2005-09-22 | Fujitsu Ltd | マルチスレッド実行方法、マルチスレッド実行プログラム、およびマルチスレッド実行装置 |
JP2006024180A (ja) * | 2004-06-10 | 2006-01-26 | Hitachi Ltd | 計算機システム及びその資源割当て方法 |
JP2006155480A (ja) * | 2004-12-01 | 2006-06-15 | Sony Computer Entertainment Inc | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム |
JP2007140710A (ja) * | 2005-11-15 | 2007-06-07 | Sony Computer Entertainment Inc | タスク割り当て方法およびタスク割り当て装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010113482A (ja) * | 2008-11-05 | 2010-05-20 | Panasonic Corp | 資源割付方法、プログラム、及び資源割付装置 |
WO2014181924A1 (ko) * | 2013-05-06 | 2014-11-13 | (주)넥셀 | 프로세싱 장치 및 방법 |
KR101476789B1 (ko) * | 2013-05-06 | 2014-12-26 | (주)넥셀 | 프로세싱 장치 및 방법 |
JP2019106120A (ja) * | 2017-12-14 | 2019-06-27 | 日本電気株式会社 | プロセススケジューリング装置、プロセス実行装置およびプロセススケジューリング方法 |
JP7009971B2 (ja) | 2017-12-14 | 2022-01-26 | 日本電気株式会社 | プロセススケジューリング装置およびプロセススケジューリング方法 |
JP2021005287A (ja) * | 2019-06-27 | 2021-01-14 | 富士通株式会社 | 情報処理装置及び演算プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20090019450A1 (en) | 2009-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009020692A (ja) | タスク管理装置、タスク管理方法及びタスク管理プログラム | |
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 | |
WO2017166777A1 (zh) | 一种任务调度方法及装置 | |
JP5516744B2 (ja) | スケジューラ、マルチコアプロセッサシステムおよびスケジューリング方法 | |
KR101378390B1 (ko) | 공유 스택의 부분들을 할당하기 위한 시스템 및 방법 | |
US20060123423A1 (en) | Borrowing threads as a form of load balancing in a multiprocessor data processing system | |
EP1876531A1 (en) | Multi-processor system abd program for causing computer to execute multi-processor system control method | |
KR101640848B1 (ko) | 멀티코어 시스템 상에서 단위 작업을 할당하는 방법 및 그 장치 | |
US20150121387A1 (en) | Task scheduling method for dispatching tasks based on computing power of different processor cores in heterogeneous multi-core system and related non-transitory computer readable medium | |
JP2008191949A (ja) | マルチコアシステムおよびマルチコアシステムの負荷分散方法 | |
US8024739B2 (en) | System for indicating and scheduling additional execution time based on determining whether the execution unit has yielded previously within a predetermined period of time | |
CN107515781B (zh) | 一种基于多处理器的确定性任务调度及负载均衡系统 | |
US20110153971A1 (en) | Data Processing System Memory Allocation | |
US20160139959A1 (en) | Information processing system, method and medium | |
JP2007188523A (ja) | タスク実行方法およびマルチプロセッサシステム | |
US20060143204A1 (en) | Method, apparatus and system for dynamically allocating sequestered computing resources | |
US10782974B2 (en) | VLIW interface device and method for controlling the same | |
JP5737298B2 (ja) | スケジューリング方法およびスケジューリングシステム | |
US9678752B2 (en) | Scheduling apparatus and method of dynamically setting the size of a rotating register | |
JP5776813B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法および制御プログラム | |
TWI783401B (zh) | 記憶體管理方法和相關產品 | |
WO2014188642A1 (ja) | スケジュールシステム、スケジュール方法、及び、記録媒体 | |
JP2015026132A (ja) | リソース制御装置及び方法及びプログラム | |
JP6428557B2 (ja) | 並列化方法、並列化ツール | |
KR20130067100A (ko) | 이종 멀티코어 환경에서의 코어 배정 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100526 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110830 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120605 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121016 |