JP2016520911A - コンピューティングシステムによって実行されるタスクの制御 - Google Patents
コンピューティングシステムによって実行されるタスクの制御 Download PDFInfo
- Publication number
- JP2016520911A JP2016520911A JP2016510749A JP2016510749A JP2016520911A JP 2016520911 A JP2016520911 A JP 2016520911A JP 2016510749 A JP2016510749 A JP 2016510749A JP 2016510749 A JP2016510749 A JP 2016510749A JP 2016520911 A JP2016520911 A JP 2016520911A
- Authority
- JP
- Japan
- Prior art keywords
- task
- subroutine
- executing
- node
- function
- 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.)
- Granted
Links
- 230000008859 change Effects 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 149
- 230000006870 function Effects 0.000 claims description 118
- 230000008569 process Effects 0.000 claims description 116
- 238000004590 computer program Methods 0.000 claims description 10
- 238000011144 upstream manufacturing Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 3
- 239000011248 coating agent Substances 0.000 claims 2
- 238000000576 coating method Methods 0.000 claims 2
- 230000004913 activation Effects 0.000 description 24
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000003111 delayed effect Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 238000005457 optimization Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
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/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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4494—Execution paradigms, e.g. implementations of programming paradigms data driven
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
- Executing Machine-Instructions (AREA)
- Stored Programmes (AREA)
- Telephonic Communication Services (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
本出願は、2013年4月23日に出願した米国特許出願第61/815,052号の優先権を主張するものである。
・複数入力接合ノード(OR演算)に関して、スキップフラグは、最初に設定され、skip_OR(N)は、スキップフラグを変更せず、chain_OR(N)は、スキップフラグをクリアする
・複数入力タスクノード(AND演算)に関して、スキップフラグは、最初にクリアされ、skip_AND(N)は、スキップフラグを設定し、chain_AND(N)は、スキップフラグを変更しない
・単一入力ノードに関して、スキップフラグは、最初に設定され、skip(N)は、スキップフラグを変更せず、chain(N)は、スキップフラグをクリアする
chainTo関数の動作は、スキップフラグに関してchain関数と同じである。単一入力ノードに関して、OR演算及びAND演算の動作は等価であり、(この例のOR演算の動作など)どちらかが使用され得る。この1組の規則に関して、(1又は2以上の)開始ノード(すなわち、いかなる入力リンクもないノード)は、それらのノードのスキップフラグを(そのスキップフラグの初期値がまだクリアされていない場合)クリアする。
・接合ノードに関して、スキップフラグは、最初に設定され、skip_J(N)は、スキップフラグを変更せず、chain_J(N)は、スキップフラグをクリアする
・タスクノード又は条件付きノードに関して、スキップフラグは、最初にクリアされ、skip(N)は、スキップフラグを設定し、chain(N)は、スキップフラグを変更しない
この1組の規則に関して、(1又は2以上の)開始ノード(すなわち、いかなる入力リンクもないノード)は、それらのノードのスキップフラグを(そのスキップフラグの初期値がまだクリアされていない場合)やはりクリアする。
Claims (29)
- コンピューティングシステムによって実行されるタスクを制御するための方法であって、
複数のタスクの間の少なくとも部分的な順序を規定する順序情報を受信するステップと、
前記順序情報に少なくとも部分的に基づいて前記タスクの少なくとも一部を実行するための命令を少なくとも1つのプロセッサを用いて生成するステップとを含み、前記生成するステップが、
第1のタスクに対応する第1のサブルーチンを実行するための命令を記憶することであって、前記第1のサブルーチンが、第2のタスクに対応する少なくとも第2のサブルーチンの実行を制御する第1の制御セクションを含み、前記第1の制御セクションが、前記第2のタスクに関連する状態情報を変更し、変更された状態情報に基づいて前記第2のサブルーチンの実行を開始すべきか否かを判定するように構成された関数を含む、記憶すること、並びに
前記第2のサブルーチンを実行するための命令を記憶することであって、前記第2のサブルーチンが、前記第2のタスクを実行するためのタスクセクション、及び第3のタスクに対応する第3のサブルーチンの実行を制御する第2の制御セクションを含む、記憶することを含む、方法。 - 前記順序情報が、それぞれのタスクを表すノードのペアの間の有向辺を含む制御フローグラフを含み、上流のノードから下流のノードへの有向辺が、前記部分的な順序で、前記上流のノードによって表される前記タスクが前記下流のノードによって表される前記タスクに先行することを示す請求項1に記載の方法。
- 前記制御フローグラフが、前記第1のタスクを表す第1のノードと前記第2のタスクを表す第2のノードとの間の有向辺、及び前記第2のノードと前記第3のタスクを表す第3のノードとの間の有向辺を含む請求項2に記載の方法。
- 前記関数が、前記第2のタスクに関連するカウンタをデクリメント又はインクリメントし、前記カウンタの値に基づいて前記第2のサブルーチンの実行を開始すべきか否かを判定するように構成される請求項1〜3のいずれかに記載の方法。
- 前記関数が、前記カウンタをアトミックにデクリメント又はインクリメントし、前記カウンタの値を読むアトミックな操作を実行するように構成される請求項4に記載の方法。
- 前記変更された状態情報が、前記第2のタスクを特定する引数を用いた前記関数の前の呼び出しの履歴を含む請求項1〜5のいずれかに記載の方法。
- 前記関数が、複数の異なる関数のうちの1つであり、前記状態情報が、前記第2のタスクを特定する引数を用いた前記複数の異なる関数のいずれかの前の呼び出しの履歴を捕捉する請求項6に記載の方法。
- 前記第2の制御セクションが、前記タスクを実行するための前記タスクセクションが呼び出されるか否かを判定する論理を含む請求項1〜7のいずれかに記載の方法。
- 前記論理が、前記第2のタスクに関連するフラグの値に基づいて、前記タスクを実行するための前記タスクセクションが呼び出されるか否かを判定する請求項8に記載の方法。
- 前記第1の制御セクションが、少なくとも、前記第2のタスクに対応する前記第2のサブルーチン及び第4のタスクに対応する第4のサブルーチンの実行を制御する請求項1〜9のいずれかに記載の方法。
- 前記順序情報が、前記部分的な順序で前記第1のタスクが前記第2のタスクに先行することを示し、前記部分的な順序で前記第1のタスクが前記第4のタスクに先行することを示し、前記部分的な順序で互いに対する前記第2のタスク及び前記第4のタスクの順序を制約しない請求項10に記載の方法。
- 前記第1の制御セクションが、前記第2のサブルーチンを実行するための新しいプロセスをスポーニングすべきか否かを判定する第1の関数と、第1のサブルーチンを実行した同じプロセスを用いて前記第4のサブルーチンの実行を開始する第2の関数とを含む請求項10又は11に記載の方法。
- タスクを制御するための、コンピュータ可読記憶媒体に記憶されるコンピュータプログラムであって、コンピューティングシステムに、
複数のタスクの間の少なくとも部分的な順序を規定する順序情報を受信させ、
前記順序情報に少なくとも部分的に基づいて前記タスクの少なくとも一部を実行するための命令を生成させる命令を含み、前記生成させることが、
第1のタスクに対応する第1のサブルーチンを実行するための命令を記憶することであって、前記第1のサブルーチンが、第2のタスクに対応する少なくとも第2のサブルーチンの実行を制御する第1の制御セクションを含み、前記第1の制御セクションが、前記第2のタスクに関連する状態情報を変更し、変更された状態情報に基づいて前記第2のサブルーチンの実行を開始すべきか否かを判定するように構成された関数を含む、記憶すること、並びに
前記第2のサブルーチンを実行するための命令を記憶することであって、前記第2のサブルーチンが、前記第2のタスクを実行するためのタスクセクション、及び第3のタスクに対応する第3のサブルーチンの実行を制御する第2の制御セクションを含む、記憶することを含む、コンピュータプログラム。 - タスクを制御するためのコンピューティングシステムであって、
複数のタスクの間の少なくとも部分的な順序を規定する順序情報を受信するように構成された入力デバイス又はポートと、
前記順序情報に少なくとも部分的に基づいて前記タスクの少なくとも一部を実行するための命令を生成するように構成された少なくとも1つのプロセッサとを含み、前記生成することが、
第1のタスクに対応する第1のサブルーチンを実行するための命令を記憶することであって、前記第1のサブルーチンが、第2のタスクに対応する少なくとも第2のサブルーチンの実行を制御する第1の制御セクションを含み、前記第1の制御セクションが、前記第2のタスクに関連する状態情報を変更し、変更された状態情報に基づいて前記第2のサブルーチンの実行を開始すべきか否かを判定するように構成された関数を含む、記憶すること、並びに
前記第2のサブルーチンを実行するための命令を記憶することであって、前記第2のサブルーチンが、前記第2のタスクを実行するためのタスクセクション、及び第3のタスクに対応する第3のサブルーチンの実行を制御する第2の制御セクションを含む、記憶することを含む、コンピューティングシステム。 - タスクを制御するためのコンピューティングシステムであって、
複数のタスクの間の少なくとも部分的な順序を規定する順序情報を受信するための手段と、
前記順序情報に少なくとも部分的に基づいて前記タスクの少なくとも一部を実行するための命令を生成するための手段とを含み、前記生成することが、
第1のタスクに対応する第1のサブルーチンを実行するための命令を記憶することであって、前記第1のサブルーチンが、第2のタスクに対応する少なくとも第2のサブルーチンの実行を制御する第1の制御セクションを含み、前記第1の制御セクションが、前記第2のタスクに関連する状態情報を変更し、変更された状態情報に基づいて前記第2のサブルーチンの実行を開始すべきか否かを判定するように構成された関数を含む、記憶すること、並びに
前記第2のサブルーチンを実行するための命令を記憶することであって、前記第2のサブルーチンが、前記第2のタスクを実行するためのタスクセクション、及び第3のタスクに対応する第3のサブルーチンの実行を制御する第2の制御セクションを含む、記憶することを含む、コンピューティングシステム。 - タスクを実行するための方法であって、
複数のタスクを実行するための命令を少なくとも1つのメモリに記憶するステップであって、前記命令が、前記タスクの少なくとも一部のそれぞれに関して、前記タスクを実行するためのタスクセクション、及び後続のタスクのサブルーチンの実行を制御する制御セクションを含むそれぞれのサブルーチンを含む、記憶するステップと、
記憶されたサブルーチンの少なくとも一部を少なくとも1つのプロセッサによって実行するステップとを含み、前記実行するステップが、
第1のタスクに関する第1のサブルーチンを実行するための第1のプロセスをスポーニングすることであって、前記第1のサブルーチンが、第1のタスクセクション及び第1の制御セクションを含む、スポーニングすること、並びに
前記第1のタスクセクションが返った後に、前記第1のサブルーチンとは異なる第2のサブルーチンを実行するための第2のプロセスをスポーニングすべきか否かを判定する前記第1の制御セクションに含まれる少なくとも1つの関数を呼び出すことを含む、方法。 - 前記関数が、前記第2のサブルーチンに関連するカウンタをデクリメントし、前記カウンタの値に基づいて前記第2のサブルーチンの実行を開始すべきか否かを判定するように構成される請求項16に記載の方法。
- 前記関数が、前記第2のサブルーチンに対応する第2のタスクを特定する引数を用いて呼び出されるときに、前記第2のタスクを特定する引数を用いた前記関数の前の呼び出しの履歴を捕捉する状態情報に基づいて前記第2のサブルーチンの実行を開始すべきか否かを判定するように構成される請求項16又は17に記載の方法。
- 前記関数が、複数の異なる関数のうちの1つであり、前記状態情報が、前記第2のタスクを特定する引数を用いた前記複数の異なる関数のいずれかの前の呼び出しの履歴を捕捉する請求項18に記載の方法。
- 前記関数が、前記第1のプロセスにおいて前記第2のサブルーチンの実行を開始し、前記第2のサブルーチンの実行時間が所定の閾値を超えることに応じて、前記第2のサブルーチンの実行を続けるための前記第2のプロセスをスポーニングするように構成される請求項16に記載の方法。
- 前記関数が、前記第1のプロセスに関連付けられたスタックフレームを前記第2のプロセスに与えるように構成される請求項20に記載の方法。
- 前記関数が、前記第1のプロセスが前記第2のプロセスと同時に実行され続けることを可能にするために前記第2のプロセスをスポーニングした後に返すように構成される請求項20又は21に記載の方法。
- 前記第1の制御セクションが、前記第1のタスクセクションが呼び出されるか否かを判定する論理を含む請求項16に記載の方法。
- 前記論理が、前記第1のタスクに関連するフラグの値に基づいて、前記第1のタスクセクションが呼び出されるか否かを判定する請求項23に記載の方法。
- 前記第2のサブルーチンが、第2のタスクに対応し、前記第1の制御セクションが、前記第1のタスク及び前記第2のタスクを含む複数のタスクの間の少なくとも部分的な順序を規定する順序情報に少なくとも部分的に基づく請求項16に記載の方法。
- 前記順序情報が、それぞれのタスクを表すノードのペアの間の有向辺を含む制御フローグラフを含み、上流のノードから下流のノードへの有向辺が、部分的な順序で、前記上流のノードによって表される前記タスクが前記下流のノードによって表される前記タスクに先行することを示す請求項25に記載の方法。
- タスクを実行するための、コンピュータ可読記憶媒体に記憶されるコンピュータプログラムであって、コンピューティングシステムに、
複数のタスクを実行するための命令を記憶させ、前記命令が、前記タスクの少なくとも一部のそれぞれに関して、前記タスクを実行するためのタスクセクション、及び後続のタスクのサブルーチンの実行を制御する制御セクションを含むそれぞれのサブルーチンを含み、
記憶されたサブルーチンの少なくとも一部を実行させる命令を含み、前記実行させることが、
第1のタスクに関する第1のサブルーチンを実行するための第1のプロセスをスポーニングすることであって、前記第1のサブルーチンが、第1のタスクセクション及び第1の制御セクションを含む、スポーニングすること、並びに
前記第1のタスクセクションが返った後に、前記第1のサブルーチンとは異なる第2のサブルーチンを実行するための第2のプロセスをスポーニングすべきか否かを判定する前記第1の制御セクションに含まれる少なくとも1つの関数を呼び出すことを含む、コンピュータプログラム。 - タスクを実行するためのコンピューティングシステムであって、
複数のタスクを実行するための命令を記憶する少なくとも1つのメモリであって、前記命令が、前記タスクの少なくとも一部のそれぞれに関して、前記タスクを実行するためのタスクセクション、及び後続のタスクのサブルーチンの実行を制御する制御セクションを含むそれぞれのサブルーチンを含む、少なくとも1つのメモリと、
記憶されたサブルーチンの少なくとも一部を実行するように構成された少なくとも1つのプロセッサとを含み、前記実行することが、
第1のタスクに関する第1のサブルーチンを実行するための第1のプロセスをスポーニングすることであって、前記第1のサブルーチンが、第1のタスクセクション及び第1の制御セクションを含む、スポーニングすること、並びに
前記第1のタスクセクションが返った後に、前記第1のサブルーチンとは異なる第2のサブルーチンを実行するための第2のプロセスをスポーニングすべきか否かを判定する前記第1の制御セクションに含まれる少なくとも1つの関数を呼び出すことを含む、コンピューティングシステム。 - タスクを実行するためのコンピューティングシステムであって、
複数のタスクを実行するための命令を記憶するための手段であって、前記命令が、前記タスクの少なくとも一部のそれぞれに関して、前記タスクを実行するためのタスクセクション、及び後続のタスクのサブルーチンの実行を制御する制御セクションを含むそれぞれのサブルーチンを含む、手段と、
記憶されたサブルーチンの少なくとも一部を実行するための手段とを含み、前記実行することが、
第1のタスクに関する第1のサブルーチンを実行するための第1のプロセスをスポーニングすることであって、前記第1のサブルーチンが、第1のタスクセクション及び第1の制御セクションを含む、スポーニングすること、並びに
前記第1のタスクセクションが返った後に、前記第1のサブルーチンとは異なる第2のサブルーチンを実行するための第2のプロセスをスポーニングすべきか否かを判定する前記第1の制御セクションに含まれる少なくとも1つの関数を呼び出すことを含む、コンピューティングシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361815052P | 2013-04-23 | 2013-04-23 | |
US61/815,052 | 2013-04-23 | ||
PCT/US2014/035094 WO2014176310A2 (en) | 2013-04-23 | 2014-04-23 | Controlling tasks performed by a computing system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019004419A Division JP6761878B2 (ja) | 2013-04-23 | 2019-01-15 | コンピューティングシステムによって実行されるタスクの制御 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016520911A true JP2016520911A (ja) | 2016-07-14 |
JP6469083B2 JP6469083B2 (ja) | 2019-02-13 |
Family
ID=50884503
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016510752A Active JP6469084B2 (ja) | 2013-04-23 | 2014-04-23 | コンピューティングシステムによって実行されるタスクの制御 |
JP2016510749A Active JP6469083B2 (ja) | 2013-04-23 | 2014-04-23 | コンピューティングシステムによって実行されるタスクの制御 |
JP2019004419A Active JP6761878B2 (ja) | 2013-04-23 | 2019-01-15 | コンピューティングシステムによって実行されるタスクの制御 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016510752A Active JP6469084B2 (ja) | 2013-04-23 | 2014-04-23 | コンピューティングシステムによって実行されるタスクの制御 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019004419A Active JP6761878B2 (ja) | 2013-04-23 | 2019-01-15 | コンピューティングシステムによって実行されるタスクの制御 |
Country Status (8)
Country | Link |
---|---|
US (3) | US10565005B2 (ja) |
EP (3) | EP2989540B1 (ja) |
JP (3) | JP6469084B2 (ja) |
KR (2) | KR102305084B1 (ja) |
CN (3) | CN109614170B (ja) |
AU (3) | AU2014257135B2 (ja) |
CA (3) | CA2909748C (ja) |
WO (2) | WO2014176310A2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6469084B2 (ja) | 2013-04-23 | 2019-02-13 | アビニシオ テクノロジー エルエルシー | コンピューティングシステムによって実行されるタスクの制御 |
US9342415B2 (en) * | 2014-07-14 | 2016-05-17 | International Business Machines Corporation | Run-to-completion thread model for software bypass fail open for an inline intrusion protection system |
EP3189420B1 (en) | 2014-09-02 | 2023-08-23 | AB Initio Technology LLC | Managing execution state of components in a graph-based program specification for controlling their associated tasks |
US9760406B2 (en) | 2014-09-02 | 2017-09-12 | Ab Initio Technology Llc | Controlling data processing tasks |
US9933918B2 (en) | 2014-09-02 | 2018-04-03 | Ab Initio Technology Llc | Specifying control and data connections in graph-based programs |
SG11201701584SA (en) | 2014-09-02 | 2017-03-30 | Ab Initio Technology Llc | Compiling graph-based program specifications |
EP3189418B1 (en) | 2014-09-02 | 2022-02-23 | AB Initio Technology LLC | Visually specifying subsets of components in graph-based programs through user interactions |
CN105988907B (zh) * | 2015-01-29 | 2019-04-02 | 深圳市腾讯计算机系统有限公司 | 业务监控方法和装置 |
US10229150B2 (en) * | 2015-04-23 | 2019-03-12 | Splunk Inc. | Systems and methods for concurrent summarization of indexed data |
US11093878B2 (en) * | 2015-07-01 | 2021-08-17 | Oracle International Corporation | System and method for providing temporal dependencies between tasks |
KR101767418B1 (ko) * | 2015-10-21 | 2017-08-11 | 현대오트론 주식회사 | 임베디드 운영체제에서 로직의 우선순위 보장 방법 및 그 장치 |
CN105653905B (zh) * | 2015-12-28 | 2018-07-24 | 西北大学 | 一种基于api安全属性隐藏与攻击威胁监控的软件保护方法 |
US10152349B1 (en) * | 2016-09-27 | 2018-12-11 | Juniper Networks, Inc. | Kernel scheduling based on precedence constraints and/or artificial intelligence techniques |
US10261799B2 (en) * | 2017-02-28 | 2019-04-16 | International Business Machines Corporation | Programmatic implicit multithreading |
KR101867866B1 (ko) * | 2017-03-23 | 2018-06-18 | 주식회사 노트스퀘어 | 프로그램의 동적 최적화 방법 및 장치 |
CN108519915A (zh) * | 2018-04-12 | 2018-09-11 | 北京邮电大学 | 流量任务调度方法和装置 |
CN108874394A (zh) * | 2018-04-17 | 2018-11-23 | 上海达野智能科技有限公司 | 机器人用户程序的解释方法及解释装置 |
CN109656568B (zh) * | 2018-12-28 | 2022-04-05 | 黑龙江省工业技术研究院 | 按需的可约程序控制流图图可达性索引方法 |
US10817220B2 (en) * | 2019-01-31 | 2020-10-27 | EMC IP Holding Company LLC | Sharing processor cores in a multi-threading block i/o request processing data storage system |
CN111027196B (zh) * | 2019-12-03 | 2023-04-28 | 南方电网科学研究院有限责任公司 | 一种电力设备的仿真分析任务处理方法、装置及存储介质 |
US11080111B1 (en) * | 2020-02-24 | 2021-08-03 | Nvidia Corporation | Technique for sharing context among multiple threads |
CN114237769A (zh) * | 2021-12-14 | 2022-03-25 | 北京人大金仓信息技术股份有限公司 | 一种程序的执行方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010244563A (ja) * | 2002-10-10 | 2010-10-28 | Ab Initio Software Llc | グラフに基づく計算の実行方法、当該方法を実行させる命令を格納するコンピュータ可読記憶媒体、並びに当該方法を実行するためのシステム |
JP2010286931A (ja) * | 2009-06-10 | 2010-12-24 | Nippon Hoso Kyokai <Nhk> | ジョブ管理システム、ジョブ管理装置及びそのプログラム |
JP2011517352A (ja) * | 2008-02-26 | 2011-06-02 | アビニシオ テクノロジー エルエルシー | データ関連性のグラフ表現 |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5471622A (en) | 1989-10-04 | 1995-11-28 | Paralogic, Inc. | Run-time system having nodes for identifying parallel tasks in a logic program and searching for available nodes to execute the parallel tasks |
US5394549A (en) | 1992-12-17 | 1995-02-28 | International Business Machines Corporation | Task spawning responsive to relational database conditions and operations |
CA2095311A1 (en) | 1993-04-30 | 1994-10-31 | Richard E. Swagerman | Conversation management routine for co-operative processing applications |
US5966072A (en) | 1996-07-02 | 1999-10-12 | Ab Initio Software Corporation | Executing computations expressed as graphs |
GB2335051B (en) | 1998-05-19 | 2000-01-19 | Bookham Technology Ltd | Optical device for splitting up a multi-wavelength light beam |
US6378066B1 (en) * | 1999-02-04 | 2002-04-23 | Sun Microsystems, Inc. | Method, apparatus, and article of manufacture for developing and executing data flow programs, and optimizing user input specifications |
US6823517B1 (en) | 2000-01-27 | 2004-11-23 | Andrew E. Kalman | Multi-tasking-real-time operating system for microprocessors with limited memory that constrains context switching to occur only at task level |
US6316958B1 (en) * | 2000-05-16 | 2001-11-13 | Xilinx, Inc. | Programmable logic device with adjustable length delay line |
US7685602B1 (en) | 2000-06-05 | 2010-03-23 | Teradata Us, Inc. | Controlling software components in a multi-node processing system |
DE10065498B4 (de) * | 2000-12-28 | 2005-07-07 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Rekonstruktion des Prozessablaufs eines Steuerprogramms |
US6983456B2 (en) * | 2002-10-31 | 2006-01-03 | Src Computers, Inc. | Process for converting programs in high-level programming languages to a unified executable for hybrid computing platforms |
US20040154010A1 (en) * | 2003-01-31 | 2004-08-05 | Pedro Marcuello | Control-quasi-independent-points guided speculative multithreading |
JP2004326486A (ja) * | 2003-04-25 | 2004-11-18 | Matsushita Electric Ind Co Ltd | タスク管理装置 |
US7467383B2 (en) | 2004-03-08 | 2008-12-16 | Ab Initio Software Llc | System for controlling task execution using a graphical representation of task dependency |
JP2005258920A (ja) | 2004-03-12 | 2005-09-22 | Fujitsu Ltd | マルチスレッド実行方法、マルチスレッド実行プログラム、およびマルチスレッド実行装置 |
EP1783604A3 (en) * | 2005-11-07 | 2007-10-03 | Slawomir Adam Janczewski | Object-oriented, parallel language, method of programming and multi-processor computer |
JP2007193529A (ja) * | 2006-01-18 | 2007-08-02 | Matsushita Electric Ind Co Ltd | 半導体集積回路の高位合成方法 |
US7870556B2 (en) * | 2006-05-16 | 2011-01-11 | Ab Initio Technology Llc | Managing computing resources in graph-based computations |
KR20080068385A (ko) * | 2007-01-19 | 2008-07-23 | 슈어소프트테크주식회사 | 소프트웨어 테스트 시스템, 방법 및 그 방법을 실행하기위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 |
US20080282246A1 (en) * | 2007-05-07 | 2008-11-13 | Danny Dolev | Compiler aided ticket scheduling of tasks in a computing system |
EP2174222A4 (en) * | 2007-07-26 | 2010-10-27 | Ab Initio Technology Llc | TRANSACTIONAL GRAPH-BASED CALCULATION WITH ERROR HANDLING |
US8589925B2 (en) * | 2007-10-25 | 2013-11-19 | Microsoft Corporation | Techniques for switching threads within routines |
CN101446909B (zh) * | 2007-11-30 | 2011-12-28 | 国际商业机器公司 | 用于管理任务事件的方法和系统 |
WO2009132047A2 (en) * | 2008-04-21 | 2009-10-29 | Zytron Corp. | Collaborative and proactive defense of networks and information systems |
KR101730513B1 (ko) * | 2009-02-13 | 2017-04-26 | 아브 이니티오 테크놀로지 엘엘시 | 태스크 실행 관리 |
US8561041B1 (en) * | 2009-06-22 | 2013-10-15 | The Mathworks, Inc. | Parallel execution of function calls in a graphical model |
US8667329B2 (en) * | 2009-09-25 | 2014-03-04 | Ab Initio Technology Llc | Processing transactions in graph-based applications |
US8250576B2 (en) | 2009-09-30 | 2012-08-21 | Microsoft Corporation | Structured task hierarchy for a parallel runtime |
US8572618B2 (en) * | 2010-05-07 | 2013-10-29 | Oracle International Corporation | Event driven change injection and dynamic extensions to a business process execution language process |
US8726228B2 (en) * | 2010-07-30 | 2014-05-13 | National Instruments Corporation | Developing programs in a graphical specification and constraint language |
JP2012108576A (ja) | 2010-11-15 | 2012-06-07 | Toyota Motor Corp | マルチコアプロセッサ、処理実行方法、プログラム |
US20130110576A1 (en) * | 2011-10-28 | 2013-05-02 | Infosys Limited | System and method for checking the conformance of the behavior of a process |
US20130259137A1 (en) * | 2012-03-30 | 2013-10-03 | Google Inc. | System and Method for Multi-Core Hardware Video Encoding And Decoding |
CN102708053B (zh) * | 2012-04-27 | 2017-10-20 | 北京邮电大学 | 程序路径中确定函数调用的上下文环境影响的方法 |
CN102819218B (zh) * | 2012-07-19 | 2015-04-29 | 西安交通大学 | 基于事件控制函数的离散事件系统监控器及其控制方法 |
US9832068B2 (en) * | 2012-12-17 | 2017-11-28 | Microsoft Technology Licensing, Llc | Reachability-based coordination for cyclic dataflow |
US9286119B2 (en) * | 2013-02-13 | 2016-03-15 | Nvidia Corporation | System, method, and computer program product for management of dependency between tasks |
JP6469084B2 (ja) | 2013-04-23 | 2019-02-13 | アビニシオ テクノロジー エルエルシー | コンピューティングシステムによって実行されるタスクの制御 |
CN103559044A (zh) * | 2013-11-20 | 2014-02-05 | 无锡儒安科技有限公司 | 无线传感器网络控制代码形式化方法和装置 |
-
2014
- 2014-04-23 JP JP2016510752A patent/JP6469084B2/ja active Active
- 2014-04-23 CN CN201811207891.2A patent/CN109614170B/zh active Active
- 2014-04-23 AU AU2014257135A patent/AU2014257135B2/en active Active
- 2014-04-23 US US14/259,479 patent/US10565005B2/en active Active
- 2014-04-23 EP EP14728014.3A patent/EP2989540B1/en active Active
- 2014-04-23 WO PCT/US2014/035094 patent/WO2014176310A2/en active Application Filing
- 2014-04-23 KR KR1020157033437A patent/KR102305084B1/ko active IP Right Grant
- 2014-04-23 CA CA2909748A patent/CA2909748C/en active Active
- 2014-04-23 AU AU2014257132A patent/AU2014257132B2/en active Active
- 2014-04-23 EP EP16178434.3A patent/EP3113017B1/en active Active
- 2014-04-23 JP JP2016510749A patent/JP6469083B2/ja active Active
- 2014-04-23 CN CN201480023375.8A patent/CN105164638B/zh active Active
- 2014-04-23 EP EP14728015.0A patent/EP2989541B1/en active Active
- 2014-04-23 KR KR1020157033433A patent/KR102251932B1/ko active IP Right Grant
- 2014-04-23 CA CA2909751A patent/CA2909751C/en active Active
- 2014-04-23 CA CA3125705A patent/CA3125705C/en active Active
- 2014-04-23 WO PCT/US2014/035098 patent/WO2014176313A1/en active Application Filing
- 2014-04-23 US US14/259,451 patent/US9665396B2/en active Active
- 2014-04-23 CN CN201480023408.9A patent/CN105164639B/zh active Active
-
2016
- 2016-10-06 US US15/287,296 patent/US10489191B2/en active Active
-
2018
- 2018-05-23 AU AU2018203641A patent/AU2018203641B2/en active Active
-
2019
- 2019-01-15 JP JP2019004419A patent/JP6761878B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010244563A (ja) * | 2002-10-10 | 2010-10-28 | Ab Initio Software Llc | グラフに基づく計算の実行方法、当該方法を実行させる命令を格納するコンピュータ可読記憶媒体、並びに当該方法を実行するためのシステム |
JP2011517352A (ja) * | 2008-02-26 | 2011-06-02 | アビニシオ テクノロジー エルエルシー | データ関連性のグラフ表現 |
JP2010286931A (ja) * | 2009-06-10 | 2010-12-24 | Nippon Hoso Kyokai <Nhk> | ジョブ管理システム、ジョブ管理装置及びそのプログラム |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6761878B2 (ja) | コンピューティングシステムによって実行されるタスクの制御 | |
JP6763072B2 (ja) | データ処理グラフのコンパイル | |
Rinaldi et al. | Accelerating actor-based applications with parallel patterns | |
Mallick et al. | A realistic model for runtime incremental task scheduling in distributed memory multiprocessor systems | |
VanderHart et al. | Parallel programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170414 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180228 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20180530 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180702 |
|
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: 20181213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190115 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6469083 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 |