JPH08241208A - キャッシュの情報表示システム - Google Patents

キャッシュの情報表示システム

Info

Publication number
JPH08241208A
JPH08241208A JP7045939A JP4593995A JPH08241208A JP H08241208 A JPH08241208 A JP H08241208A JP 7045939 A JP7045939 A JP 7045939A JP 4593995 A JP4593995 A JP 4593995A JP H08241208 A JPH08241208 A JP H08241208A
Authority
JP
Japan
Prior art keywords
cache
loop
function
information
program
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.)
Withdrawn
Application number
JP7045939A
Other languages
English (en)
Inventor
Mariko Sakamoto
真理子 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP7045939A priority Critical patent/JPH08241208A/ja
Publication of JPH08241208A publication Critical patent/JPH08241208A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】高速なキャッシュを持つ計算機に関し、キャッ
シュ最適化のための情報を表示するシステムを提供する
ことを目的とする。 【構成】キャッシュの容量、ウェイ数、ラインの大きさ
を含むキャッシュに関する情報を内部情報として蓄えて
おく蓄積機能11と、原始プログラムよりループを認識
し、そのループにおけるデータのアクセス状況を解析す
る解析機能12と、解析機能12による解析結果を表示
する表示機能16とを有して構成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、高速なキャッシュを持
つ計算機で、プログラムの実行性能を上げるための情報
表示システムに関する。
【0002】ソース・コードの中には、キャッシュを有
効に使うことを考慮して作成した場合とそうでない場合
とで、プログラムの実行時の性能に大きな差が生じるも
のがある。ソース・コードのコーディングの違いによっ
て、プログラム実行時の性能に大きな差が生じることは
周知の通りである。
【0003】本発明では、コンパイラが持っているデー
タフローや制御フローの情報と、キャッシュの容量、ウ
ェイ数やラインの大きさなどの情報とを組み合わせて、
キャッシュを有効に利用する方法を考える。例えば、コ
ンパイラが、キャッシュを有効に利用した方が良いと判
断したのに、キャッシュに関する情報不足のために最適
化を行えなかった部分に対しては、その旨を伝えるメッ
セージを用意する。また、ユーザがソース・コードを変
更したりコンパイラに情報を提供するなりして、キャッ
シュを有効に利用するための支援が行えるように必要な
情報を表示する。
【0004】
【従来の技術】キャッシュというのは、CPUの処理速
度と外部メモリへのアクセスに係るコストの差を吸収す
るために設けられる高速で小容量のメモリのことであ
る。CPUで処理に掛かる時間を速くしても、演算に使
うデータを揃える時間や演算の結果を外部メモリに書き
込む時間がネックとなるから、システム全体の処理速度
を上げることは難しい。
【0005】その解決のために、外部メモリとCPUの
間に用意されたのがキャッシュである。キャッシュは、
CPUチップ上に設けられる場合が多いが、中には、プ
ライマリーとセカンダリーとに分割され、プライマリー
のみがオン・チップとなっているものも存在する。
【0006】キャッシュは外部メモリよりも容量が小さ
いため、キャッシュに置くことができるデータは、外部
メモリにあるデータのごく一部になる。外部メモリにあ
るデータをキャッシュまで持ってくる方式は、幾つか知
られている。データの存在する外部メモリのアドレスを
キーとして、キャッシュにおける格納部分が一意に決ま
るもの(ダイレクトマッピング方式)、メモリアドレス
とは関係なくキャッシュの任意の場所に格納できるもの
(フルアソシアティブ方式)、及びその中間の方法(セ
ットアソシアティブ方式)がある。
【0007】キャッシュ上で一度に読み書きされる単位
を‘ライン’という。ラインの大きさはマシンに依存す
る。例えば、ラインの大きさが16バイトで、参照しよ
うとする変数‘a’の大きさが、4バイトとする。ここ
で、変数‘a’を参照する場合、変数‘a’のみを単独
で外部メモリからキャッシュへ持ってくるのではなく、
‘a’を含む連続した16バイトのデータを固まりとし
て扱う。
【0008】
【発明が解決しようとする課題】従って、キャッシュを
有効に扱うには、キャッシュの容量、ウェイ数(データ
をキャッシュに持ってくる方式に関連する)、ラインの
大きさなどの情報が必要である。具体的に、この情報が
なぜ必要なのかを説明する。
【0009】キャッシュの容量が32kバイト、ウェイ
数が‘4’である4ウェイセットアソシアティブ方式
で、ラインの大きさが16バイトのキャッシュを考え
る。(32,000÷16=)2000なので、キャッ
シュには2000個のラインが存在する。アドレスが連
続する四バイトデータでキャッシュを埋めると(200
0×4=)8000個のデータを格納できる。
【0010】図4にプログラム例を示す。図中、配列は
a〜dの四種類あり、それぞれが2000個の要素を有
しているから、全部で8000個の要素となる。制御変
数iは、‘0,4,8,,196,1,5,,19
7,’と四ずつ増加しておりアドレスを連続的にアクセ
スしないが、配列a〜dの全要素はちょうどキャッシュ
の容量に納まるので、ミスヒットの問題はない。
【0011】図5に、別のプログラム例を示すが、この
プログラムではキャッシュ・ミスを頻繁に引き起こす。
ここで参照される配列a,b,c,dは、それぞれ4,
000個の要素を持つから、このループで使用される全
要素は16,000個になる。これを大きさに換算する
と64kバイトになるから、32kバイトのキャッシュ
の容量よりも大きい。
【0012】ループ中にある処理に注目すると、配列
a,b,c,dの四つが占める領域の大きさはキャッシ
ュの容量の二倍の大きさで、各要素は一回づつアクセス
されている。単純に考えればキャッシュの書き替えは各
アドレス領域ごとに一回といえる。
【0013】実際に一回で済むのか確認してみる。ライ
ンの大きさは16バイトで配列要素のタイプは四バイト
のintegerである。従って、一回のライン操作で
連続する四つの配列要素がひとまとめに扱われる。
【0014】例えば、図5のループ処理における第一回
目の演算では、a[0]〜a[3]の四つの配列要素が
同一のラインに格納される。同様に、b[0]〜b
[3]の四つの配列要素、c[0]〜c[3]の四つの
配列要素、及びd[0]〜d[3]の四つの配列要素が
それぞれ同一のラインに格納される。こうして、第一回
目の演算で四つのラインが使用される。
【0015】ところで、データの扱いとして、常にメモ
リ上で連続したアドレスの要素を順番にアクセスする分
けではない。アクセス順序はプログラムに依存する。図
5の処理を辿ると、制御変数iを四ずつ増加して、四つ
おきに配列要素をアクセスしている。これは、各処理ス
テップではラインの一部のみを参照し、ライン上にある
データが全てアクセスされる前に、書き替えが起こり、
キャッシュ上からデータがなくなることを意味する。よ
って、単純に各アドレス領域ごとに一回の書き替え処理
では済まないことが分かる。
【0016】図5のプログラムをこのままの順序で実行
する場合、参照される各配列a,b,c,dの順序は次
の通りである。まず、j=0の時、‘i=0,4,8,
・・・,1996,2000,・・・,3996’の値
をとり、このiを制御変数にして各配列a,b,c,d
はアクセスされる。配列は四種類あり、一つの要素番号
に対する一つの演算で四個のデータが参照され、四つの
ラインが使用されていく。従って、i=1996の時点
で2000個のデータが参照され、2000個のライン
が占有される。ここで、キャッシュは一杯になる。そし
て、i=2000のとき、2001番目のデータが参照
されるのでミス・ヒットが起きる。
【0017】次にj=1の時、‘i=1,5,9,・・
・,1997,2001,・・・,3997’の順に各
配列は参照される。j=1,i=1のとき、4001番
目のデータが参照されるが、ここでもミス・ヒットが起
こる。4001番目のデータが参照されるときには、2
001番目のデータを格納したラインの書き替えが必要
になる。また、i=1997のとき、6001番目のデ
ータが参照され、ここでもミス・ヒットが起こる。60
01番目のデータが参照されるときには、4001番目
のデータを格納したラインの書き替えが必要になる。
【0018】同様に外側ループの制御変数jがインクリ
メントされるたびに、二回づつのミス・ヒットが生じる
ので、結局最初にキャッシュに持ってくるときも数える
と、各ライン毎に平均で八回の書き替えが必要になる。
因に、図4に示すループ処理でミス・ヒットが生じるの
は、最初の参照の時のみである。
【0019】このように、キャッシュのミス・ヒットが
頻繁に起こると、プログラムの実行性能は大きく低下す
る。それにも拘らず、プログラム開発者は、キャッシュ
に関してどれくらいの最適化効率が上がっているのか、
もしくは足を引っ張っている部分がどれか等の情報を得
ることができない。キャッシュの最適化に積極的に取り
組む情報に不足している。
【0020】従来のコンパイラにもキャッシュの大きさ
とウェイ数を情報として入手し、キャッシュを有効に利
用するための最適化を自動的に行うものが存在する。し
かし、どういうケースに最適化が施されたか、または最
適化の対象であったのに最適化できなかった部分が存在
するか、その理由は何か、どのような工夫をすればより
多くの部分がキャッシュの最適化の恩恵を受けられるか
等の情報を得ることはできない。コンパイラが解析でき
たループのみが自動的に最適化されるに留まっている。
【0021】本発明は、ユーザがよりよい実行性能を得
ようとしているプログラムに関して、キャッシュを有効
に利用する最適化の施されている状況、あるいは最適化
の対象となっているにもかかわらず最適化が行われなか
った部分や、その部分に対して最適化した場合の効果の
見込み等を示せるように、キャッシュ最適化のための情
報を表示するシステムを提供することを目的とする。
【0022】
【課題を解決するための手段】本発明によれば、上述の
目的は、前記特許請求の範囲に記載した手段にて達成さ
れる。
【0023】すなわち、請求項1の発明は、図1にも示
されるように、原始プログラム1を目的プログラム5に
コンパイルするコンパイラ3とデータをやり取りしてプ
ログラムのアルゴリズムを解析すると共に、キャッシュ
の最適化を図るために情報表示を行うシステムであっ
て、キャッシュの容量、ウェイ数、ラインの大きさを含
むキャッシュに関する情報を内部情報として蓄えておく
蓄積機能11と、原始プログラムよりループを認識し、
そのループにおけるデータのアクセス状況を解析する解
析機能12と、解析機能による解析結果を表示する表示
機能16とを有するキャッシュの情報表示システム10
である。
【0024】また、請求項2の発明は、ループからアウ
トプット・ディペンデンシー又はアンチ・ディペンデン
シーの影響を受けない変数を抽出する抽出機能13と、
抽出した変数を所定の注釈と共に表示する表示機能16
とを設けるキャッシュの情報表示システム10である。
【0025】また、請求項3の発明は、ループ内に一つ
又は複数の下層内側ループが存在する場合に、キャッシ
ュを有効に活用できる別のループ構造を求めるループ生
成機能14と、生成したループを所定の注釈と共に表示
する表示機能16とを設けるキャッシュの情報表示シス
テム10である。
【0026】また、請求項4の発明は、ループに最適化
できる箇所があるのに、コンパイラによる書き替えが行
われなかった箇所がある場合に、その箇所を明示して表
示する表示機能16を設けるキャッシュの情報表示シス
テム10である。
【0027】また、請求項5の発明は、解析機能による
解析結果に基づいてループを書き替え、キャッシュの最
適化を図るプログラムの自動編集機能15と、プログラ
ムを書き替えた箇所と共に、書き替えを行わなかった箇
所を明示して表示する表示機能16とを設けるキャッシ
ュの情報表示システム10である。
【0028】例えば、図5に示すループ処理に対して、
蓄積機能11は、キャッシュの容量、ウェイ数、ライン
の大きさとデータの量についての情報を蓄積する。すな
わち、キャッシュの大きさは32kバイト、ウェイ数は
4、ラインの大きさは16バイト、データの量は(40
00×4×4=)64kバイトといった情報を得る。
【0029】メモリアドレスが連続したデータを続けて
アクセスするように最適化を行う際に、これらの情報は
必要無いように思えるが、例えば2ウェイセットアソシ
アティブ方式でキャッシュにデータを持ってくる場合
は、一回の処理で、b[x],c[x]を参照した後
に、同じラインにd[x],a[x]を持ってこなけれ
ばならないので、別の最適化を行った方がよりよい効果
を得られる。なお、ノーライトアロケートの場合は、a
[*]をキャッシュに持ってくる必要は無いが、ここで
はライトアロケートの方式とする。
【0030】解析機能12は、例えば、重なっている
ループ各々の制御変数の働き、アクセスされる配列要
素に関する外側ループの繰り返しによるものも含めた依
存関係、アクセスされる配列の構造とアクセスの順序
を調べる。
【0031】そして、については、制御変数iは、j
から3999までの範囲で四づつ増加する。制御変数j
は‘0’から‘3’までの範囲で一づつ増加する。iは
jに依存する。といった情報を得る。については、処
理式は外側ループの制御変数jに関して不変である。処
理式は内側のループの制御変数iに関して依存関係を持
たない。といった情報を得る。については、配列は全
て一次元で要素の大きさは四バイトである。内側の制御
変数iによりアクセスの順序が決まり、要素は四つおき
にアクセスされる。といったことを解析する。そして、
配列のデータ量がキャッシュの容量を超える程大きいこ
とを判断する。表示機能は、上記のような解析結果を表
示する。
【0032】さて、上記の情報から次のことが言え
る。(イ)処理式は外側のループの制御変数jに依存し
ていず、内側の制御変数iに依存している。制御変数i
は制御変数jに依存しているが、iは四づつ増えて、j
のとる範囲は‘0’から‘3’である。(ロ)・キャッ
シュの大きさがデータの量より小さい。同じ情報の乗っ
ているラインがキャッシュにオン/オフを繰り返す。
【0033】ループ生成機能14は、(イ)より制御変
数iとjをまとめることができ、(ロ)より一つのライ
ンに乗っているデータを連続してアクセスするように処
理の流れを変えた方がよい、といった結論を得ることが
できる。そこで、例えば図6に示すループ構造を生成す
ることができる。このループ処理では、連続したメモリ
アドレスを持つデータがアクセスされるようになってい
る。要素番号‘0’の第一番目のデータに続いて、二番
目、三番目、四番目のデータが順番にアクセスされるの
で、頻繁なミス・ヒットは起こらない。これがキャッシ
ュを有効に利用するための最適化であり、またその効果
である。
【0034】表示機能16は、ユーザの側がキャッシュ
の有効利用を意識できる、あるいはユーザから情報が提
供されればコンパイラが最適化を行えるような場合に、
その情報提供をユーザに促すメッセージなどを表示す
る。
【0035】
【作用】請求項1の発明では、キャッシュに関する情報
を内部情報として蓄えておく蓄積機能と、データのアク
セス状況を解析する解析機能と、解析機能による解析結
果を表示する表示機能とを有しているので、ループ処理
におけるキャッシュの使用態様に関する情報がユーザに
対して提示される。
【0036】請求項2の発明では、ループからアウトプ
ット・ディペンデンシー又はアンチ・ディペンデンシー
の影響を受けない変数を抽出する抽出機能と、抽出した
変数を所定の注釈と共に表示する表示機能とを設けてい
るので、ループを分割して処理した方がよい演算部がユ
ーザに対して提示される。
【0037】請求項3の発明では、キャッシュを有効に
活用できるループ構造を求めるループ生成機能と、生成
したループを所定の注釈と共に表示する表示機能とを設
けているので、キャッシュの有効利用を図れるプログラ
ムがユーザに対して提示される。
【0038】請求項4の発明では、ループに最適化でき
る箇所があるのに、コンパイラによる書き替えが行われ
なかった箇所がある場合に、その箇所を明示して表示す
る表示機能を設けているので、キャッシュの有効利用を
図るために書き替えを行うべき箇所がユーザに対して提
示される。
【0039】請求項5の発明では、キャッシュの最適化
を図るプログラムの自動編集機能と、プログラムを書き
替えた箇所と、書き替えを行わなかった箇所とを明示し
て表示する表示機能とを設けているので、キャッシュの
最適化が施された箇所、あるいは最適化の対象となって
いるにもかかわらず最適化が行われなかった箇所がユー
ザに対して提示される。
【0040】
【実施例】図2は、キャッシュについて最適化できる箇
所を含むプログラム例である。図示するプログラムを入
力してコンパイルした時のメッセージ例を示す。なお、
使用するキャッシュについて、容量は64kバイト、ラ
インの大きさは32バイト、セットアソシアティビティ
ーは‘1’、総ライン数は2,000として説明する。
【0041】メッセージ:(キャッシュサイズ:64
kバイト、ラインの大きさ:32kバイト、セットアソ
シアティビティー:1)、ライン数は2,000であ
る。 メッセージ:行番号389から始まる”forルー
プ”にある配列の大きさは約1,310kバイトある。
キャッシュサイズの64kバイトを越えている。 メッセージ:行番号389から始まる”forルー
プ”で、行番号393にある配列a[i][j]の計算
は、ループ内のその他の計算からoutputdepe
ndency(アウトプット・ディペンデンシー),a
nti dependency(アンチ・ディペンデン
シー)の影響を受けない。配列a[i][j]の計算を
行番号389のループの外側に移動することを勧める。 メッセージ:行番号394及び行番号395の計算を
行うループ、すなわち行番号389から始まるループを
strip mining block size‘5
6’で最適化する。
【0042】また、本発明では、ループ生成機能がメッ
セージの情報に基づいて、配列aの計算をループの外
に出してキャッシュの最適化を施したプログラムを示す
こともできる。例えば、図3に示すようなループ構造を
ユーザに提示することも可能である。
【0043】その他、本発明によって表示されるメッセ
ージを例示すると次のようなものを挙げることができ
る。 ・行番号X番から始まる”forループ”の順番を入れ
替えた。配列Aへのアクセスの順番が変わるので、キャ
ッシュの一ラインに格納されている連続したアドレスの
データを一度に参照できる。 ・行番号Y番から始まるループで参照される配列Bのサ
イズはXXで、キャッシュサイズYYを越えている。こ
の配列Bは最内のループ以外の制御変数の影響を受けな
い。配列Bが別名を持っていなければループ内の他の処
理からのoutput dependencyもant
i dependencyも持たないので新しいループ
を作成して行番号Yループより前に単独で計算すること
で、配列Cのキャッシュ利用をスムーズにすることがで
きる。 ・行番号Zから始まるループは複数の配列を含む。全て
の配列を合わせた大きさはPkバイトであり、キャッシ
ュサイズQkバイトを上回る。このループをstrip
miningで分割した。
【0044】
【発明の効果】以上説明したように、本発明によれば、
キャッシュを有効利用するための情報が表示される。こ
の情報を得ることによってユーザは自らのソースを変更
したり、あるいはユーザが知っている情報をコンパイラ
に提供することが可能になるので、キャッシュのミスヒ
ットにより損なっていた情報処理システムの積極的な性
能改善に寄与することができる。
【図面の簡単な説明】
【図1】本発明の概念図である。
【図2】最適化対象のプログラムを示す図である。
【図3】最適化を施したプログラムを例示する図であ
る。
【図4】プログラムの一例を示す図である。
【図5】キャッシュ・ミスを頻繁に発生させるプログラ
ムの一例を示す図である。
【図6】最適化を施したプログラムを例示する図であ
る。
【符号の説明】
1 原始プログラム 3 コンパイラ 5 目的プログラム 10 情報表示システム 11 蓄積機能 12 解析機能 13 抽出機能 14 生成機能 15 編集機能 16 表示機能

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】原始プログラムを目的プログラムにコンパ
    イルするコンパイラとデータをやり取りしてプログラム
    のアルゴリズムを解析すると共に、キャッシュの最適化
    を図るために情報表示を行うシステムであって、 キャッシュの容量、ウェイ数、ラインの大きさを含むキ
    ャッシュに関する情報を内部情報として蓄えておく蓄積
    機能と、 原始プログラムよりループを認識し、そのループにおけ
    るデータのアクセス状況を解析する解析機能と、 解析機能による解析結果を表示する表示機能とを有する
    ことを特徴とするキャッシュの情報表示システム。
  2. 【請求項2】ループからアウトプット・ディペンデンシ
    ー又はアンチ・ディペンデンシーの影響を受けない変数
    を抽出する抽出機能と、 抽出した変数を所定の注釈と共に表示する表示機能とを
    設ける請求項1記載のキャッシュの情報表示システム。
  3. 【請求項3】ループ内に一つ又は複数の下層内側ループ
    が存在する場合に、キャッシュを有効に活用できる別の
    ループ構造を求めるループ生成機能と、 生成したループを所定の注釈と共に表示する表示機能と
    を設ける請求項1記載のキャッシュの情報表示システ
    ム。
  4. 【請求項4】ループに最適化できる箇所があるのに、コ
    ンパイラによる書き替えが行われなかった箇所がある場
    合に、その箇所を明示して表示する表示機能を設ける請
    求項1〜3いずれか1項に記載のキャッシュの情報表示
    システム。
  5. 【請求項5】解析機能による解析結果に基づいてループ
    を書き替え、キャッシュの最適化を図るプログラムの自
    動編集機能と、 プログラムを書き替えた箇所と共に、書き替えを行わな
    かった箇所を明示して表示する表示機能とを設ける請求
    項1〜3いずれか1項に記載のキャッシュの情報表示シ
    ステム。
JP7045939A 1995-03-06 1995-03-06 キャッシュの情報表示システム Withdrawn JPH08241208A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7045939A JPH08241208A (ja) 1995-03-06 1995-03-06 キャッシュの情報表示システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7045939A JPH08241208A (ja) 1995-03-06 1995-03-06 キャッシュの情報表示システム

Publications (1)

Publication Number Publication Date
JPH08241208A true JPH08241208A (ja) 1996-09-17

Family

ID=12733253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7045939A Withdrawn JPH08241208A (ja) 1995-03-06 1995-03-06 キャッシュの情報表示システム

Country Status (1)

Country Link
JP (1) JPH08241208A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437513B2 (en) 2004-04-30 2008-10-14 Nec Corporation Cache memory with the number of operated ways being changed according to access pattern
JP2010244205A (ja) * 2009-04-02 2010-10-28 Fujitsu Ltd コンパイラプログラムおよびコンパイラ装置
JP2019028540A (ja) * 2017-07-26 2019-02-21 富士通株式会社 情報処理装置、コンパイル方法及びコンパイルプログラム
US10366015B2 (en) 2016-06-13 2019-07-30 Fujitsu Limited Storage medium storing cache miss estimation program, cache miss estimation method, and information processing apparatus

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437513B2 (en) 2004-04-30 2008-10-14 Nec Corporation Cache memory with the number of operated ways being changed according to access pattern
JP2010244205A (ja) * 2009-04-02 2010-10-28 Fujitsu Ltd コンパイラプログラムおよびコンパイラ装置
US10366015B2 (en) 2016-06-13 2019-07-30 Fujitsu Limited Storage medium storing cache miss estimation program, cache miss estimation method, and information processing apparatus
JP2019028540A (ja) * 2017-07-26 2019-02-21 富士通株式会社 情報処理装置、コンパイル方法及びコンパイルプログラム

Similar Documents

Publication Publication Date Title
McFarling Program optimization for instruction caches
US5752038A (en) Method and system for determining an optimal placement order for code portions within a module
US5357618A (en) Cache prefetch and bypass using stride registers
US6584549B2 (en) System and method for prefetching data into a cache based on miss distance
JP4374221B2 (ja) コンピュータシステムおよび記録媒体
McFarling Cache replacement with dynamic exclusion
US5303377A (en) Method for compiling computer instructions for increasing instruction cache efficiency
JP3739491B2 (ja) プリフェッチ命令を用いるハーバードアーキテクチャキャッシュメモリの調和したソフトウェア制御
CN105493042A (zh) 对动态类型化对象数据的并发访问
US8479183B2 (en) Caching run-time variables in optimized code
US6175898B1 (en) Method for prefetching data using a micro-TLB
JP2006509306A (ja) 関係アプリケーションへのデータ処理システム相互参照用セルエンジン
US8136106B2 (en) Learning and cache management in software defined contexts
US6829760B1 (en) Runtime symbol table for computer programs
JP3812258B2 (ja) キャッシュ記憶装置
US7007135B2 (en) Multi-level cache system with simplified miss/replacement control
JP2004151962A (ja) キャッシュメモリ、プロセッサ及びキャッシュ制御方法
US7313787B2 (en) Compiler and method for optimizing object codes for hierarchical memories
JPH08241208A (ja) キャッシュの情報表示システム
EP1573553B1 (en) Selectively changeable line width memory
JP2954178B1 (ja) 可変式キャッシュ方式
Rubin et al. Virtual cache line: A new technique to improve cache exploitation for recursive data structures
Liu et al. Branch-directed and stride-based data cache prefetching
CN100390755C (zh) 含有显式高速缓冲存储器的计算机微体系结构
EP0180077B1 (en) A data processing machine for compiling computer programs

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020507