JP5644307B2 - 情報処理装置、情報処理装置の制御方法及び制御プログラム - Google Patents
情報処理装置、情報処理装置の制御方法及び制御プログラム Download PDFInfo
- Publication number
- JP5644307B2 JP5644307B2 JP2010208958A JP2010208958A JP5644307B2 JP 5644307 B2 JP5644307 B2 JP 5644307B2 JP 2010208958 A JP2010208958 A JP 2010208958A JP 2010208958 A JP2010208958 A JP 2010208958A JP 5644307 B2 JP5644307 B2 JP 5644307B2
- Authority
- JP
- Japan
- Prior art keywords
- frequency
- information
- register
- processing unit
- processing apparatus
- 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 298
- 230000010365 information processing Effects 0.000 title claims description 44
- 230000008569 process Effects 0.000 claims description 277
- 238000012545 processing Methods 0.000 claims description 98
- 230000006870 function Effects 0.000 description 11
- 230000004913 activation Effects 0.000 description 9
- 238000001994 activation Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000004043 responsiveness Effects 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000013519 translation 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30123—Organisation of register space, e.g. banked or distributed register file according to context, e.g. thread buffers
-
- 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/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- 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/461—Saving or restoring of program or task context
- G06F9/462—Saving or restoring of program or task context with multiple register sets
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)
- Hardware Redundancy (AREA)
- Retry When Errors Occur (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
実施の形態では、汎用のオペレーティングシステム(例えば、Linux(登録商標))が動作する計算ノードをクラスタ接続したスーパーコンピュータにおいて本発明を適用した場合について述べる。
ユーザジョブは、計算を短い時間で完了できるように、オペレーティングシステムからの介入を必要最低限とし、ジョブへのCPU割り当て時間をより長くする事が求められる。一方、コマンドはCPU時間以外にも、I/O処理も含めたコマンドの応答性を重視し、ユーザへの処理結果を迅速に返すことが重視される。
また、コマンドは、例えば、CPUが具備する浮動小数点数レジスタの使用頻度が低いプロセスと定義する。
例えば、ソースコードに基づき、浮動小数点数演算を頻繁に行うアルゴリズムのプログラムのプロセスをUNLAZYプロセス、浮動小数点数演算を全く行わないか、局所的にしか使用しないアルゴリズムのプログラムのプロセスをLAZYプロセスと定義してもよい。
情報処理装置(コンピュータ)101は、CPU(Central Processing Unit)201およびメモリ301を備える。
CPU201は、例えば、一つ又は複数のコア202−n(n=1〜3)を有する。
コア202−nは、複数の浮動小数点数レジスタからなる浮動小数点数レジスタ群203−nおよびFP(Floating Point)状態レジスタ群204−nを備える。また、コア202−nは、浮動小数点演算を行うFloating Point Unit(FPU)を含む演算部(不図示)および汎用レジスタ(不図示)を備える。
浮動小数点数レジスタ群203を構成する浮動小数点数レジスタは、浮動小数点数演算を行う際にデータを一時的に保持するレジスタである。尚、実施の形態において、例えば、浮動小数点数レジスタ群は、64bit長の浮動小数点数レジスタ64本で構成される。
FP状態レジスタ204は、使用可能または使用不可能等のFPUの状態および浮動小数点数レジスタ群203の使用状況を格納する。
FP状態レジスタ203は、FPUの使用可能または使用不可能を表すbit、および現在使用中の浮動小数点数レジスタをビットフィールドで表す領域を有する。
FP状態レジスタ203のbit32は、FPUが使用可能か使用不可能かを示す。例えば、bit32が0の場合は、FPUが使用不可能、1の場合は、FPUが使用可能であることを示す。
メモリ301は、オペレーティングシステム401、プロセス411、プロセス管理情報格納領域412、FPowner記憶領域413、FPレジスタ退避領域414を有する。
カーネルサービス403は、ユーザプログラムに対してサービスを提供する。具体的には、I/O装置への入出力やメモリ確保等のサービスを提供する。
プロセス起動部408は、プロセスを起動する。
例外入口処理部404は、ユーザ空間451で動作していたプロセスが例外処理の発生によりカーネルサービス等を利用する際に、カーネル空間452へ遷移するために必要な処理を行う。
スケジューラ406は、コンテキストスイッチ部410を備える。
コンテキストスイッチ部410は、カーネルスタック416を切替えることにより、プロセスの切替えを行うとともに、プロセスの切替えに伴うコンテキストの切替えも行う。
プロセス411は、ユーザプログラム415、カーネルスタック416、およびプロセスコンテキスト417を有する。
カーネルスタック416は、カーネルの呼び出し関係や引数情報、プロセスの管理情報などの情報である。
プロセス管理情報格納領域412は、プロセスの種別を示す情報を有し、プロセスが生成された場合にカーネルによって作成され、プロセスの消滅とともに削除される。
プロセス管理情報格納領域412は、プロセスの種別(LAZYまたはUNLAZY)を示すprogram_class(プロセス種別記憶領域)およびFPレジスタ退避領域へのポインタを示すfpregsを有する。
FPowner記憶領域413は、浮動小数点レジスタ群203を現在使用しているプロセス(FPowner)の識別子を格納する。
FPowner記憶領域413は、浮動小数点レジスタ群203を現在使用しているプロセス(FPowner)の識別子を示すfp_ownerを有する。
FPレジスタ退避領域414は、プロセス毎に浮動小数点数レジスタ群203の値を退避するために確保された領域である。
ユーザ空間451は、オペレーティングシステム401がユーザプログラムを動作させるために必要な仮想メモリ空間である。
コマンド実行部402およびユーザプログラム415はユーザ空間451に配置されている。
従って、コマンド実行部402又はユーザプログラム415から、カーネル空間452に配置されたカーネルサービス403、例外入口処理部404、例外出口処理部405、スケジューラ406、FPU使用不可例外処理部407、プロセス管理情報格納領域412、FPOwner記憶領域413、FPレジスタ退避領域414、カーネルスタック416、およびプロセスコンテキスト417に対してはアクセスすることはできない。
実施の形態の情報処理装置101ではプログラムの起動方法は、以下の2つの方式がある。
(1)既存のプログラム起動システムコール(exec)を使用する。
プログラム起動システムコールであるexecは、Portable Operating System Interface(POSIX)に準拠している。
exec_fp_procは、本実施の形態で新設されるシステムコールである。
例えば、C言語でプロセスの種別をLAZYと指定する場合、exec_fp_proc(const char *command_path, const char *argv[], LAZY)とソースファイルに記述する。
ここで、*command_pathは、実行ファイルへのファイルパスであり、*argv[]は、起動したプロセスに引き渡す引数配列へのポインタである。また、LAZYおよびUNLAZYは、プロセスの種別を示し、これらはプロセス指定引数と呼ぶ。
以下においては、システムコール(exe_fp_proc)を使用してプロセスを起動する場合について述べる。
プロセス実行部408は、プロセス(ls(list segments)やcat(concatenate)コマンドなど)をexec_fp_procを利用して起動する(ステップS502)。
以上の処理で、プロセスに必要な情報の設定がなされ、プロセスを実行することが可能となる。
ここでは、最初にプロセスAが実行されているものとする。
ステップS601において、例外入口処理部404は、発生した例外がFPUが使用できないFPU使用不可例外であるか否かについて判定を行う。発生した例外がFPU使用不可例外である場合(FPUが使用できない場合)、ステップS610に制御は進み、FPU使用不可例外でない場合(FPUが使用できる場合)、ステップS602に制御は進む。
ステップS602において、例外入口処理部404は、現在のプロセスのFPUレジスタ以外のコンテキストをプロセスコンテキスト417に退避する。
ステップS604において、例外出口処理部405は、スケジューラ呼び出し判定を行う。すなわち、例外出口処理部405は、カーネルサービス後に実行するプロセスがカーネルサービス実行前と同じプロセス(プロセスA)か異なるプロセス(プロセスB)かを判定する。
ステップS607において、例外出口処理部405は、現在のプロセス(プロセスA)が現在のFPownerの識別子の値と同一か判定する。現在のプロセスが現在のFPownerの識別子の値と同一の場合、制御はステップS609に進み、現在のFPownerの識別子の値と異なる場合、制御はステップS608に進む。
ステップS613において、FPU使用不可例外処理部407は、現在のプロセスのFPレジスタ退避領域414からレジスタ値を読み出し、浮動小数点レジスタ群203にレジスタ値を復元する。
ステップS615において、例外出口処理部407は、スケジューラ406を呼び出す。
ステップS617において、コンテキストスイッチ部410は、プロセス管理情報格納領域412を参照し、プロセスBの種別を判定する。プロセスBがLAZYの場合、制御はステップS620に進み、UNLAZYの場合、制御はステップS618に進む。
ステップS622において、例外出口処理部405は、プロセス管理情報格納領域412を参照し、プロセスBがLAZYかUNLAZYか判定する。プロセスBがLAZYの場合、制御はステップS626に進み、UNLAZYの場合、制御はステップS623に進む。
ステップS624において、例外出口処理部405は、現在のプロセス(プロセスB)が現在のFPownerの識別子の値と同一か否かを判定する。現在のプロセスが現在のFPownerの識別子の値と同一の場合、制御はステップS626に進み、現在のFPownerの識別子の値と異なる場合、制御はステップS625に進む。
図7の上部は、従来技術のコンテキストスイッチによる処理を示し、下部は実施の形態のコンテキストスイッチによる処理を示す。
図7は、最初、プロセスAが実行されており、プロセスAからプロセスBに切り替え、CPUに5*Δt分、プロセスBを割り当て、その後、CPUに4*Δt分、プロセスAを割り当てるまでの処理を示している。
201 CPU
301 メモリ
401 オペレーティングシステム
402 コマンド実行部
403 カーネルサービス
404 例外入口処理部
405 例外出口処理部
406 スケジューラ
407 FPU使用不可例外処理部
408 プロセス起動部
409 システムコール処理部
410 コンテキストスイッチ部
411 プロセス
412 プロセス管理情報格納領域
413 FPowner記憶領域
414 FPレジスタ退避領域
415 ユーザプログラム
416 カーネルスタック
417 プロセスコンテキスト
451 ユーザ空間
452 カーネル空間
Claims (12)
- 複数のレジスタを有しプロセスを実行する演算処理装置と前記演算処理装置に接続された主記憶装置とを備える情報処理装置の制御プログラムにおいて、
前記演算処理装置に、
前記演算処理装置が実行している第1のプロセスを第2のプロセスに切り替える場合、
前記複数のレジスタのうち前記第2のプロセスが使用する対象レジスタの使用頻度を示す使用頻度情報を前記主記憶装置から読み出させ、
前記使用頻度情報が示す前記対象レジスタの使用頻度が所定の使用頻度より大きい使用頻度であることを表す場合、前記第1のプロセスが使用していたレジスタの値を前記主記憶装置に退避させ、
前記使用頻度情報が示す前記対象レジスタの使用頻度が所定の使用頻度より大きい使用頻度であることを表す場合、前記主記憶装置から前記第2のプロセスの実行に必要な値を前記対象レジスタに復元させ、
前記第2のプロセスを実行させ、
前記演算処理装置が実行している前記第2のプロセスを前記第1のプロセスに切り替える場合、
前記第1のプロセスを実行させ、
前記演算処理装置が前記第1のプロセスを実行したことにより、例外が発生したとき、前記第2のプロセスが使用していた前記対象レジスタの値を前記主記憶装置に退避させ、
前記主記憶装置から前記第1のプロセスの実行に必要な値を前記レジスタに復元させることを特徴とする情報処理装置の制御プログラム。 - 前記情報処理装置の制御プログラムはさらに、
前記演算処理装置に、
前記使用頻度情報が示す前記対象レジスタの使用頻度が前記所定の使用頻度より大きい使用頻度であることを表す場合、前記第1のプロセスを識別する第1のプロセス識別情報を前記主記憶装置から読み出させ、
前記演算処理装置による、前記主記憶装置からの前記第2のプロセスの実行に必要な値の前記対象レジスタへの復元は、前記主記憶装置から読み出した前記第1のプロセス識別情報と前記第2のプロセスを識別する第2のプロセス識別情報とが異なる場合に行わせることを特徴とする請求項1記載の情報処理装置の制御プログラム。 - 前記情報処理装置の制御プログラムはさらに、
前記演算処理装置に、
前記演算処理装置が実行している前記第1のプロセスを含むプログラムの起動時に、前記使用頻度情報を前記主記憶装置へ格納させることを特徴とする請求項1又は2記載の情報処理装置の制御プログラム。 - 前記情報処理装置の制御プログラムにおいて、
前記レジスタは、
浮動小数点数レジスタであることを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置の制御プログラム。 - 複数のレジスタを有しプロセスを実行する演算処理装置と前記演算処理装置に接続された主記憶装置とを備える情報処理装置の制御方法において、
前記演算処理装置が、
前記演算処理装置が実行している第1のプロセスを第2のプロセスに切り替える場合、
前記複数のレジスタのうち前記第2のプロセスが使用する対象レジスタの使用頻度を示す使用頻度情報を前記主記憶装置から読み出し、
前記使用頻度情報が示す前記対象レジスタの使用頻度が所定の使用頻度より大きい使用頻度であることを表す場合、前記第1のプロセスが使用していたレジスタの値を前記主記憶装置に退避し、
前記使用頻度情報が示す前記対象レジスタの使用頻度が所定の使用頻度より大きい使用頻度であることを表す場合、前記主記憶装置から前記第2のプロセスの実行に必要な値を前記対象レジスタに復元し、
前記第2のプロセスを実行し、
前記演算処理装置が実行している前記第2のプロセスを前記第1のプロセスに切り替える場合、
前記第1のプロセスを実行し、
前記演算処理装置が前記第1のプロセスを実行したことにより、例外が発生したとき、前記第2のプロセスが使用していた前記対象レジスタの値を前記主記憶装置に退避し、
前記主記憶装置から前記第1のプロセスの実行に必要な値を前記レジスタに復元することを特徴とする情報処理装置の制御方法。 - 前記情報処理装置の制御方法はさらに、
前記演算処理装置が、
前記使用頻度情報が示す前記対象レジスタの使用頻度が前記所定の使用頻度より大きい使用頻度であることを表す場合、前記第1のプロセスを識別する第1のプロセス識別情報を前記主記憶装置から読み出し、
前記演算処理装置による、前記主記憶装置からの前記第2のプロセスの実行に必要な値の前記対象レジスタへの復元は、前記主記憶装置から読み出した前記第1のプロセス識別情報と前記第2のプロセスを識別する第2のプロセス識別情報とが異なる場合に行うことを特徴とする請求項5記載の情報処理装置の制御方法。 - 前記情報処理装置の制御方法はさらに、
前記演算処理装置が、前記演算処理装置が実行している前記第1のプロセスを含むプログラムの起動時に、前記使用頻度情報を前記主記憶装置へ格納することを特徴とする請求項5又は6記載の情報処理装置の制御方法。 - 前記情報処理装置の制御方法において、
前記レジスタは、
浮動小数点数レジスタであることを特徴とする請求項5〜7のいずれか1項に記載の情報処理装置の制御方法。 - 演算処理装置と、前記演算処理装置に接続された主記憶装置とを有する情報処理装置において、
前記演算処理装置は、
複数のレジスタと、
実行している第1のプロセスを第2のプロセスに切り替える場合、前記複数のレジスタのうち前記第2のプロセスが使用する対象レジスタの使用頻度を示す使用頻度情報を前記主記憶装置から読み出し、前記使用頻度情報が示す前記対象レジスタの使用頻度が所定の使用頻度より大きい使用頻度であることを表す場合、前記第1のプロセスが使用していたレジスタの値を前記主記憶装置に退避し、前記使用頻度情報が示す前記対象レジスタの使用頻度が所定の使用頻度より大きい使用頻度であることを表す場合、前記主記憶装置から前記第2のプロセスの実行に必要な値を前記対象レジスタに復元し、前記第2のプロセスを実行し、実行している前記第2のプロセスを前記第1のプロセスに切り替える場合、前記第1のプロセスを実行し、前記第1のプロセスを実行したことにより、例外が発生したとき、前記第2のプロセスが使用していた前記対象レジスタの値を前記主記憶装置に退避し、前記主記憶装置から前記第1のプロセスの実行に必要な値を前記レジスタに復元する演算処理部とを有することを特徴とする情報処理装置。 - 前記演算処理装置はさらに、
前記使用頻度情報が示す前記対象レジスタの使用頻度が前記所定の使用頻度より大きい使用頻度であることを表す場合、前記第1のプロセスを識別する第1のプロセス識別情報を前記主記憶装置から読み出し、
前記演算処理部による、前記主記憶装置からの前記第2のプロセスの実行に必要な値の前記対象レジスタへの復元は、前記主記憶装置から読み出した前記第1のプロセス識別情報と前記第2のプロセスを識別する第2のプロセス識別情報とが異なる場合に行うことを特徴とする請求項9記載の情報処理装置。 - 前記情報処理装置において、
前記演算処理部はさらに、
前記演算処理装置が実行している前記第1のプロセスを含むプログラムの起動時に、前記使用頻度情報を前記主記憶装置へ格納することを特徴とする請求項9又は10記載の情報処理装置。 - 前記情報処理装置において、
前記レジスタは、
浮動小数点数レジスタであることを特徴とする請求項9〜11のいずれか1項に記載の情報処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010208958A JP5644307B2 (ja) | 2010-09-17 | 2010-09-17 | 情報処理装置、情報処理装置の制御方法及び制御プログラム |
US13/210,586 US9032417B2 (en) | 2010-09-17 | 2011-08-16 | Information processing apparatus and information processing apparatus control method |
EP11179600A EP2431867A3 (en) | 2010-09-17 | 2011-08-31 | Information processing apparatus and information processing apparatus control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010208958A JP5644307B2 (ja) | 2010-09-17 | 2010-09-17 | 情報処理装置、情報処理装置の制御方法及び制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012064086A JP2012064086A (ja) | 2012-03-29 |
JP5644307B2 true JP5644307B2 (ja) | 2014-12-24 |
Family
ID=44677584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010208958A Active JP5644307B2 (ja) | 2010-09-17 | 2010-09-17 | 情報処理装置、情報処理装置の制御方法及び制御プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9032417B2 (ja) |
EP (1) | EP2431867A3 (ja) |
JP (1) | JP5644307B2 (ja) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8538963B2 (en) * | 2010-11-16 | 2013-09-17 | International Business Machines Corporation | Optimal persistence of a business process |
US10185566B2 (en) * | 2012-04-27 | 2019-01-22 | Intel Corporation | Migrating tasks between asymmetric computing elements of a multi-core processor |
JP6214142B2 (ja) * | 2012-10-09 | 2017-10-18 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
GB2528115B (en) * | 2014-07-11 | 2021-05-19 | Advanced Risc Mach Ltd | Dynamic saving of registers in transactions |
US9600312B2 (en) | 2014-09-30 | 2017-03-21 | Amazon Technologies, Inc. | Threading as a service |
US9678773B1 (en) | 2014-09-30 | 2017-06-13 | Amazon Technologies, Inc. | Low latency computational capacity provisioning |
US9146764B1 (en) | 2014-09-30 | 2015-09-29 | Amazon Technologies, Inc. | Processing event messages for user requests to execute program code |
US9537788B2 (en) | 2014-12-05 | 2017-01-03 | Amazon Technologies, Inc. | Automatic determination of resource sizing |
US9588790B1 (en) | 2015-02-04 | 2017-03-07 | Amazon Technologies, Inc. | Stateful virtual compute system |
US9733967B2 (en) | 2015-02-04 | 2017-08-15 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9727395B2 (en) * | 2015-07-01 | 2017-08-08 | International Business Machines Corporation | Robust and adaptable management of event counters |
US9910713B2 (en) | 2015-12-21 | 2018-03-06 | Amazon Technologies, Inc. | Code execution request routing |
US11132213B1 (en) | 2016-03-30 | 2021-09-28 | Amazon Technologies, Inc. | Dependency-based process of pre-existing data sets at an on demand code execution environment |
US10102040B2 (en) | 2016-06-29 | 2018-10-16 | Amazon Technologies, Inc | Adjusting variable limit on concurrent code executions |
US10853115B2 (en) | 2018-06-25 | 2020-12-01 | Amazon Technologies, Inc. | Execution of auxiliary functions in an on-demand network code execution system |
US11146569B1 (en) | 2018-06-28 | 2021-10-12 | Amazon Technologies, Inc. | Escalation-resistant secure network services using request-scoped authentication information |
US10949237B2 (en) | 2018-06-29 | 2021-03-16 | Amazon Technologies, Inc. | Operating system customization in an on-demand network code execution system |
US11099870B1 (en) * | 2018-07-25 | 2021-08-24 | Amazon Technologies, Inc. | Reducing execution times in an on-demand network code execution system using saved machine states |
US11099917B2 (en) | 2018-09-27 | 2021-08-24 | Amazon Technologies, Inc. | Efficient state maintenance for execution environments in an on-demand code execution system |
US11243953B2 (en) | 2018-09-27 | 2022-02-08 | Amazon Technologies, Inc. | Mapreduce implementation in an on-demand network code execution system and stream data processing system |
US11943093B1 (en) | 2018-11-20 | 2024-03-26 | Amazon Technologies, Inc. | Network connection recovery after virtual machine transition in an on-demand network code execution system |
US11010188B1 (en) | 2019-02-05 | 2021-05-18 | Amazon Technologies, Inc. | Simulated data object storage using on-demand computation of data objects |
US11861386B1 (en) | 2019-03-22 | 2024-01-02 | Amazon Technologies, Inc. | Application gateways in an on-demand network code execution system |
US11119809B1 (en) | 2019-06-20 | 2021-09-14 | Amazon Technologies, Inc. | Virtualization-based transaction handling in an on-demand network code execution system |
US11190609B2 (en) | 2019-06-28 | 2021-11-30 | Amazon Technologies, Inc. | Connection pooling for scalable network services |
US11159528B2 (en) | 2019-06-28 | 2021-10-26 | Amazon Technologies, Inc. | Authentication to network-services using hosted authentication information |
US11115404B2 (en) | 2019-06-28 | 2021-09-07 | Amazon Technologies, Inc. | Facilitating service connections in serverless code executions |
US11119826B2 (en) | 2019-11-27 | 2021-09-14 | Amazon Technologies, Inc. | Serverless call distribution to implement spillover while avoiding cold starts |
US11714682B1 (en) | 2020-03-03 | 2023-08-01 | Amazon Technologies, Inc. | Reclaiming computing resources in an on-demand code execution system |
US11188391B1 (en) | 2020-03-11 | 2021-11-30 | Amazon Technologies, Inc. | Allocating resources to on-demand code executions under scarcity conditions |
US11550713B1 (en) | 2020-11-25 | 2023-01-10 | Amazon Technologies, Inc. | Garbage collection in distributed systems using life cycled storage roots |
US11593270B1 (en) | 2020-11-25 | 2023-02-28 | Amazon Technologies, Inc. | Fast distributed caching using erasure coded object parts |
US11388210B1 (en) | 2021-06-30 | 2022-07-12 | Amazon Technologies, Inc. | Streaming analytics using a serverless compute system |
US11968280B1 (en) | 2021-11-24 | 2024-04-23 | Amazon Technologies, Inc. | Controlling ingestion of streaming data to serverless function executions |
US12015603B2 (en) | 2021-12-10 | 2024-06-18 | Amazon Technologies, Inc. | Multi-tenant mode for serverless code execution |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02146631A (ja) | 1988-11-29 | 1990-06-05 | Nec Corp | レジスタ復帰退避方式 |
JPH0353328A (ja) | 1989-07-20 | 1991-03-07 | Hitachi Ltd | レジスタ退避回復方法ならびに処理装置 |
JPH05127926A (ja) * | 1991-10-31 | 1993-05-25 | Nec Corp | タスク制御装置 |
JPH05165652A (ja) * | 1991-12-16 | 1993-07-02 | Fujitsu Ltd | タスク切替え制御方法 |
GB9600823D0 (en) * | 1996-01-16 | 1996-03-20 | British Telecomm | Distributed processing |
JP2001297007A (ja) * | 2000-04-11 | 2001-10-26 | Tokyo Denshi Sekkei Kk | コンピュータ制御方法および該方法により制御されるコンピュータ |
US7313797B2 (en) | 2002-09-18 | 2007-12-25 | Wind River Systems, Inc. | Uniprocessor operating system design facilitating fast context switching |
JP3889726B2 (ja) | 2003-06-27 | 2007-03-07 | 株式会社東芝 | スケジューリング方法および情報処理システム |
US7711898B2 (en) * | 2003-12-18 | 2010-05-04 | Intel Corporation | Register alias table cache to map a logical register to a physical register |
US8407715B2 (en) * | 2007-04-30 | 2013-03-26 | National Tsing Hua University | Live range sensitive context switch procedure comprising a plurality of register sets associated with usage frequencies and live set information of tasks |
JP2010208958A (ja) | 2009-03-06 | 2010-09-24 | Orient Herb Kk | 紫外線による皮膚老化防止または予防剤 |
-
2010
- 2010-09-17 JP JP2010208958A patent/JP5644307B2/ja active Active
-
2011
- 2011-08-16 US US13/210,586 patent/US9032417B2/en not_active Expired - Fee Related
- 2011-08-31 EP EP11179600A patent/EP2431867A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US9032417B2 (en) | 2015-05-12 |
US20120072920A1 (en) | 2012-03-22 |
EP2431867A3 (en) | 2012-08-22 |
EP2431867A2 (en) | 2012-03-21 |
JP2012064086A (ja) | 2012-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5644307B2 (ja) | 情報処理装置、情報処理装置の制御方法及び制御プログラム | |
US7979861B2 (en) | Multi-processor system and program for causing computer to execute controlling method of multi-processor system | |
US8996761B2 (en) | Virtual queue processing circuit and task processor | |
US9304794B2 (en) | Virtual machine control method and virtual machine system using prefetch information | |
EP2056198A1 (en) | Task processing device | |
US20060212687A1 (en) | Dual thread processor | |
JP5673672B2 (ja) | マルチコアプロセッサシステム、制御プログラム、および制御方法 | |
US7366814B2 (en) | Heterogeneous multiprocessor system and OS configuration method thereof | |
WO2008023427A1 (fr) | Dispositif de traitement de tâche | |
US11392407B2 (en) | Semiconductor device | |
US20070283138A1 (en) | Method and apparatus for EFI BIOS time-slicing at OS runtime | |
CN112783652A (zh) | 当前任务的运行状态获取方法、装置、设备及存储介质 | |
US9619277B2 (en) | Computer with plurality of processors sharing process queue, and process dispatch processing method | |
CN113032154A (zh) | 一种虚拟cpu的调度方法、装置、电子设备及存储介质 | |
JP5376042B2 (ja) | マルチコアプロセッサシステム、スレッド切り替え制御方法、およびスレッド切り替え制御プログラム | |
JP5668505B2 (ja) | クロック周波数制御プログラム、クロック周波数制御装置 | |
CN114327767B (zh) | 任务处理的方法、装置、电子设备及计算机可读存储介质 | |
CN113439260A (zh) | 针对低时延存储设备的i/o完成轮询 | |
KR100506254B1 (ko) | 임베디드 시스템의 비특권 모드에서 인터럽트 처리를 위한장치 및 방법 | |
US5778207A (en) | Assisting operating-system interrupts using application-based processing | |
JP2008225710A (ja) | コンピュータシステム及び該システムで用いられるプロセス切替え方法 | |
US8782294B1 (en) | Intra-processor resource control | |
JP5582241B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム | |
CN114579264A (zh) | 处理装置、处理系统和处理方法 | |
CN118132231A (zh) | 基于虚拟双核的系统任务调度方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130702 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140319 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140401 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140530 |
|
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: 20141007 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141020 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5644307 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |