説明

Fターム[5B081CC28]の内容

特別なプログラム実行装置 (1,497) | コンパイラ (1,025) | 最適化 (549) | メモリ割付 (115) | 変数、配列 (45)

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

1 - 20 / 45


【課題】配列の初期サイズを実行環境において動的に調整する技術を提供する。
【解決手段】
調整理置は、記憶装置と、記憶装置に格納された実行対象プログラムと、実行対象プログラムを解釈し、APIの記述の検出に応答して対応するAPIの機能を呼び出し実行する実行手段と、実行手段により呼び出され得る、所定のサイズの配列を割り付ける第1のAPIと、引数で指定された配列を拡張する第2のAPIとであって、実行時にそれぞれ、割り付けた配列のプロファイル情報格納領域に、拡張前の配列の割付呼び出しコンテキストを格納するコードに変換される、上記第1及び第2のAPIと、配列へのアクセスをプロファイルするプロファイラと、動的コンパイル対象のコード部分に含まれる配列の割付呼び出しコンテキストをインライン展開し、該コンテキストに関連づけられた全アクセス情報に基づき決定される配列のサイズを配列の初期サイズとして埋め込む動的コンパイラと、を含む。 (もっと読む)


【課題】動作速度の異なる主記憶装置を効率よく利用する。
【解決手段】画像形成装置100は、RAM105と、RAM105よりも高速に動作するSRAM103と、ROM104とを有する。ROM104は、ブートローダと、第1の実行プログラムと、第2の実行プログラムとを記憶する。ブートローダは、画像形成装置100の起動直後、第1の実行プログラムをRAM105に、第2の実行プログラムをSRAM103にロードする。第1の実行プログラム及び第2の実行プログラムは、画像形成装置100の組み込み制御プログラムである。第2の実行プログラムが前記組み込み制御プログラムを構成する要素のうち所定のマーキングがされた要素だけで構成され、第1の実行プログラムが残りの要素で構成される。 (もっと読む)


【課題】プロセッサコアが夫々キャッシュメモリを有するマルチプロセッサ環境で前記キャッシュメモリを効率よく使用できるようにプログラムを変換すること。
【解決手段】プログラム変換装置は、アクセス属性決定部と、非共有化対象分類部と、変換部とを備える。アクセス属性決定部は、ソースプログラムを構成するスレッドによるメモリアクセスから排他アクセスを求め、前記求めた排他アクセスのうちからキャッシュメモリを使用するメモリアクセスを決定する。非共有化対象分類部は、前記キャッシュメモリを使用してメモリアクセスされるアクセスデータのうちから、他のアクセスデータとの間でキャッシュラインを非共有化させるアクセスデータを決定する。変換部は、前記非共有化対象分類部による決定結果に基づいてキャッシュラインを非共有化させる処理をソースプログラムに挿入する。 (もっと読む)


【課題】コンパイル及びリンクによりプログラムを生成する際に、複数のメモリにおけるアクセス速度の違いを考慮した最適化を実現するプログラム生成装置、プログラム生成方法及びプログラムを提供する。
【解決手段】アクセス速度の異なる複数のメモリを有するコンピュータで動作されるプログラムを生成するプログラム生成装置であって、1回目のコンパイル及びリンクによりプログラムを生成し、そのプログラムをコンピュータ上で動作させた際のメモリに対するアクセスの監視結果と、複数のメモリのアクセス速度を示す情報とに基づいて、頻繁にアクセスされるデータを優先的にアクセス速度が速い方のメモリに配置するようにして、2回目のコンパイル及びリンクによりプログラムを生成することを特徴とする。 (もっと読む)


【課題】入力データ数に制限のある実行基盤において、入力データ数を制限数以下にするためのデータ統合処理を実行することなく、分散並列処理を実行可能にする。
【解決手段】逐次処理用に記述された第1プログラムに基づいて、並列処理が可能で、且つ、並列処理実行時の各並列処理の入力データ数に制限数がある計算機システム上で動作する第2プログラムを生成する計算機であって、第1プログラムから、並列処理が可能な第1並列処理及び第2並列処理を抽出し、抽出された第2並列処理の入力データ数が制限数よりも大きい、且つ、抽出された第1並列処理の入力データと出力データとが、第2並列処理の入力データを含む場合に、第1並列処理の入力データ及び出力データを統合した統合データを、第1並列処理の出力データ及び第2並列処理の入力データとする手順を組み込んだ第2プログラムを生成する。 (もっと読む)


【課題】NUMAアーキテクチャを採用した共有メモリ型マルチプロセッサ計算機システムを使用するプログラマがソースコードを書き換えることなく、ローカルメモリへアクセスする並列化プログラムを生成するコンパイラを提供する。
【解決手段】ローカルメモリにアクセスさせたい配列名と並列化させたい配列の次元がコンパイルオプションとして指定されていた場合に、配列名と配列の次元を配列テーブルに格納し、ソースコード内に配列テーブルに格納されている指定した配列をアロケートする処理がある場合に、アロケート処理の直後に指定した配列の初期化ループを追加し、ソースコード内にあるループに指定した配列がある場合に、指定した次元に使用されている変数と同じ変数をループ制御変数として使用しているループを並列化する。 (もっと読む)


【課題】プログラムの実行中に生成されるオブジェクトを格納するための第1および第2のメモリ領域を有する携帯型データ記憶媒体によってプログラムの実行中にメモリを管理する。
【解決手段】オブジェクト(38、40、44)の少なくとも一部が第2のメモリ領域(36)に作成される。更なるプログラム実行中に、オブジェクト(38、40、44)への永続リファレンス(42)が生成された場合、オブジェクトは第1のメモリ領域34に転送される。実行によりオブジェクトを作成した特定のメソッドの終了時に、特定のメソッドが、解放されるべき第2のメモリ領域のメモリスペースに存在するオブジェクトへのリファレンスをリターンしないときに、第2のメモリ領域の占有状態を示す占有状態指標を特定のメソッドが呼び出された時点における占有状態にリセットすることにより、第2のメモリ領域のメモリスペースを特定のメソッドが呼び出された時点のレベルまで解放する。 (もっと読む)


【課題】本発明は、プログラムが、割り当てられたオブジェクトをどのようにアクセスし且つどこでアクセスするかを解析することを目的とする。
【解決手段】本発明は、ポインタを解析する技法を提供する。当該技法は、アクセス箇所を検出したいオブジェクトが特定されたオブジェクトを生成するメソッドの呼び出し元の少なくとも1のメソッド(第1の呼び出し元のメソッド)に又は上記特定されたオブジェクトを生成するメソッドから呼び出される側の少なくとも1のメソッド(第1の呼び出される側のメソッド)にエスケープするかどうかを検出し、ポイント・ツー・グラフ中の少なくとも1のオブジェクトのフィールドが、第1の呼び出し元のメソッドから又は第1の呼び出される側のメソッドから到達可能であること且つポイント・ツー・グラフ中のオブジェクトを指していない状態であることを条件に、ロード・ノードをポイント・ツー・グラフ中に用意して、当該グラフを更新することを特徴とする。 (もっと読む)


【課題】関数呼び出し時の引数としてプロセッサエレメント用変数名を指定することができ、関数内の自動変数としてプロセッサエレメント用変数名を指定することができ、かつ変数値を記憶するスタックの領域を減少させることができるコンパイル装置及び方法を提供する。
【解決手段】コンパイル装置は、関数呼び出し時に、引数がグローバルプロセッサの変数名であればグローバルプロセッサのスタック領域に引数値を退避し、引数がプロセッサエレメントの変数名であればプロセッサエレメントのスタック領域に引数値を退避し、かつ各スタック領域から引数値を取り出すようにコード展開し、自動変数の領域を確保する時に、自動変数がグローバルプロセッサの変数名であればグローバルプロセッサのスタック領域に自動変数の領域を確保し、自動変数がプロセッサエレメントの変数名であればプロセッサエレメントのスタック領域に自動変数の領域を確保するようにコード展開する。 (もっと読む)


【課題】オブジェクトコード実行時に、自動変数に対するデータアクセス時間を短縮できるコンパイル装置を提供すること
【解決手段】コンパイル装置1は、コンパイル部40内に自動変数解析部411と、自動変数スタック処理部421と、を備える。自動変数解析部411は、ソースプログラムに含まれる自動変数を解析した解析情報を抽出する。自動変数スタック処理部421は、自動変数解析部411による解析に応じて、自動変数を格納するスタック領域を複数の記憶装置から選択する。 (もっと読む)


【課題】マルチコアプロセッサのメモリ使用効率を向上できる。
【解決手段】本発明の一実施形態に係るプログラム変換装置は、複数の変数を有する第1プログラムコードを、複数のコアを有するプロセッサによって実行される第2プログラムコードへ変換する。第2のプログラムコードは、所定のアクセスパターンでアクセスされると判定された変数を含むメンバ構造体と、そのメンバ構造体を指定するルートポインタとを有する。 (もっと読む)


【課題】コンピュータ資源のパフォーマンス向上のために、メモリアクセスをレジスタアクセスに置き換える。
【解決手段】各レジスタの値が退避されるスタック領域内へのメモリアクセスをローカル変数アクセスに置換する。SPがエスケープしていないことを条件に、エスケープしていないSPを介したメモリアクセスをローカル変数アクセスに置換する。バイナリコード内に含まれるcall命令で呼ばれるコードをインラインすることに応じて、各コール命令及びインラインされたコードにcall番号を付与し、SPがエスケープしていた場合に、エスケープしたSPをベースアドレスとするメモリアクセスのうち、エスケープを引き起こした命令に付与されたcall番号と、該call番号の祖先のcall番号とに属しているメモリアクセスのローカル変数アクセスへの置換を禁止し、一方、残りの禁止しなかったメモリアクセスをローカル変数アクセスに置換する。 (もっと読む)


【課題】複数の関数コールが含まれるプログラムコードに対し、プログラムコードの構造を変換することでデータ転送量を削減し、処理の高速化を実現する。また、同プログラムコードに対し、タスク並列可能なタスク並列コードに変換することで、マルチコア上で動作可能なコードとし、処理の高速化を実現する。
【解決手段】C言語などで記述されたコードであるオリジナルコードに対し、コード構造変換部によりコードの構造を変換して最適通信量コードを生成するプログラムコード構造変換装置であって、コード構造変換部は、複数の関数コールを有するオリジナルコードを入力し、1階層のフラットなコードであるフラット・コードに変換するインライン展開手段と、フラット・コードに対し、変数のデータ通信量を最適化し、最適通信量コードを生成する通信量最適化手段とを有する。更に、最適通信量コードに対し、タスク並列可能なタスク並列コードに変換するタスク分割部を有する。 (もっと読む)


【課題】分割配置された配列データを使用・定義するプログラム中のループが並列実行される際に、必要なメモリ領域を節約すると共に並列ループ処理を高速に実行する。
【解決手段】分散メモリ型マルチプロセッサシステムは、検出した並列ループネストに対して、並列化の基準配列の分散次元における基準アクセスパタンの添字と、選択したアクセスパタンの分散次元と対応する次元の添字とに基づいて、計算手段が並列ループの処理における制御変数の変動範囲で選択したアクセスパタンによりアクセスした場合、他の計算ノードの記憶手段に記憶している部分配列データを使用せずに処理が実行できるか否かを判断し、実行できると判断したアクセスパタンについては計算ノード間で部分配列データをコピーするための通信を行わない。 (もっと読む)


【課題】グローバル変数領域(RAM使用量)を削減することができるコンパイラ装置、コンパイラ方法及びプログラムを提供する。
【解決手段】コンパイラ8は、グローバル変数の使用範囲を調査して有効範囲を変更する有効範囲変更部84と、有効範囲変更部によって有効範囲を変更した変数情報を保有する有効範囲変更変数一覧表を格納する格納部87と、を有する。有効範囲変更部84は、有効範囲変更変数一覧表より複数のグローバル変数を同一アドレスの領域に配置することが可能な変数を抽出し、変数領域として割り当てする。 (もっと読む)


【課題】プログラムの開発工数がかからないコンパイラを提供する。
【解決手段】高級言語で記述されたソースプログラム72を機械語プログラムに翻訳するコンパイラ58であって、生成する機械語プログラムを最適化する旨の指示を取得する指示取得部と、前記ソースプログラム72を解析するパーサー部76と、前記パーサー部76における解析結果に基づいて、前記ソースプログラム72を中間コードに変換する中間コード変換部78と、前記指示に従って、前記中間コードを最適化する最適化部68と、前記中間コードを前記機械語プログラムに変換するコード生成部90とを備え、前記指示は、キャッシュメモリを利用するプロセッサをターゲットプロセッサとする最適化指示である。 (もっと読む)


【課題】基本データ型の二重表現を含む型システムが開示されている。
【解決手段】一方の表現は、基本組み込みデータ型に共通する基本データ型表現であり、これはアンボックス化値型、もっと単純には値型と呼ばれている。基本データ型の各々は、型システムのオブジェクト階層にストア可能であるボックス化表現ももっている。この二重表現はユーザ定義の型にも拡張可能であるので、ユーザ定義の型はアンボックス化値型としても、オブジェクトとしても型システムのオブジェクト階層に存在することができる。この二重表現によると、コンパイラおよび/またはランタイム環境は、そのときの特定の要求に応じて、データ型に最も効果的で、効率的な表現を選択することができる。 (もっと読む)


【課題】MPIソースコードプログラムをMPIスレッドベースプログラムに自動的に変換する方法を提供する。
【解決手段】コンバータは、MPIソースコードプログラムおよびコマンドが入力されると、グローバル変数をスレッドプライベート変数として宣言して、第1のスレッド210用の第1のプライベート変数212および第2のスレッド220用の第2のプライベート変数222を生成する。MPIスレッドベースプログラム実行中にスレッドへの変換プロセスをサポートするべく特定したライブラリを用いてMPIスレッドベースプログラムの実行バージョンをビルドする。特定したライブラリのコードは、MPIスレッドベースプログラムが実行されている場合に、新しいプロセスのインスタンス化を特定すると共に、これに応じて、MPIスレッドベースプログラム用の対応するスレッドをインスタンス化させる。 (もっと読む)


【課題】同一の不連続配列に別々の作業配列を割り当てることをなくし、高速に実行できるオブジェクトプログラムを生成するコンパイル装置等を提供する。
【解決手段】本実施形態に係るコンパイル装置10は、ソースファイル21から中間コード26を生成する中間コード生成手段31を備え、この中間コード生成手段31は、ソースファイル21に含まれる配列宣言についての情報を抽出する型宣言解析部41と、抽出された配列宣言によって定義される配列が連続か不連続かを判断し、配列が不連続である場合にその配列に含まれる実引数を抽出する不連続配列実引数検出部45と、実引数と同一の実引数がソースファイル内で既に使われていればこれを検出する同一変数名検出部46と、ソースファイルから中間コードを生成し、その際に検出された同一の実引数には同一の作業配列を割り当てる中間コード割当部49とを備える。 (もっと読む)


【課題】再帰呼び出しを用いないで多次元配列を展開することを可能にする。
【解決手段】ワークファイルA,Bは単なるバッファである。奇数回処理ループを実行しそのときの中間出力先を偶数回処理ループに入力(ワークファイルA経由)し、偶数回処理ループを実行しそのときの中間出力先を奇数回処理ループに入力(ワークファイルB経由)する。ループの奇偶は未展開の多次元配列の次元数で判断する。 (もっと読む)


1 - 20 / 45