JP2001142718A - プログラム実行装置 - Google Patents
プログラム実行装置Info
- Publication number
- JP2001142718A JP2001142718A JP32804699A JP32804699A JP2001142718A JP 2001142718 A JP2001142718 A JP 2001142718A JP 32804699 A JP32804699 A JP 32804699A JP 32804699 A JP32804699 A JP 32804699A JP 2001142718 A JP2001142718 A JP 2001142718A
- Authority
- JP
- Japan
- Prior art keywords
- program
- optimization
- unit
- execution
- call
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
の実行速度を向上させる。 【解決手段】 インタプリタ型言語で記述されたプログ
ラム1は、呼び出し単位毎に呼び出されてコンパイル手
段2によってコンパイルされ、記憶手段3に格納され
る。実行手段4は、該当する呼び出し単位を記憶手段3
から読み出して実行する。計数手段5は、実行手段4に
よって実行された呼び出し単位の実行回数を計数し、判
定手段6に通知する。判定手段6は、計数手段5の計数
結果が所定の閾値を上回っている場合には、その呼び出
し単位の再度の最適化が必要である旨を再最適化手段7
に通知する。再最適化手段7は、判定手段6によって再
度の最適化が必要であると判定された呼び出し単位に対
して、更に高いレベルの最適化処理を施す。最適化処理
が完了すると、実行手段4は最適化後の呼び出し単位を
実行処理の対象とする。
Description
に関し、特に、複数の呼び出し単位から構成されるプロ
グラムを呼び出し単位毎に実行するプログラム実行装置
に関する。
別すると、(1)コンパイラ型言語と(2)インタプリ
タ型言語に分類される。
述されたソースプログラムをCPU(Central Processi
ng Unit)が理解可能な低レベルな機械語に一括して変
換し、実行するタイプの言語である。
の実行時に、ソースプログラムを逐次解釈しながら実行
するタイプの言語である。前者のコンパイラ型言語は、
コンパイル処理によってソースプログラムを機械語に一
括して変換するので、インタプリタ型言語で記述された
プログラムよりも実行速度が速いという長所がある。
プログラムを実行する前にコンパイル処理を実行する必
要がないため簡便であるという長所がある。
タプリタ型言語は、実行時のオーバーヘッドが比較的大
きいため、動作速度が遅いという問題点がある。
を向上させるための手法が種々提案されている。しかし
ながら、従来におけるこれらの手法は、プログラム全体
を一定の最適化レベルで最適化処理するものであるの
で、ほとんど実行されない処理に対しても、頻繁に実行
される処理に対しても同レベルの最適化が施されるた
め、効率的な最適化ができないという問題点があった。
の分だけアプリケーションプログラムの実行速度は向上
するが、最適化処理自体に時間を要するため、どのレベ
ルで最適化するかを見極めることが困難であるという問
題点があった。
のであり、インタプリタ型言語によって記述されたアプ
リケーションプログラムを適切なレベルで最適化処理
し、その実行速度を向上させることが可能なプログラム
実行装置を提供することを目的とする。
決するために、図1に示す、複数の呼び出し単位から構
成されるプログラム1を呼び出し単位毎に実行するプロ
グラム実行装置において、前記プログラム1を構成する
所定の呼び出し単位をコンパイルするコンパイル手段2
と、前記コンパイル手段2によってコンパイルされた呼
び出し単位を記憶する記憶手段3と、前記記憶手段3に
記憶された所定の呼び出し単位を実行する実行手段4
と、各呼び出し単位が実行された回数を計数する計数手
段5と、前記計数手段5による計数結果が所定の閾値を
上回ったか否かを判定する判定手段6と、前記判定手段
6によって所定の閾値を上回ったと判定された場合に
は、該当する呼び出し単位を再度最適化する再最適化手
段7と、を有することを特徴とするプログラム実行装置
が提供される。
1を構成する所定の呼び出し単位をコンパイルする。記
憶手段3は、コンパイル手段2によってコンパイルされ
た呼び出し単位を記憶する。実行手段4は、記憶手段3
に記憶された所定の呼び出し単位を実行する。計数手段
5は、各呼び出し単位が実行された回数を計数する。判
定手段6は、計数手段5による計数結果が所定の閾値を
上回ったか否かを判定する。再最適化手段7は、判定手
段6によって所定の閾値を上回ったと判定された場合に
は、該当する呼び出し単位を再度最適化する。
を参照して説明する。図1は、本発明の動作原理を説明
する原理図である。この図において、プログラム1は、
複数の呼び出し単位から構成され、各呼び出し単位毎に
呼び出されて実行される。ここで、呼び出し単位とは、
関数、メソッド、プロシージャー等である。
定の呼び出し単位を取得してコンパイル処理を施し、実
行可能なコードを生成する。記憶手段3は、コンパイル
された呼び出し単位をコンパイル手段2から取得し、所
定の領域に格納する。
る所定の呼び出し単位を実行する。計数手段5は、実行
手段4が実行した呼び出し単位の実行回数を計数する。
判定手段6は、計数手段5による計数値が所定の閾値を
上回った場合には、その旨を再最適化手段7に通知す
る。
あった場合には、該当する呼び出し単位を更に高いレベ
ルで最適化する。次に、以上の原理図の動作について説
明する。
に実行されるべき呼び出し単位がコンパイル手段2によ
って取得され、コンパイル処理が施された後、記憶手段
3の所定の領域に格納される。
実行手段4によって実行される。このとき、計数手段5
は、実行手段4によって実行された呼び出し単位の実行
回数を計数する。例えば、呼び出し単位である「fun
c1」が初めて実行されたとすると、func1に対応
する計数値は“1”となる。
けて、その計数値が所定の閾値を上回っていないか否か
を判定する。例えば、呼び出し単位「func2」の計
数値が“102”である場合に、閾値が“100”であ
るとすると、判定手段6は、閾値を上回っていると判定
して再最適化手段7に通知する。
を、その時点における最適化レベルよりも更に高いレベ
ルで最適化する。例えば、前述の「func2」の例に
おいて、func2のその時点での最適化レベルが
「低」であるとすると、最適化レベルが「中」となるよ
うに最適化処理が施される。なお、再最適化手段7によ
る最適化処理は、プログラム1の実行処理と並行して実
行され、また、最適化処理の優先度はプログラム1のそ
れよりも低く設定されているので、プログラム1の実行
を遅滞させることなく、最適化処理を実行することが可
能となる。
最適化後の呼び出し単位が実行手段4の実行対象とされ
るので、プログラム1の実行速度を向上させることが可
能となる。
ム実行装置によれば、各呼び出し単位の実行回数を計数
し、その計数値が所定の閾値を上回った場合には、該当
する呼び出し単位を更に高い最適化レベルで最適化しな
おすようにしたので、頻繁に実行される呼び出し単位ほ
ど高いレベルで最適化されることになり、処理全体とし
ての実行速度を向上させることが可能となる。
ム1の実行処理と並行して行うとともに、再最適化手段
7が実行する処理の優先度をプログラム1のそれよりも
低く設定するようにしたので、プログラム1の実行を遅
滞させることなく、最適化処理を実行することが可能と
なる。
態の構成例について説明する。この図において、記憶装
置10は、例えば、HDD(Hard Disk Drive)によっ
て構成されており、実行対象となるプログラムソースコ
ード10aを記憶している。なお、このプログラムソー
スコード10aは複数の関数から構成されている。
る関数をプログラムソースコード10aから取得し、コ
ンパイル部12に供給する。コンパイル部12は、ソー
スコードで記述された関数に対してコンパイル処理を施
し、実行可能形式のコードに変換する。
最適化処理を施し、メモリ14に供給する。メモリ14
は、例えば、RAM(Random Access Memory)等によっ
て構成されており、最適化部13によって最適化された
関数を格納する。
納されている関数を実行する。最適化管理部16は、プ
ログラム実行部15によって実行された各関数の実行回
数を計数するとともに、計数値が所定の閾値を上回った
場合には、より高レベルの最適化が必要である旨をバッ
クグラウンド最適化部17に通知する。
管理部16から通知を受けた場合には、該当する関数に
対して更に高レベルの最適化を施す。次に、以上の実施
の形態の動作について説明する。
ログラムソースコード10aを実行する場合の処理の流
れを説明するフローチャートである。このフローチャー
トが開始されると以下の処理が実行される。 [S1]プログラム実行部15は、実行対象の関数を特
定する。 [S2]プログラム実行部15は、実行済みの関数であ
るか否かを判定し、実行済みである場合にはステップS
7に進み、それ以外の場合にはステップS3に進む。 [S3]プログラム実行部15は、プログラムロード部
11を制御して、対象となる関数を記憶装置10から読
み込ませる。 [S4]コンパイル部12は、プログラムロード部11
から供給された関数をコンパイルする。 [S5]最適化部13は、コンパイルされた関数に低レ
ベルの最適化を施し、メモリ14の所定の領域に格納す
る。 [S6]最適化管理部16は、コンパイルされた関数の
現最適化レベル(低レベル)を記憶する。
各関数の情報の一例である。この例では、各関数の名
称、実行回数、現最適化レベル、および、必要最適化レ
ベルが各関数毎に関連付けられて記憶されている。ここ
で、「実行回数」は、その関数が実行された回数であ
り、また、現最適化レベルは、その関数の現時点におけ
る最適化レベルである。更に、必要最適化レベルは、現
在の実行回数から求められる必要な最適化レベルであ
る。なお、必要最適化レベルと現最適化レベルが異なっ
ているのは、関数の最適化処理には一定の処理時間を要
するためである。 [S7]最適化管理部16は、該当する関数の実行回数
(図4参照)をインクリメントする。 [S8]最適化管理部16は、実行回数が、最適化レベ
ルを定めるための閾値を上回ったか否かを判定し、閾値
を上回った場合にはステップS9に進み、それ以外の場
合にはステップS10に進む。
対応関係の一例を示す図である。この例では、実行回数
が“1”〜“50”の場合は、必要最適化レベルは
「低」とされ、実行回数が“51”〜“100”の場合
は、必要最適化レベルは「中」とされ、また、実行回数
が“101”以上である場合は、必要最適化レベルは
「高」とされる。 [S9]最適化管理部16は、必要最適化レベルを更新
する。
回数が“100”から“101”に変化した場合には、
図5より必要最適化レベルは「高」の範疇に入るので、
図4に示す必要最適化レベルが「高」に変更される。 [S10]最適化管理部16は、処理対象の関数の現最
適化レベルを取得する。 [S11]最適化管理部16は、必要最適化レベルと現
最適化レベルとを比較し、これらが等しい場合にはステ
ップS13に進み、それ以外の場合にはステップS12
に進む。 [S12]最適化管理部16は、バックグラウンド最適
化部17を制御して、後述するバックグラウンド最適化
処理を起動させる。 [S13]プログラム実行部15は、現最適化レベルの
関数を実行する。
には、これまで実行されていた関数が実行され、最適化
が終了した場合には最適化後の関数が実行される。 [S14]プログラム実行部15は、処理を継続するか
否か判定し、継続する場合にはステップS1に戻って前
述の場合と同様の処理を繰り返し、それ以外の場合には
処理を終了する。
プS12で起動されるバックグラウンド最適化処理の詳
細について説明する。なお、この処理は、図3に示す処
理と並行して実行されるが、その優先度は図3に示す処
理よりも低く設定されているので、図3の処理の負荷が
高くない場合に実行される。
と、以下の処理が実行される。 [S20]バックグラウンド最適化部17は、最適化処
理の対象となる関数の必要最適化レベルを最適化管理部
16から取得する。 [S21]コンパイル部12は、プログラムロード部1
1を介して処理対象の関数を記憶装置10のプログラム
ソースコード10aから取得し、コンパイル処理を実行
する。 [S22]バックグラウンド最適化部17は、コンパイ
ルが終了した関数をコンパイル部12から取得し、ステ
ップS20において取得した必要最適化レベルに応じた
最適化処理を施す。
理との対応関係を示す図である。この図の例では、「低
レベル最適化」では、ループ対象外の処理をループ外に
追放する最適化が実行される。即ち、ループ処理に含ま
れている処理であって、ループ回数によらず処理内容が
変化しない処理は、ループから除外することにより処理
の高速化を図る。
使用の効率化を図る最適化が実行される。即ち、レジス
タに代入される値が既に代入されている値と同一である
場合には、その代入処理を省略することにより、処理の
高速化を図る。
ンライン展開する最適化が実行される。即ち、手続きや
関数を呼び出す代わりに、その手続きや関数を呼び出さ
れる場所に埋め込み、呼び出し時に必要な変数等の待避
処理を省略して処理の高速化を図る。 [S23]バックグラウンド最適化部17は、メモリ1
4に格納されている最適化前の関数(現最適化レベルに
対応する関数)と、ステップS22の処理により最適化
された関数(必要最適化レベルに対応する関数)の入れ
換えを行い、プログラム実行部15の実行対象を変更す
る。
数が呼び出された場合には、プログラム実行部15は、
ステップS22において最適化された関数を実行するこ
とになる。例えば、低レベル最適化関数14aが実行対
象とされている場合に、中レベル最適化関数14bが生
成された場合には、この中レベル最適化関数14bがプ
ログラム実行部15の実行対象となる。
が高い関数に対して、その頻度に応じたレベルの最適化
を施すようにしたので、処理の高速化を図ることが可能
となる。
の優先度をプログラムの実行処理の優先度よりも低く設
定してこれらを並行して実行するとともに、最適化処理
が終了した時点で、最適化後の関数を実行対象に変更す
るようにしたので、プログラムの実行処理に負担をかけ
ることなく最適化を行うことが可能となる。
好適であり、シングルプロセッサの場合に比較してより
一層の処理速度の向上を期待することができる。また、
以上の実施の形態では、最適化処理として、例えば、ル
ープ対象外の処理をループ外に追放する処理等を例に挙
げたが、本発明はこのような場合のみに限定されるもの
ではない。
によって実現することができる。その場合、プログラム
実行装置が有すべき機能の処理内容は、コンピュータで
読み取り可能な記録媒体に記録されたプログラムに記述
されており、このプログラムをコンピュータで実行する
ことにより、上記処理がコンピュータで実現される。コ
ンピュータで読み取り可能な記録媒体としては、磁気記
録装置や半導体メモリ等がある。市場へ流通させる場合
には、CD−ROM(Compact Disk Read OnlyMemory)や
フロッピーディスク等の可搬型記録媒体にプログラムを
格納して流通させたり、ネットワークを介して接続され
たコンピュータの記憶装置に格納しておき、ネットワー
クを通じて他のコンピュータに転送することもできる。
コンピュータで実行する際には、コンピュータ内のハー
ドディスク装置等にプログラムを格納しておき、メイン
メモリにロードして実行する。
呼び出し単位から構成されるプログラムを呼び出し単位
毎に実行するプログラム実行装置において、プログラム
を構成する所定の呼び出し単位をコンパイルするコンパ
イル手段と、コンパイル手段によってコンパイルされた
呼び出し単位を記憶する記憶手段と、記憶手段に記憶さ
れた所定の呼び出し単位を実行する実行手段と、各呼び
出し単位が実行された回数を計数する計数手段と、計数
手段による計数結果が所定の閾値を上回ったか否かを判
定する判定手段と、判定手段によって所定の閾値を上回
ったと判定された場合には、該当する呼び出し単位を再
度最適化する再最適化手段と、を有するようにしたの
で、プログラムの実行処理を遅延することなく、最適化
処理を実行することが可能となる。
行する場合の処理の流れを説明するフローチャートであ
る。
である。
例を示す図である。
グラウンド最適化処理の詳細を説明するフローチャート
である。
係を示す図である。
Claims (4)
- 【請求項1】 複数の呼び出し単位から構成されるプロ
グラムを呼び出し単位毎に実行するプログラム実行装置
において、 前記プログラムを構成する所定の呼び出し単位をコンパ
イルするコンパイル手段と、 前記コンパイル手段によってコンパイルされた呼び出し
単位を記憶する記憶手段と、 前記記憶手段に記憶された所定の呼び出し単位を実行す
る実行手段と、 各呼び出し単位が実行された回数を計数する計数手段
と、 前記計数手段による計数結果が所定の閾値を上回ったか
否かを判定する判定手段と、 前記判定手段によって所定の閾値を上回ったと判定され
た場合には、該当する呼び出し単位を再度最適化する再
最適化手段と、 を有することを特徴とするプログラム実行装置。 - 【請求項2】 前記再最適化手段は、前記プログラムの
実行処理と並行して最適化処理を実行し、 前記実行手段は、前記再最適化手段による最適化処理が
終了した場合には、最適化後の呼び出し単位を実行対象
とする、 ことを特徴とする請求項1記載のプログラム実行装置。 - 【請求項3】 前記再最適化手段が実行する最適化処理
の優先度は、前記プログラムの実行処理の優先度よりも
低く設定されていることを特徴とする請求項2記載のプ
ログラム実行装置。 - 【請求項4】 複数の呼び出し単位から構成される実行
対象プログラムを呼び出し単位毎に実行する処理をコン
ピュータに実行させるプログラムを記録した記録媒体に
おいて、 コンピュータを、 前記プログラムを構成する所定の呼び出し単位をコンパ
イルするコンパイル手段、 前記コンパイル手段によってコンパイルされた呼び出し
単位を記憶する記憶手段、 前記記憶手段に記憶された所定の呼び出し単位を実行す
る実行手段、 各呼び出し単位が実行された回数を計数する計数手段、 前記計数手段による計数結果が所定の閾値を上回ったか
否かを判定する判定手段、 前記判定手段によって所定の閾値を上回ったと判定され
た場合には、該当する呼び出し単位を再度最適化する再
最適化手段、 として機能させるプログラムを記録したコンピュータ読
み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32804699A JP3605327B2 (ja) | 1999-11-18 | 1999-11-18 | プログラム実行装置 |
US09/626,372 US6848098B1 (en) | 1999-11-18 | 2000-07-26 | Process and apparatus for optimizing program written in interpretive language for each callable program part base on frequency of executions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32804699A JP3605327B2 (ja) | 1999-11-18 | 1999-11-18 | プログラム実行装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001142718A true JP2001142718A (ja) | 2001-05-25 |
JP3605327B2 JP3605327B2 (ja) | 2004-12-22 |
Family
ID=18205918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP32804699A Expired - Fee Related JP3605327B2 (ja) | 1999-11-18 | 1999-11-18 | プログラム実行装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6848098B1 (ja) |
JP (1) | JP3605327B2 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004355277A (ja) * | 2003-05-28 | 2004-12-16 | Matsushita Electric Ind Co Ltd | プログラム実行制御装置、プログラム実行制御方法 |
JP2007226589A (ja) * | 2006-02-24 | 2007-09-06 | Oki Electric Ind Co Ltd | プログラム変換システム |
JP2010108086A (ja) * | 2008-10-28 | 2010-05-13 | Nec Corp | Cpuエミュレーションシステム、cpuエミュレーション方法及びcpuエミュレーションプログラム |
JP2012208655A (ja) * | 2011-03-29 | 2012-10-25 | Kddi Corp | 自己書き換え処理装置、自己書き換え処理方法、およびプログラム |
JP2017511939A (ja) * | 2014-03-11 | 2017-04-27 | アイイーエックス グループ,インコーポレーテッド | データ同期及びフェイルオーバ管理のためのシステム及び方法 |
JP2018028777A (ja) * | 2016-08-17 | 2018-02-22 | Necプラットフォームズ株式会社 | エミュレーション装置、エミュレーション方法、及び、エミュレーションプログラム |
JP7552405B2 (ja) | 2021-02-08 | 2024-09-18 | 富士通株式会社 | 最適化対象処理ブロック決定プログラムおよび最適化対象処理ブロック決定方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7509485B2 (en) * | 2002-09-04 | 2009-03-24 | Chou Hui-Ling | Method for loading a program module in an operating system |
US7266813B2 (en) * | 2003-09-30 | 2007-09-04 | International Business Machines Corporation | Determining how many class-type checks to inline |
US9207921B2 (en) * | 2009-06-22 | 2015-12-08 | Oracle America, Inc. | Fault tolerant compilation with automatic optimization adjustment |
JP2011100388A (ja) * | 2009-11-09 | 2011-05-19 | Fujitsu Ltd | トレース情報収集装置,トレース情報処理装置,およびトレース情報収集方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59125444A (ja) | 1982-12-31 | 1984-07-19 | Omron Tateisi Electronics Co | インタ−プリタの割込条件チエツク方法 |
JPS63276127A (ja) | 1987-05-07 | 1988-11-14 | Fujitsu Ltd | ダイナミック命令生成方式 |
US5428793A (en) * | 1989-11-13 | 1995-06-27 | Hewlett-Packard Company | Method and apparatus for compiling computer programs with interproceduural register allocation |
US5457799A (en) * | 1994-03-01 | 1995-10-10 | Digital Equipment Corporation | Optimizer for program loops |
US5613118A (en) * | 1994-06-20 | 1997-03-18 | International Business Machines Corporation | Profile-based preprocessor for optimizing programs |
US5802373A (en) * | 1996-01-29 | 1998-09-01 | Digital Equipment Corporation | Method for providing a pipeline interpreter for a variable length instruction set |
US5805895A (en) * | 1996-06-09 | 1998-09-08 | Motorola, Inc. | Method and apparatus for code translation optimization |
US5854933A (en) * | 1996-08-20 | 1998-12-29 | Intel Corporation | Method for optimizing a computer program by moving certain load and store instructions out of a loop |
US5966537A (en) * | 1997-05-28 | 1999-10-12 | Sun Microsystems, Inc. | Method and apparatus for dynamically optimizing an executable computer program using input data |
US5970249A (en) | 1997-10-06 | 1999-10-19 | Sun Microsystems, Inc. | Method and apparatus for performing byte-code optimization during pauses |
JP3284956B2 (ja) * | 1998-01-26 | 2002-05-27 | 日本電気株式会社 | プログラム変換方法、プログラム変換装置及びプログラム変換プログラムを記憶した記憶媒体 |
US6408433B1 (en) * | 1999-04-23 | 2002-06-18 | Sun Microsystems, Inc. | Method and apparatus for building calling convention prolog and epilog code using a register allocator |
-
1999
- 1999-11-18 JP JP32804699A patent/JP3605327B2/ja not_active Expired - Fee Related
-
2000
- 2000-07-26 US US09/626,372 patent/US6848098B1/en not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004355277A (ja) * | 2003-05-28 | 2004-12-16 | Matsushita Electric Ind Co Ltd | プログラム実行制御装置、プログラム実行制御方法 |
JP4713820B2 (ja) * | 2003-05-28 | 2011-06-29 | パナソニック株式会社 | プログラム実行制御装置、プログラム実行制御方法 |
JP2007226589A (ja) * | 2006-02-24 | 2007-09-06 | Oki Electric Ind Co Ltd | プログラム変換システム |
JP2010108086A (ja) * | 2008-10-28 | 2010-05-13 | Nec Corp | Cpuエミュレーションシステム、cpuエミュレーション方法及びcpuエミュレーションプログラム |
JP2012208655A (ja) * | 2011-03-29 | 2012-10-25 | Kddi Corp | 自己書き換え処理装置、自己書き換え処理方法、およびプログラム |
JP2017511939A (ja) * | 2014-03-11 | 2017-04-27 | アイイーエックス グループ,インコーポレーテッド | データ同期及びフェイルオーバ管理のためのシステム及び方法 |
JP2018028777A (ja) * | 2016-08-17 | 2018-02-22 | Necプラットフォームズ株式会社 | エミュレーション装置、エミュレーション方法、及び、エミュレーションプログラム |
US10268462B2 (en) | 2016-08-17 | 2019-04-23 | Nec Platforms, Ltd. | Emulation device, emulation method, and recording medium storing emulation program |
JP7552405B2 (ja) | 2021-02-08 | 2024-09-18 | 富士通株式会社 | 最適化対象処理ブロック決定プログラムおよび最適化対象処理ブロック決定方法 |
Also Published As
Publication number | Publication date |
---|---|
JP3605327B2 (ja) | 2004-12-22 |
US6848098B1 (en) | 2005-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8943346B2 (en) | Distributed advanced power management | |
KR100589798B1 (ko) | 중지동안 바이트 코드 최적화 장치 및 방법 | |
US10659316B1 (en) | State machine controlled dynamic distributed computing | |
US6237141B1 (en) | Method and apparatus for dynamically optimizing byte-coded programs | |
US6308323B1 (en) | Apparatus and method for compiling a plurality of instruction sets for a processor and a media for recording the compiling method | |
US7316007B2 (en) | Optimization of n-base typed arithmetic expressions | |
JP3299611B2 (ja) | 資源割付装置 | |
US20020013937A1 (en) | Register economy heuristic for a cycle driven multiple issue instruction scheduler | |
US20020035722A1 (en) | Interactive instruction scheduling and block ordering | |
US6865734B2 (en) | Method and apparatus for performing byte-code optimization during pauses | |
JP2001166947A (ja) | コンパイル処理方式 | |
JP2001142718A (ja) | プログラム実行装置 | |
JP2000347874A (ja) | レジスタ割当器を用いた呼出規則プロローグ・エピローグコード構築方法及び装置 | |
CN111639044B (zh) | 一种支持中断优先级轮询仲裁派发的方法和装置 | |
GB2521367A (en) | Adaptable and extensible runtime and system for heterogeneous computer systems | |
JP2011198363A (ja) | プログラムコンパイラ、プログラム設置装置、及びプログラム設置方法 | |
JP3992102B2 (ja) | コンパイラ装置、コンパイル方法、コンパイラプログラム、及び記録媒体 | |
US11210193B2 (en) | Evaluating performance improvement of executing instructions in a first processor over execution on a second processor before compilation | |
US7100154B2 (en) | Dynamic compiler apparatus and method that stores and uses persistent execution statistics | |
JPH04266125A (ja) | ディジタルコンピュータの操作方法 | |
US20220066759A1 (en) | Thread-local return structure for asynchronous state machine | |
JP2002014868A (ja) | メモリ参照動作検出機構を有するマイクロプロセッサおよびコンパイル方法 | |
JP3807860B2 (ja) | コンパイル方法および装置、並びにメソッド活動度計算方法および装置 | |
JP2004240953A (ja) | コンピュータシステム、その同時多重スレッディング方法およびキャッシュコントローラシステム。 | |
KR20220036493A (ko) | 뉴럴 네트워크 추론을 위한 최적화 방법 및 이를 수행하는 컴퓨팅 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040629 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040825 |
|
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: 20040928 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041001 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071008 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081008 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081008 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091008 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091008 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101008 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |