説明

Fターム[5B081CC21]の内容

特別なプログラム実行装置 (1,497) | コンパイラ (1,025) | 最適化 (549)

Fターム[5B081CC21]の下位に属するFターム

Fターム[5B081CC21]に分類される特許

1 - 20 / 110


【課題】中間コード命令で記述されたプログラムの実行及びコンパイルを効率的に行うことができる情報処理装置を提供する。
【解決手段】CPU100は、実行ルートに沿って中間コード命令を順次読込み、コンパイル結果格納部15に読み込んだ中間コード命令のコンパイル結果があるか否かを判定し、コンパイル結果が無ければ中間コード命令の解釈を行ない、コンパイル結果があればコンパイル結果を指定するバイトコード解釈部17と、バイトコード解釈部17から中間コード命令の解釈結果を受けた場合、中間コード命令を実行し、コンパイル結果の指定を受けた場合、指定されたネイティブコードを実行するプログラム実行部18とを備える。CPU200は、バイトコード解釈部17により解釈された中間コード命令をコンパイルしてネイティブコードを生成しコンパイル結果格納部15に格納するコンパイル実行部19を備える。 (もっと読む)


【課題】コンパイルにより生成するオブジェクトコードのデータサイズを小さくすること
【解決手段】サブルーチン検出部131は、ソースプログラムの解析から得られる中間コードに含まれる命令列に対し、所定規則により類似と判定される類似命令列をも同一命令列とみなす比較を行い、サブルーチン化可能な命令列群であるサブルーチン対象命令列群を検出する。サブルーチン生成部132は、サブルーチン対象命令列群から前記オブジェクトコード内に埋め込むサブルーチンを生成する。この際、サブルーチン生成部132は、類似命令列に関する処理を置換可能に構成したサブルーチンを生成する。サブルーチン呼び出し部133は、オブジェクトコードに対し、類似命令列の各々に応じた処理を埋め込む。 (もっと読む)


【課題】CPUの処理速度の向上を図ることが可能となるようにコンパイル処理を行なうコンパイル装置を提供すること。
【解決手段】動作周波数テーブル24は、CPUによって実行可能な命令のそれぞれの動作周波数を記憶する。コンパイラ22は、プログラムのソースコード21を解釈して、CPUが実行可能なCPU命令群23に変換する。そして、動作周波数テーブルを参照して、変換したCPU命令群23のそれぞれのCPU命令の動作周波数を抽出し、その中で最も低い動作周波数をCPUの動作周波数に決定する。したがって、CPUの処理速度の向上を図ることが可能となるようにコンパイル処理を行なうことが可能となる。 (もっと読む)


【課題】仮想マシン(VM)環境におけるマネージド・ランタイム・アプリケーションの性能を最適化するために、下層のプロセッサの機能を使用可能にする。
【解決手段】1つ以上のプロセッサ命令に関連するプロセッサ命令スタブ(PIPS)が生成される。この「スタブ」は、プログラムの実行時に種々のタスクを実行するために提供される、動的に生成されるコードの一部を指す。そして、生成されたPIPSに基づいて、1つ以上のプロセッサ命令を実行するために最適化アプリケーション・プログラム・インタフェースが生成される。 (もっと読む)


【課題】同期された命令ストリングのプレデコードを保証する。
【解決手段】命令ストリングは、可変長の命令セットおよび組込データ320からの命令310を含む。命令セットにおける最短長さの命令に等しくなるようにグラニュールを定義し、命令セットにおいて最長長さの命令を構成するグラニュールの数をMAXに定義する。更に、組込データセグメントの終了を判定し、プログラムが命令ストリングにコンパイル又はアセンブルされる場合、長さMAX−1のパディング330を、組込データの終わりに、命令ストリング内に挿入する。パディングされた命令ストリングをプレデコードすると、たとえ組込データが可変長の命令セット内に存在する命令と類似するように偶然に符号化されても、プレデコーダは、パディングされた命令ストリング内の命令との同期を保つ。 (もっと読む)


【課題】適応型最適化を適用して生成されたコンパイル済みの実行命令列を効果的に再利用する技術を提供する。
【解決手段】コンピュータは、コンパイル済みの実行命令列を、適用された1以上の最適化の各々に関して参照された実行状態情報のリストと、各実行状態情報の値が最適化の効果を得るために満たすべき条件のリストとに関係付けて保存する共有プール135を有する。動的コンパイラプログラムは、共有プール135から、コンパイル対象の部分プログラムに対応する実行命令列に関係付けられた条件のリストを読み出し、各条件を対応する現在の実行状態情報の値が満たすか否かを判定する。動的コンパイラプログラムは、条件が満たされる場合、共有プール135内の実行命令列を再利用し、条件が満たされない場合、コンパイル対象の部分プログラムをコンパイルする。 (もっと読む)


【課題】別個にコンパイルされたコーラ・ルーチンからパラメータを転送し、複数のインタフェースを介して、別個にコンパイルされたコーリー・ルーチンがパラメータを受け取ることを可能にする。
【解決手段】インタフェースは、規則によるインタフェース、及び別のインタフェースを含み得る。コーラ・ルーチンは、別のインタフェースを介してパラメータを転送し、コーリー・ルーチンの別のエントリ・ポイントに対してコールする。関連付けられたスタブ・ルーチンは、規則によるインタフェースを介してパラメータを転送し、コーリー・ルーチンの通常のエントリ・ポイントに対してコールする。コーリー・ルーチンが対応する別のエントリ・ポイントを含んでいる場合、コーラ・ルーチンは別のエントリ・ポイントにリンクする。さもなければ、コーリー・ルーチンは、スタブ・ルーチンを介してコーリー・ルーチンにリンクする。 (もっと読む)


【課題】逐次処理用プログラムでも、ループ部分の繰り返し処理を並列に実行するマルチコアプロセッサの実現。
【解決手段】メインプロセッサ10を含む複数個のプロセッサエレメントPE20-1,20-N-1を含み、逐次処理プログラムを実行するマルチコアプロセッサであって、メインプロセッサは、ループ部分を検出するループ部分検出部11を含み、マルチコアプロセッサは、ループ部分を検出した時に、複数個のPEがループ部分を命令バッファにコピーし、ループカウンタの初期値を各PEごとにずらして格納し、更新量をPEの個数に応じて設定する展開制御部12と、を含み、いずれか1個のPEが終了通知を出力した際に,終了通知を出力したPEより前のループカウンタ値の処理を行っているすべてのPEの現在の処理の終了を待ち,終了通知を出力したPEより後ろのループカウンタ値の処理を行っているPEの処理を終了させた後,逐次処理のプログラムの処理を続行する。 (もっと読む)


【課題】 実際のデータ転送レートの変更、ホストプロセッサのキャッシュの振る舞いを考慮し、アクセラレータへオフロードするか否かを判断できるソフトウェア変換プログラムを提供する。
【解決手段】
入力ソフトウェア702を解析して求めた、ループ中の算術演算回数をループ中にアクセスするデータのサイズで除した計算密度と、データを参照する領域を合計したデータ参照領域サイズと、予め用意された前記ホストプロセッサ101と前記アクセラレータプロセッサ104との実行時間の優劣が定められている勝敗表とに基づいて、各ループを実行させるプロセッサを決定する。この決定に基づくプロセッサで各ループが実行されるように入力ソフトウェア702を変換させる。 (もっと読む)


【課題】関数定義コードの集合である関数定義部分を、より多く共通化することが可能なテンプレートコンパイル方法を提供する。
【解決手段】テンプレート122に基づいて生成される関数定義部分の重要度を示すプロファイルデータ18が、格納部に格納される。コンパイラ13が、複数のサブソースプログラム121を独立にコンパイルすることにより生成される複数のサブオブジェクトプログラム171に含まれる関数定義部分を、他の関数定義部分と共通のコードにより定義される共通化関数定義部分174とするか、又は、他の関数定義部分から独立したコードにより定義される独立関数定義部分173とするかを、プロファイルデータ18に基づいて決定する。コンパイラ13が、前記決定に基づいて、共通化関数定義部分174又は独立関数定義部分173を含むオブジェクトプログラム17を生成する。 (もっと読む)


【課題】ユーザーインターフェースを実現するJava(登録商標)プログラムを実行する場合、中間語の高速実行手法であるJITコンパイラが原因で生じる遅延を、バイトコードアクセラレータを使用して解消する手段を提供する。
【解決手段】Java(登録商標)仮想マシンが中間言語ファイルを読み込む際にそのファイルがユーザーインターフェースにかかわる処理かどうかをJava(登録商標)クラスライブラリのGUIを実装するクラスから呼び出されているかという基準で判定し、ユーザーインターフェースにかかわる処理であればバイトコードアクセラレータで、そうでなければJITコンパイラで処理後に中央演算装置で処理する。 (もっと読む)


【課題】コンピュータ・コード(415)のアグレッシブ最適化を行うメカニズムを提供する。
【解決手段】これらのメカニズムを用いると、コード部分を有する実行可能コード(415)であって、該コード部分についてアグレッシブ・コンパイル・コード・バージョン(420)及びコンサバティブ・コンパイル・コード・バージョン(430)が提供される実行可能コード(415)が受け取られる。コード部分のアグレッシブ・コンパイル・コード・バージョン(420)は、データ処理システム(450)のプロセッサ(206)において実行される。アグレッシブ・コンパイル・コード・バージョン(420)の実行中に例外条件が発生するかどうかが判定(620)される。例外条件が発生したという判定(620)に応答してコード部分(415)の状態に対する変更がロールバック(630)される。コード部分の状態に対する変更がロールバック(630)されたことに応答して、コンサバティブ・コンパイル・コード・バージョン(430)がデータ処理システム(450)のプロセッサ(206)において実行される。 (もっと読む)


【課題】ソースレベルでの変換・最適化を実施した際にもデバッグのし易さを確保し、ソフトウェア開発の利便性および開発効率を高めることができるコンパイルシステムを提供する。
【解決手段】高級言語で記述されたソースプログラムを機械語プログラムに翻訳するコンパイルシステムであって、オリジナルソースプログラム101に対してソースプログラムレベルの最適化を施すことにより、オリジナルソースプログラム101を最適化ソースプログラム102に変換するソースレベルオプティマイザ3と、最適化ソースプログラム102を機械語プログラム104に変換するコンパイラ5と、オリジナルソースプログラム101と機械語プログラム104との対応関係を示す最終デバッグ情報112を生成する最終デバッグ情報選択生成部52とを備える。 (もっと読む)


【課題】連続して使用しない演算器を低消費電力モードに設定する電力制御を効率的に行えるVLIW型プロセッサ用プログラムを容易に開発できる開発システムの実現。
【解決手段】複数の演算器36AA,36AB,36AC,36BA,36BB,36BCをそれぞれ有する複数のスロット35A,35Bを備え、演算器の少なくとも一部は低消費電力モードに設定可能であるVLIW型プロセッサ用プログラムの開発システムであって、VLIW型プロセッサ用コンパイラ21と、コンパイラが出力したプログラムを実行する時に使用する演算器の使用情報を生成する演算器使用情報生成部38と、使用情報に基づいて電力制御コンパイルオプションを生成して出力する演算器使用情報出力部72と、を備え、コンパイラ21は、各スロットで使用する演算器の変更を指示する電力制御コンパイルオプションが入力されるインターフェースを備える。 (もっと読む)


【課題】デジタル表示グラフィックスを生成する性能を改善することを目的とする。
【解決手段】コンパイル中に、可能である場合には、プログラム可能カリングユニットの区間の境界が計算される。変数毎に、区間の境界は、コンパイル中に計算され、最適化されたカリングプログラムを生成するために、他のメタデータと共に境界が使用される。可能でない場合には、仮定が行われてもよく、仮定がコードをコンパイルするために使用されてもよい。仮定が無効であることがわかった場合、新たな仮定が行われてもよく、或る実施例では、コードは再コンパイルされてもよい。 (もっと読む)


【課題】高い電力効率および時間効率でロードを処理する方法および装置を提供する。
【解決手段】コンパイラは、プロデューサーロード、コンシューマー再利用ロード、コンシューマー転送ロード、および、プロデューサー/コンシューマハイブリッドロードを特定する。この特定結果に基づき、ロードの実行をロード値バッファ、ストアバッファ、データキャッシュ等に指示することによって高効率化を図る。このような構成とすることによって、ロード値バッファおよびストアバッファから直接ロードさせることによってキャッシュに対するアクセスを低減し、ロードの処理を高効率化する。 (もっと読む)


【課題】値再利用(メモ化:Memoization)の際、実行結果を保存しておくメモリに保持させるデータのビット長を短縮させることにより、値再利用の効率を改善させる。
【解決手段】再利用命令判別部120は、プログラムにおける複数の命令区間の使用態様を解析してその命令区間のうち実行結果が再び利用される再利用区間を判別する。ハッシュ関数決定部200は、再利用区間の開始アドレスのビット幅より狭いビット幅の値により再利用区間を識別する区間識別値を生成するための区間識別値生成関数を、区間識別値生成関数の候補である候補関数から決定する。機械語プログラム生成部140は、ハッシュ関数決定部200により決定された区間識別値生成関数が埋め込まれた機械語プログラムを生成する。 (もっと読む)


プログラマブルプロセッサが処理する命令のサブセット用の命令コンパクションスキームをそれぞれ生成する方法は、a)プログラマブルプロセッサで実行するソフトウェアを表す少なくとも1つの入力コードのサンプルを受信する段階であって、入力コードは第1の命令セットを定義する複数の命令を含む段階(S1)と、b)除去する命令セットを空として初期化する段階(S3)と、c)第1の命令セットの最もコンパクトな表現を決定する段階(S4)と、d)最もコンパクトな表現のサイズを閾値と比較する段階(S5)と、e)サイズが閾値より大きい場合、ステップe1からe3を実行する段階と、f)段階bから段階fを繰り返す段階であって、第1の命令セットは、除去する命令セットから形成される段階(S9、S10)とを備え、ステップe1からe3は、e1)第1の命令セットのどの命令の符号化コストが最も高いかを判断する段階(S6)と、e2)第1の命令セットから、最も高い符号化コストを持つ命令を除去する段階(S7)と、e3)命令を除去する命令セットに追加する段階(S8)とである。 (もっと読む)


【課題】クライアントにおいてアプリケーションプログラムの処理結果を迅速に得ることが可能であり、かつ、クライアントの制御部や記憶部に過度な負荷が掛かるのを回避することが可能な情報処理システムを提供する。
【解決手段】この情報処理システム100は、アプリケーション60の中間コードをネイティブコードに変換するネイティブコードコンパイラ55と、中間コードとネイティブコードコンパイラ55により変換されたネイティブコードとから構成されるアプリケーション60を格納するHDD51とを含むサーバ5と、サーバ5と通信可能なように構成されているとともに、サーバ5から受信したアプリケーション60の中間コードを解釈して実行するインタプリタ15aと、アプリケーション60のネイティブコードを実行するCPU10とを含むクライアント1とを備える。 (もっと読む)


【課題】ソースプログラムの効率的なチューニングを支援する。
【解決手段】構文解析部182は、ソースプログラム141から第1の中間コードを生成する。論理保証最適化部184は、第1の中間コードに対しターゲットプロセッサに応じた最適化処理を行うことにより、第2の中間コードを生成する。最適性到達度解析部186は、第2の中間コードの性能の分析を行い、性能分析の結果を示す最適性到達度情報142を出力する。 (もっと読む)


1 - 20 / 110