JP7122299B2 - 処理タスクを実行するための方法、装置、デバイス、および記憶媒体 - Google Patents
処理タスクを実行するための方法、装置、デバイス、および記憶媒体 Download PDFInfo
- Publication number
- JP7122299B2 JP7122299B2 JP2019238897A JP2019238897A JP7122299B2 JP 7122299 B2 JP7122299 B2 JP 7122299B2 JP 2019238897 A JP2019238897 A JP 2019238897A JP 2019238897 A JP2019238897 A JP 2019238897A JP 7122299 B2 JP7122299 B2 JP 7122299B2
- Authority
- JP
- Japan
- Prior art keywords
- processing unit
- queue
- processing
- operations
- type
- 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 50
- 238000009825 accumulation Methods 0.000 claims description 52
- 230000009471 action Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 10
- 230000001186 cumulative effect Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000011664 signaling Effects 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/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3856—Reordering of instructions, e.g. using queues or age tags
-
- 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/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4831—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3838—Dependency mechanisms, e.g. register scoreboarding
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- 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/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- 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/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4831—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
- G06F9/4837—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority time dependent
-
- 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
-
- 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/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- 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
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Advance Control (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
Description
Claims (23)
- 処理タスクを実行する方法であって、
前記処理タスクを複数の部分に分けることであって、各部分は複数の処理ユニットのうちの1つの処理ユニットにおいて実行されるべき動作のセットを含み、前記動作のセットは第1のタイプの動作と第2のタイプの動作とを含み、前記第1のタイプの動作は累積動作を含み、前記第2のタイプの動作はコピー動作を含む、ことと、
前記第1のタイプの動作を実行するための第1のキューと、前記第2のタイプの動作を実行するための第2のキューとをそれぞれ作成することと、
前記処理タスクの定義に基づいて、前記処理ユニットにおいて実行されるべき前記動作のセットと、前記複数の処理ユニットのうちの他の処理ユニットにおいて実行されるべき動作のセットとの間の依存関係を取得することであって、前記依存関係は順次実行関係と並行実行関係とを含む、ことと、
前記依存関係が順次実行関係である場合、前記複数の処理ユニットにおいて前記第1のキューにおける動作を順次実行することと、
前記依存関係が並行実行関係である場合、前記複数の処理ユニットにおいて前記第2のキューにおける動作を並行実行することと、を含む処理タスクを実行する方法。 - 前記第1のタイプの動作の第1の動作のセットを実行するための第1のコードと、前記第2のタイプの動作の第2の動作のセットを実行するための第2のコードとをそれぞれ前記処理ユニットにロードすることをさらに含み、
前記依存関係が順次実行関係である場合、前記複数の処理ユニットにおいて前記第1のキューにおける動作を順次実行することは、前記第1のコードに基づいて前記第1のキューにおける動作を実行することを含み、
前記依存関係が並行実行関係である場合、前記複数の処理ユニットにおいて前記第2のキューにおける動作を並行実行することは、前記第2のコードに基づいて前記第2のキューにおける動作を実行することを含む、請求項1に記載の方法。 - 前記処理ユニットのメモリに前記第1のコードと前記第2のコードのうちの少なくともいずれかをそれぞれ保持することをさらに含む請求項2に記載の方法。
- 前記処理ユニットにおいて、前記処理タスクの処理対象データのうちの、前記処理ユニットにおいて処理されるべき、前記複数の処理ユニットの数に応じて前記処理対象データを分割して得られたデータブロックを受信することをさらに含み、
前記処理ユニットにおいて前記第1のキューにおける動作と前記第2のキューにおける動作とをそれぞれ実行することは、前記処理ユニットにおいて前記データブロックに対して前記第1のキューにおける動作と前記第2のキューにおける動作とをそれぞれ実行することを含む請求項1に記載の方法。 - 前記処理タスクはオールリデュースタスクであり、前記複数の処理ユニットはループ状に接続されており、
前記第1のタイプの動作は、前記処理ユニットの前に接続された前の処理ユニットから前記処理ユニットにコピーされた累積結果に前記処理ユニットにおけるデータブロックを累積して前記処理ユニットの累積結果とするための累積動作を含み、
前記第2のタイプの動作は、前記処理ユニットの後に接続された次の処理ユニットに前記処理ユニットにおけるデータブロックと累積結果のうちの少なくともいずれかをコピーするためのコピー動作を含む請求項4に記載の方法。 - 前記処理ユニットにおいて前記第1のキューと前記第2のキューのいずれかにおける動作が完了したことに応答して、前記処理ユニットのハードウェア割り込みを利用して前記他の処理ユニットに通知することを含む請求項5に記載の方法。
- 前記処理ユニットにおいて前記第1のキューと前記第2のキューのいずれかにおける動作が完了したことに対応して、前記処理ユニットのハードウェア割り込みを利用して前記他の処理ユニットに通知することは、
前記処理ユニットにおいて第1のキューにおける1つの累積動作が実行されたことに対応して、前記ハードウェア割り込みに基づいて、前記第2のキューにおける次のコピー動作を実行するように前記前の処理ユニットに通知することを含む請求項6に記載の方法。 - 前記処理ユニットにおいて前記第1のキューと前記第2のキューのいずれかにおける動作が完了したことに対応して、前記処理ユニットのハードウェア割り込みを利用して前記他の処理ユニットに通知することは、
前記処理ユニットにおいて前記第2のキューにおける1つのコピー動作が実行されたことに対応して、前記ハードウェア割り込みに基づいて、前記第1のキューにおける次の累積動作を実行するように前記次の処理ユニットに通知することを含む請求項6に記載の方法。 - 前記処理ユニットと前記次の処理ユニットはキャッシュ領域を共有し、
前記処理ユニットにおいて前記コピー動作を実行することは、前記処理ユニットから前記キャッシュ領域に前記累積結果をコピーすることを含む請求項8に記載の方法。 - 前記処理ユニットにおいて前記第1のキューと前記第2のキューにおける動作がすべて実行されていると判断されたことに対応して、前記処理ユニットが前記処理タスクのうちの前記部分を実行したことを報告することをさらに含む請求項1に記載の方法。
- 処理タスクを実行する装置であって、
前記処理タスクを複数の部分に分けるように構成された処理タスク分けモジュールであって、各部分は複数の処理ユニットのうちの1つの処理ユニットにおいて実行されるべき動作のセットを含み、前記動作のセットは第1のタイプの動作と第2のタイプの動作とを含み、前記第1のタイプの動作は累積動作を含み、前記第2のタイプの動作はコピー動作を含む、処理タスク分けモジュールと、
前記第1のタイプの動作を実行するための第1のキューと、前記第2のタイプの動作を実行するための第2のキューとをそれぞれ作成するように構成されたキュー作成モジュールと、
前記処理タスクの定義に基づいて、前記処理ユニットにおいて実行されるべき前記動作のセットと、前記複数の処理ユニットのうちの他の処理ユニットにおいて実行されるべき動作のセットとの間の依存関係を取得するように構成された依存関係取得モジュールであって、前記依存関係は順次実行関係と並行実行関係とを含む、依存関係取得モジュールと、
前記依存関係が順次実行関係である場合、前記複数の処理ユニットにおいて前記第1のキューにおける動作を順次実行し、前記依存関係が並行実行関係である場合、前記複数の処理ユニットにおいて前記第2のキューにおける動作を並行実行するように構成された動作実行モジュールと、を含む処理タスクを実行する装置。 - 前記第1のタイプの動作を実行するための第1のコードと、前記第2のタイプの動作を実行するための第2のコードとをそれぞれ前記処理ユニットにロードするように構成されたロードモジュールをさらに含み、
前記動作実行モジュールは、
前記第1のコードに基づいて前記第1のキューにおける動作を実行するように構成された第1の実行モジュールと、
前記第2のコードに基づいて前記第2のキューにおける動作を実行するように構成された第2の実行モジュールと、を含む請求項11に記載の装置。 - 前記処理ユニットのメモリに前記第1のコードと前記第2のコードのうちの少なくともいずれかをそれぞれ保持するように構成された保持モジュールをさらに含む請求項12に記載の装置。
- 前記処理ユニットにおいて、前記処理タスクの処理対象データのうちの、前記処理ユニットにおいて処理されるべき、前記複数の処理ユニットの数に応じて前記処理対象データを分割して得られたデータブロックを受信するように構成された受信モジュールをさらに含み、
前記動作実行モジュールは、前記処理ユニットにおいて前記データブロックに対して前記第1のキューにおける動作と前記第2のキューにおける動作とをそれぞれ実行するように構成されたデータ処理モジュールをさらに含む請求項11に記載の装置。 - 前記処理タスクはオールリデュースタスクであり、前記複数の処理ユニットはループ状に接続されており、
前記第1のタイプの動作は、前記処理ユニットの前に接続された前の処理ユニットから前記処理ユニットにコピーされた累積結果に前記処理ユニットにおけるデータブロックを累積して前記処理ユニットの累積結果とするための累積動作を含み、
前記第2のタイプの動作は、前記処理ユニットの後に接続された次の処理ユニットに前記処理ユニットにおけるデータブロックと累積結果のうちの少なくともいずれかをコピーするためのコピー動作を含む請求項14に記載の装置。 - 前記動作実行モジュールは、前記処理ユニットにおいて前記第1のキューと前記第2のキューのいずれかにおける動作が完了したことに応答して、前記処理ユニットのハードウェア割り込みを利用して前記他の処理ユニットに通知するように構成された通知モジュールを含む請求項15に記載の装置。
- 前記通知モジュールは、前記処理ユニットにおいて第1のキューにおける1つの累積動作が実行されたことに対応して、前記ハードウェア割り込みに基づいて、前記第2のキューにおける次のコピー動作を実行するように前記前の処理ユニットに通知するように構成された第1の通知モジュールを含む請求項16に記載の装置。
- 前記通知モジュールは、前記処理ユニットにおいて前記第2のキューにおける1つのコピー動作が実行されたことに対応して、前記ハードウェア割り込みに基づいて、前記第1のキューにおける次の累積動作を実行するように前記次の処理ユニットに通知するように構成された第2の通知モジュールを含む請求項16に記載の装置。
- 前記処理ユニットと前記次の処理ユニットはキャッシュ領域を共有し、
前記装置は、前記処理ユニットから前記キャッシュ領域に前記データブロックと累積結果のうちの少なくともいずれかをコピーするように構成されたコピーモジュールをさらに含む請求項18に記載の装置。 - 前記処理ユニットにおいて前記第1のキューと前記第2のキューにおける動作がすべて実行されていると判断されたことに対応して、前記処理ユニットが前記処理タスクのうちの前記部分を実行したことを報告するように構成された報告モジュールをさらに含む請求項11に記載の装置。
- 請求項1~10のいずれか1項に記載の方法を実行するための1つまたは複数のプロセッサと、
請求項1~10のいずれか1項に記載の方法を実行する1つまたは複数のプログラムを格納するための記憶装置と、を備える処理タスクを実行するデバイス。 - コンピュータプログラムが格納されているコンピュータ可読記憶媒体であって、
前記コンピュータプログラムは、プロセッサによって実行されると、請求項1~10のいずれか1項に記載の方法を実施するコンピュータ可読記憶媒体。 - コンピュータプログラムであって、
前記コンピュータプログラムがプロセッサにより実行されると、請求項1~10のいずれか1項に記載の方法を実現する、コンピュータプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910859334.7 | 2019-09-11 | ||
CN201910859334.7A CN112486638A (zh) | 2019-09-11 | 2019-09-11 | 用于执行处理任务的方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021043933A JP2021043933A (ja) | 2021-03-18 |
JP7122299B2 true JP7122299B2 (ja) | 2022-08-19 |
Family
ID=69055870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019238897A Active JP7122299B2 (ja) | 2019-09-11 | 2019-12-27 | 処理タスクを実行するための方法、装置、デバイス、および記憶媒体 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11301255B2 (ja) |
EP (1) | EP3792757A1 (ja) |
JP (1) | JP7122299B2 (ja) |
KR (1) | KR102350785B1 (ja) |
CN (1) | CN112486638A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11561840B2 (en) * | 2020-01-30 | 2023-01-24 | Alibaba Group Holding Limited | Efficient inter-chip interconnect topology for distributed parallel deep learning |
CN116483584B (zh) * | 2023-05-26 | 2024-05-03 | 摩尔线程智能科技(北京)有限责任公司 | Gpu的任务处理方法、装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006048696A (ja) | 2004-07-30 | 2006-02-16 | Intel Corp | 複数の順序ベクトルで複数のメモリ順序モデルを実施する方法及び装置 |
JP2007200295A (ja) | 2006-01-26 | 2007-08-09 | Internatl Business Mach Corp <Ibm> | コマンド順序依存性を追跡する方法および装置 |
JP2016537717A (ja) | 2013-12-23 | 2016-12-01 | インテル・コーポレーション | 複数のハイブリッドプロセッサコアを含むシステムオンチップ(SoC) |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3639323B2 (ja) * | 1994-03-31 | 2005-04-20 | 富士通株式会社 | メモリ分散型並列計算機による連立1次方程式計算処理方法および計算機 |
US20040139299A1 (en) * | 2003-01-14 | 2004-07-15 | International Business Machines Corporation | Operand forwarding in a superscalar processor |
US7620945B1 (en) * | 2005-08-16 | 2009-11-17 | Sun Microsystems, Inc. | Parallelization scheme for generic reduction |
CN101807160B (zh) | 2005-08-22 | 2012-01-25 | 新日铁系统集成株式会社 | 信息处理系统 |
US8065503B2 (en) * | 2006-12-15 | 2011-11-22 | International Business Machines Corporation | Iteratively processing data segments by concurrently transmitting to, processing by, and receiving from partnered process |
US7707390B2 (en) * | 2007-04-25 | 2010-04-27 | Arm Limited | Instruction issue control within a multi-threaded in-order superscalar processor |
US8161480B2 (en) | 2007-05-29 | 2012-04-17 | International Business Machines Corporation | Performing an allreduce operation using shared memory |
US8683471B2 (en) * | 2008-10-02 | 2014-03-25 | Mindspeed Technologies, Inc. | Highly distributed parallel processing on multi-core device |
US20110276966A1 (en) * | 2010-05-06 | 2011-11-10 | Arm Limited | Managing task dependency within a data processing system |
US8700834B2 (en) * | 2011-09-06 | 2014-04-15 | Western Digital Technologies, Inc. | Systems and methods for an enhanced controller architecture in data storage systems |
WO2014020959A1 (ja) | 2012-07-30 | 2014-02-06 | 日本電気株式会社 | 分散処理装置及び分散処理システム並びに分散処理方法 |
US20140101673A1 (en) * | 2012-10-05 | 2014-04-10 | Microsoft Corporation | Dynamic dependency evaluation for computing task execution |
US10928882B2 (en) * | 2014-10-16 | 2021-02-23 | Futurewei Technologies, Inc. | Low cost, low power high performance SMP/ASMP multiple-processor system |
KR101676467B1 (ko) | 2016-06-24 | 2016-11-15 | 주식회사 넷츠 | 프로비저닝 방법 및 그 장치 |
US10318348B2 (en) * | 2016-09-23 | 2019-06-11 | Imagination Technologies Limited | Task scheduling in a GPU |
US10698785B2 (en) * | 2017-05-30 | 2020-06-30 | International Business Machines Corporation | Task management based on an access workload |
CN107315629A (zh) * | 2017-06-14 | 2017-11-03 | 北京小米移动软件有限公司 | 任务处理方法、装置及存储介质 |
CN108491260A (zh) * | 2018-04-12 | 2018-09-04 | 迈普通信技术股份有限公司 | 通信设备多任务测试方法及装置 |
US11243775B2 (en) * | 2019-03-26 | 2022-02-08 | Intel Corporation | System, apparatus and method for program order queue (POQ) to manage data dependencies in processor having multiple instruction queues |
US11023289B2 (en) * | 2019-07-12 | 2021-06-01 | Vmware, Inc. | Cloud environment configuration based on task parallelization |
-
2019
- 2019-09-11 CN CN201910859334.7A patent/CN112486638A/zh active Pending
- 2019-12-27 JP JP2019238897A patent/JP7122299B2/ja active Active
- 2019-12-30 US US16/729,989 patent/US11301255B2/en active Active
- 2019-12-30 EP EP19220081.4A patent/EP3792757A1/en active Pending
-
2020
- 2020-01-06 KR KR1020200001215A patent/KR102350785B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006048696A (ja) | 2004-07-30 | 2006-02-16 | Intel Corp | 複数の順序ベクトルで複数のメモリ順序モデルを実施する方法及び装置 |
JP2007200295A (ja) | 2006-01-26 | 2007-08-09 | Internatl Business Mach Corp <Ibm> | コマンド順序依存性を追跡する方法および装置 |
JP2016537717A (ja) | 2013-12-23 | 2016-12-01 | インテル・コーポレーション | 複数のハイブリッドプロセッサコアを含むシステムオンチップ(SoC) |
Non-Patent Citations (1)
Title |
---|
FUJITSU Software Interstage Big Data Parallel Processing Server V1.2.2 ユーザーズガイド,[online],富士通株式会社,2018年04月,第190頁-第211頁,https://software.fujitsu.com/jp/manual/manualfiles/m180003/j2ul1563/06z200/j2ul-1563-06z0.pdf,[令和3年4月22日検索],インターネット<URL:https://software.fujitsu.com/jp/manual/manualfiles/m180003/j2ul1563/06z200/j2ul-1563-06z0.pdf> |
Also Published As
Publication number | Publication date |
---|---|
JP2021043933A (ja) | 2021-03-18 |
US20210072996A1 (en) | 2021-03-11 |
EP3792757A1 (en) | 2021-03-17 |
CN112486638A (zh) | 2021-03-12 |
KR20210031347A (ko) | 2021-03-19 |
US11301255B2 (en) | 2022-04-12 |
KR102350785B1 (ko) | 2022-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8209690B2 (en) | System and method for thread handling in multithreaded parallel computing of nested threads | |
US9582312B1 (en) | Execution context trace for asynchronous tasks | |
KR101332840B1 (ko) | 병렬 컴퓨팅 프레임워크 기반의 클러스터 시스템, 호스트 노드, 계산 노드 및 어플리케이션 실행 방법 | |
US8112559B2 (en) | Increasing available FIFO space to prevent messaging queue deadlocks in a DMA environment | |
JP2010079622A (ja) | マルチコアプロセッサシステム、および、そのタスク制御方法 | |
JP2009265963A (ja) | 情報処理システム及びタスクの実行制御方法 | |
US9348658B1 (en) | Technologies for efficient synchronization barriers with work stealing support | |
US20160232037A1 (en) | Latency-hiding context management for concurrent distributed tasks | |
KR102338849B1 (ko) | 실시간 운영 체제에서 스택 메모리 관리를 제공하는 방법 및 시스템 | |
US10310891B2 (en) | Hand-off scheduling | |
US20130097382A1 (en) | Multi-core processor system, computer product, and control method | |
JP7122299B2 (ja) | 処理タスクを実行するための方法、装置、デバイス、および記憶媒体 | |
Reano et al. | Intra-node memory safe gpu co-scheduling | |
US20110173287A1 (en) | Preventing messaging queue deadlocks in a dma environment | |
WO2022160628A1 (zh) | 命令处理装置、方法、电子设备以及计算机可读存储介质 | |
CN112486468A (zh) | 基于spark内核的任务执行方法、系统和计算机设备 | |
JP2014164664A (ja) | タスク並列処理方法、装置及びプログラム | |
KR101332839B1 (ko) | 병렬 컴퓨팅 프레임워크 기반 클러스터 시스템의 호스트 노드 및 메모리 관리 방법 | |
JP6368452B2 (ja) | 非同期のデバイスによって実行されるタスクのスケジューリングの向上 | |
CN115599507A (zh) | 数据处理方法、执行工作站、电子设备和存储介质 | |
JP2018536945A (ja) | タスクをタイムベーススケジューリングする方法及び装置 | |
US10713085B2 (en) | Asynchronous sequential processing execution | |
JP5867630B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム | |
US8566829B1 (en) | Cooperative multi-level scheduler for virtual engines | |
JP2010020683A (ja) | スレッド制御方法およびスレッド制御装置ならびにリアルタイムシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200214 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200214 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210317 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210511 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210810 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20211018 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20211018 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220415 |
|
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: 20220802 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220808 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7122299 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |