Nothing Special   »   [go: up one dir, main page]

JPH0355634A - キャッシュ再ロード・オーバーヘッドを減少させる方法およびコンピュータ・システム - Google Patents

キャッシュ再ロード・オーバーヘッドを減少させる方法およびコンピュータ・システム

Info

Publication number
JPH0355634A
JPH0355634A JP2118853A JP11885390A JPH0355634A JP H0355634 A JPH0355634 A JP H0355634A JP 2118853 A JP2118853 A JP 2118853A JP 11885390 A JP11885390 A JP 11885390A JP H0355634 A JPH0355634 A JP H0355634A
Authority
JP
Japan
Prior art keywords
time
interrupt
quantum
task
context exchange
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
Application number
JP2118853A
Other languages
English (en)
Other versions
JPH065515B2 (ja
Inventor
Harold S Stone
ハロルド・スチユアート・ストーン
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0355634A publication Critical patent/JPH0355634A/ja
Publication of JPH065515B2 publication Critical patent/JPH065515B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/128Replacement control using replacement algorithms adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0842Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は一般に高性能データ処理システムにおけるキャ
ッシュ・メモリ管理に関し、具体的には、プログラムの
フットプリント(足跡)が小さくなるとき、コンテキス
トを交換するための交換点を適時に選択することにより
、コンテキスト交換点でのキャッシュ・ミスのコストを
減少させる手法に関する。
B.従来の技術 多重プログラム式または多重タスク処理コンピュータ・
システムでは、1台のプロセッサが、そのプロセッサで
走行するプログラムまたはタスクを定期的に変更するこ
とにより、多くの異なるプログラム間で共用される。キ
ャッシュ・メモリを使用するコンピュータ・システムで
は、1つのプログラム′またはタスクが中断されて別の
ものが開始される時点で、キャッシュは、中断されたプ
ログラムに属する多くの行(ライン)を含んでいる。こ
れらの行は次のプログラムが走行するとき、キャッシュ
から取り除かれ、中断されたプログラムがプロセッサの
制御を再び得るとき、それを再ロードしなければならな
くなる。これらの行を再ロードするためのオーパヘッド
は、キャッシュ再ロード・トランジエントと呼ばれる。
D.F.ティボー(Thiebaut)とH.S.スト
ーン(Stone )は、論文「キャッシュのフットプ
リント(Footprintsin the Cach
e) J s  A C MTransaction 
on Computings  V o 1 .5% 
 N o .4 (1987年11月)、p1).30
5−329に、この問題についての彼らの研究を報告し
、様々なケース・スタディで彼らが確認したトランジエ
ントのサイズを計算するためのモデルを提案している。
そのトランジエントのサイズは、プログラムのフットプ
リントのサイズ、すなわちプログラムがキャッシェ中に
もつ活動行の数に関係している。
できるだけ変更を小さくすることによってコンテキスト
交換のコストを減らしたり、あるいは他の方法でコンテ
キスト交換のオーバヘッドを減らすことが従来技術で知
られている。ただし、従来技術では、交換要求が出され
たときにコンテキスト交換を行なわなければならないと
仮定している。
米国特許第4422145号明細書は、将来のデータ要
求に関する知識を利用して、バッファ・メモリ内のペー
ジのプールを管理することを記載している。その方法で
は、この知識を使って、将来出される可能性が最も大き
い要求を迅速に検索できるパッファ・プールに保持する
。この発明は、ページをタスクに割り振る問題を解決す
ることを目的とするものである。
米国特許第4483424号明細書は、上記の特許第4
422145号の発明に類似した発明を記載しているが
、細部で異なっている。この発明では、タスク挙動を測
定して、キャッシュ・メモリ・ミスの数を減少させるに
はメモリを個々のタスクにどら割り振ればよいかを決定
する。しかし、キャッシュ・メモリに対する要求は、受
信された順序で処理される。
米国特許第4484274号明細書は、割込みが発生し
たとき、あるプロセスの状態のどの部分を実際にセーブ
する必要があるかを識別する処理手順を記載している。
すなわち、ある割込みが処理されるものとすると、この
処理手順は、できるだけセーブする個所を少なくしよう
とする。米国特許第4382278号明細書では、作業
空間を切り替えることにより、コンテキスト交換オーバ
・ヘッドを減らす方法を教示している。これによって、
コンテキスト交換時の作業の量が減少する。
T.G.ラング(Lang) は、IBMテクニカノレ
・ディスクロージャ・ブルテン、1986年7月、p.
947で、コンテキストをセーブするプロセスに関連す
るオーパヘッドを減少させることにより、コンテキスト
交換の速度を高める手段を記載ている。
C.発明が解決しようとする課題 本発明の目的は、プログラムが中断可能となる時を注意
深く選定することにより、キャッシュ再ロード・トラン
ジエントのオーバーヘッドを減少させる方法を提供する
ことにある。
本発明の他の目的は、現タスクのフットプリントが小さ
いときにすなわちキャッシュにストアされている行数が
少ないときにコンテキスト交換を実施する方法を備えた
、多重タスク処理コンピュータ・システムを提供するこ
とである。
D.課題を解決するための手段 本発明によれば、多重プログラミングまたは多重タスク
処理環境で走行するプログラムの中断を、中断されるプ
ログラムまたはタスクのフットプリントが比較的小さい
ときに行なわせる。フットプリントが小さくなるのは、
そのプログラムが異なる動作段階に移動したため、ある
プロセスがキャッシュ内のデータまたは命令記憶域を解
放するときである。具体的には、本発明は、小フットプ
リント点で発生するように準備された割込み、及びこウ
した点がいつ発生するかを検出する手段に関するもので
ある。
本発明は、上記のものを含めて他の従来技術のシステム
でも、またそれらのシステムなしでも実施でき、多重プ
ログラム式または多重タスク処理コンピュータ・システ
ムの動作をさらに向上させることができる。本発明は、
上記の特許第4422145号の発明が、コンテキスト
交換のコストを減少させるために要求を据え置くという
考えを含んでいない点で、その発明とは異なっている。
要求は、プロセッサに提示された順に処理され、メモリ
管理は、受け取った要求及び将来予期される要求の結果
として実行される。上記の特許第4483424号の発
明は、ミスの数を減らすためにこうした要求を据え置い
たり順序を変えたりしない。上記の発明は、メモリ資源
に対する要求のシーケンスに応答してメモリ資源を管理
するが、本発明では、低コストで処理できるようになる
まで要求を据え置く。また、上記の特許第448427
4号、第4382278号、ラングの論文はどれも、本
発明の基本概念であるコンテキスト交換をいつ行なうか
に関するものではない。
すなわち、現況技術では、コンテキスト交換が開始され
るのは、プログラムがその割り振られた時間量子を越え
るとき、またはプログラミングされた待機もしくは入出
力動作に達したとき、あるいは他の同様の理由による。
本発明では、2つの時間がそれに関連している点で通常
の量子時間切れ割込みとは異なる、コンテキスト交換割
込みを組み込む。最初の時間は、コンテキスト交換が準
備される時を告げる最小時間である。この最小時間が経
過するまで、割込みは通知できない。最小時間の後、コ
ンテキスト交換割込みが準備され、プログラム・フット
プリントのサイズが減少したことを示す信号を受け取っ
たとき、それが通知される。
コンテキスト交換に関連する第2の時間は最大時間であ
る。最大時間に達するまでにコンテキスト交換割込みが
通知されない場合、その時点でコンテキスト交換割込み
が通知される。すなわち、コンテキスト交換割込みは、
プログラムが、余り長く走行できないようにする点で量
子時間切れ割込みに似ているが、また将来のオーバヘッ
ドが下がるようなときにプログラムを交換する傾向があ
る。
E.実施例 汎用コンピュータは、通常オペレーティング・システム
と呼ばれる実行制御プログラムの制御下で走行すると言
われる。オペレーティング・システムとは、コンビエー
夕のハードウェアを制御する、ソフトウェア、ファーム
ウェア、マイクロコードまたはこれら3つの組合せで実
施されるプログラムである。オペレーティング●システ
ムは、コンピュータ上で走行するアブリケーシロン・プ
ログラムまたはタスクからの呼出しに応答して、データ
を表示画面に書き込み、データをディスク記憶HI!に
記憶し、データをディスク記憶装置から検索し、リポー
トを印刷する。アプリケーシ式冫・プログラムまたはタ
スクは、オペレーティング・システム上で走行すると言
われる。本明細書では、プログラムとタスクは、同じ意
味で使用し、アブリケーシーン・プログラムを意味する
ものとする。
本発明は、H.ローり冫(Lorin)及びM.M.デ
ィテル(Deitel )の著書「オペレーティング・
システム(Operatfng System) J 
、アジソン・ウェズリー出版社(Addison−Ve
sley Publishing Co.)、1981
年刊、!)!).81−88の第3.6節「多重プログ
ラミング●システム(Multiprogra+u+−
ing Syste鵬s) J s及びハーヴエイ(H
arvey) M.ディテル(Deitel )の著書
「オペレーティング・システム入門(An Intro
duction to OperatingSyste
m) J 、アジソン・ウェズリー出版社、1984年
刊、pp.155−174の第7章「実記憶装置(Re
al Storage) Jに一般的に記載された形式
の多重ブログラ【ング・システムの分野におけるもので
ある。本明細書では、多重プログラミングと多重タスク
処理は同じ意味に使用する。
本発明の好ましい実施例では、多重プログラムまたは多
重タスク処理コンピュータ・システムの通常動作モード
は、実行制御プログラムまたはオペレティング・システ
ムの制御下で動作するものと仮定する。オペレーティン
グ・システムは実行可能タスクのリストを維持する。オ
ペレーテイング・システムは、実行可能タスクのリスト
から直ちに実行すべきタスクを選択し、選択したタスク
に最大実行時間を割り振り、その時点で将来発生する割
込みを投定する。この最大時間を時間量子と呼ぶ。次に
、オペレーティング・システムは選択したタスクの実行
を開始する。選択されたタスクは、それに割り振られた
時間量子の間実行され、その時間が経過すると、割振り
が発生してタスクが中断される。次に、オペレーティン
グ・システムは、実行可能タスクのリストから別のタス
クを選択し、上記のステップを繰り返す。
場合によっては、現在走行中のプログラムまたはタスク
は、その時間量子を完了することができない。そうなる
のは、以下のいずれかである。
1.プログラムまたはタスク自体が、入出力動作の完了
など外部事象の発生を待たなければならない。外部事象
が発生すると、そのタスクを直ちに中断し、実行可能タ
スクのリストから取り除かなければならない。その時点
で、オペレーテイング・システムは、異なるプログラム
またはタスクを開始しなければならない。
2.入出力動作の完了など外部事象が認識される。
外部事象があると、オペレーティング・システムが、入
出力プログラムを開始し、実行の準備ができていて外部
事象を待っているタスクのリストを変更することが必要
となる。オペレーテイング・システムは、割込みを受け
たタスクに戻ってその時間量子を完了させるか、または
新しいタスクを選択することができる。
3.外部事象が認識された場合、及び実行中のタスクが
一時的に中断された場合、中断時間中にその累積実行時
間は増加しない。
上記の環境の説明は、本発明を支援する可能な環境の代
表例であるが、本発明は、この特定の環境のみに限られ
るものではない。本発明の目的は、時間量子の終りに割
込みを据え置き、コンテキスト交換のコストが比較的低
くなりそうな時にそれを行なわせることである。本発明
は、上記の通常動作を以下のように修正する。
オペレーティング・システムは、時間量子ヲ選択したタ
スクに割り振るとき、時間量子の最も早い終り及び時間
量子の最も遅い終りの2つの時間で時間量子を表す。量
子終り割込みは、最も早い時間より前には発生できず、
その時点より前に実行プログラムによってトリガされな
い限り、最も遅い時間に発生することが保証される。オ
ペレーティング・システムは、選択したタスクの実行を
開始し、選択したタスクは、それに割り振られた最小時
間量子の間実行され、それが終了した時点で量子終り割
込みが準備される。量子終り割込みが準備されている間
、タスクは実行を継続する。
そのタスクが量子終り割込みをトリガする命令を実行す
る場合は、その割込みは直ちに処理される。
タスクが割り振られた最大時間の間実行される前に量子
終り割込みがトリガされない場合、量子終り割込みがト
リガされる。量子終り割込みがどのようにしてトリガさ
れようと、オペレーテイング・システムは、その割込み
を通常の量子終り割込みとして処理する。実行中のタス
クが準備された量子終り割込みをもっている間に外部事
象が割込みをトリガする場合、そのタスクは、その量子
の終りに達したものとして扱われ、保留中の割込みが除
去される。
図面、特に第1図を参照すると、本発明による据置き可
能割込みを実施するための機構が示されている。この機
構は、3つのレジスタと2つの加算器を含む。それらの
レジスタは、経過時間レジスタ101最小量子レジスタ
20、及び最大量子レジスタ30である。第1の加算器
40は、最小量子と経過時間の値の差をとる。経過時間
が最小量子時間を越えた場合は、結果の符号は負となる
負の符号のとき、割込みが下記のように準備される。同
様に、第2の加算器50は最大量子と経過時間の値の差
をとる。この加算の結果が負の場合、下記のように割込
みが通知される。
第1図と従来技術の違いは、従来の経過時間に基づく割
込みの実施態様では、最大時間レジスタ30、経過時間
レジスタ101及び加算器50Lか使用しないことであ
る。割込みは、加算器の結果の符号を検査することによ
って通知される。この従来技術は、割込みを準備する手
段を含んでいないので、第1図に示される最小時間レジ
スタ20と加算器40の使用を教示していない。
第2図は、タスクを開始する前にオペレーティング・シ
ステムがとるステップを示す。オペレーティング・シス
テムは、機能ブロック60でタスクの経過時間をゼロに
初期設定し、第2図の機能ブロック70と80で最小及
び最大量子時間を初期設定する。第2図の最終ステップ
は、90で示すようにタスクを開始することである。機
能ブロック80170、80で実行される動作の順序は
重要ではない。オペレーティング・システムは、こうし
たタスク間に散在するオペレーティング・システム依存
タスクを実行することもできる。従来技術で教示されて
ない第2図の態様は、ブロック70での最小量子時間の
設定である。
第3図は、割込みを準備するのに必要な論理回路を示す
。走行中のタスクの経過時間が第3図のクロックで示さ
れる。クロックは機能ブロック100で示すよろに進め
られる。ブロック100の実行の間隔はシステムによっ
て異なり、システム中の最も速いクロック速度で実行す
る必要はない。
クロックが進む度に、判断ブロック110で検査を行な
って、量子時間割込みの準備ができているかどうか判定
する。準備ができている場合、第4図の判断ブロック1
50に進んで、下記のような次の検査を行なう。準備が
できていない場合、判断ブロック120で経過時間の現
在値を最小量子時間と比較する。現在値が最小量子時間
を越える場合、機能ブロック130に示すように量子時
間割込みが準備される。
第4図は、量子時間割込みがどのようにして通知される
かを示す。この図は従来技術を反映したものである。判
断ブロック150で、現在経過時間を最大量子時間と比
較する。現在値が最大量子時間を越える場合、機能ブロ
ック160に示すように割込みが通知される。
第5図は、プログラムが、準備された割込みをどのよう
に発生させるかを示す。プログラムは、コンテキスト交
換オーバヘッドが他の場所で生じるオーバヘッドよりも
局所的に小さいプログラムに入れられた特殊命令を実行
する。この命令の実行を機能ブロック200に戻す。こ
の命令の実行により、判断ブロック210に示すように
割込みの状態が検査される。割込みが準備されている場
合、機能ブロック220で割込みを通知する。割込みの
通知は、量子の終りを意味する。オペレーティング・シ
ステムは、時間量子の終りに応じて、従来技術で利用可
能な技法を使ってタスクを中断することにより、割込み
に応答する。割込みが準備できていない場合、この特殊
命令は、割込み命令を取り出して解釈するのに必要な時
間を利用すること以外、プログラム実行に影響を及ぼさ
ない。
第6図は、外部事象が量子終り端割込みをどのようにト
リガするかを示す。機能ブロック300で、外部事象に
よって割込みが通知される。これが発生すると、判断ブ
ロック310で量子時間割込みを検査する。それも準備
されている場合、機能ブロック320で、それも割込み
として通知されるので、少なくとも2つの割込みが現在
に保留中となる。それも準備できていない場合は、機能
ブロック330で、走行中のタスクの経過時間の記録専
用のレジスタが動作不能になる。この時点で、オペレー
ティング●システムは走行中のタスクを中断し、外部事
象に関連するタスクのスケジュールを立てる。
従来技術で教示されてな′い第6図の重要な新しい考え
は、外部事象が、通常なら後まで行なわれないコンテキ
スト交換を強制する好機となることである。第2のタス
クが走行できるよウに元のタスクが短時間中断されるの
で、第2のタスクは)それ自体をキャッシュ・メモリに
ロードして、第1のタスクに関連する状態の一部を除去
する。これにより、第1のタスクに関連する状態のサイ
ズが局所的に縮小される。第2タスクの走行が完了する
と、オペレーティング・システムは通常、第1のタスク
に戻る。というのは、その時間量子が終わっていないか
らである。しかし、量子割込みが準備されている場合は
、交換される状態のサイズが比較的小さいどの時点でも
割込みを行なうことができる。そうなるのは、割込みタ
スクの処理の終りである。第6図の機能ブロック320
で示すように、量子時間割込みを通知することにより、
オペレーティング●システムは、割込みタスクを処理し
た後に元のタスクに戻らず、そのためコンテキスト交換
が局所的に好ましい時点で行なわれる。
すなわち、準備された量子時間割込みは、命令の実行ま
たは外部事象割込みの通知によって通知できる。一般に
、準備された割込みは、局所的に小さいコンテキストを
生成することが認められているどんな条件下でも通知さ
れる。どんな条件でそうなるかは、コンピュータ・シス
テムの特徴によって変わる。
広義に述べると、本発明は、(1)プログラム・フット
プリントが小さいときに発生する傾向にあるコンテキス
ト交換のための割込みと、(2)フットプリントのサイ
ズが減少する点で割込みをトリガする手段から構成され
る。コンテキスト交換割込みは、以下の事象でトリガさ
れる。
1.基本ブロックからの出口。
2.ファイルのクローズ(バッファ記憶機構が戻される
とき)及び 3,記憶機構が他の目的で使用されるために戻されると
きの他の同様の検出可能な事象。
これらの事象は、コンパイラによってコードに入れられ
た特殊割込み命令によって通知される。
特殊命令の働きは、コンテキスト交換割込みが準備され
ている場合に割込みを引き起こすこと、及びそうでない
場合は影響を及ぼさないことである。
割込みを生成する簡単でうまいやり方は、サブルーチン
・リターン及び割込みリターンが実行されるときに割込
みを発生させることである。どの場合にも、プログラム
またはプロセスから出る最中であり、その状態が近い将
来に必要となる可能性は小さい。より効果的な方法は、
アルゴリズム分析を使って、サブルーチンが、大きな直
線コードでありあるいは1つまたは複数のネスティング
・レベルのループをもち、かつサブルーチンが触れる可
能性のあるデータ・セルと命令セルの総数がキャッシュ
・サイズと同程度であるといつ特徴をもつ、サブルーチ
ンからの出口がいつ発生するかを決定することである。
この特徴が検出されると、そのサブルーチンは、キャッ
シュの大きな部分を占有し、その部分を以後のコードは
必要としない。
あるサブルーチンの実行が終了する前にコンテキスト交
換割込みが発生する場合、サブルーチンから出る前に、
そのサブルーチンをキャッシュに再ロードしなければな
らない。サブルーチンから出るのを待ってコンテキスト
交換割込みが行なわれる場合、キャッシュ再ロード過渡
は回避される。
上記の特性をもつサブルーチンを識別することにより、
コンパイラはこうした各ルーチンの出口の前にコンテキ
スト交換割込みトリガを挿入することができる。本発明
は、割込みをトリガするどの手段を使っても性能の向上
をもたらす。性能の向上は、割込みがフットプリントの
サイズの最大の縮小を伴う場合に大きくなる傾向にある
本発明を1つの好ましい実施例に照らして説明したが、
当業者には周知の通り、本発明は、特許請求の範囲の精
神及び範囲に含まれる類似の修正を施して実施すること
ができる。
【図面の簡単な説明】
第1図は、据置き可能割込みを制御する手段を図示する
構成図である。 第2図は、据置き可能割込みを設定する手段を図示する
構成図である。 第3図は、据置き可能割込みが準備されたときに起こる
事象を示す流れ図である。 第4図は、最大量子時間に達したために据置き可能割込
みが通知されるときに起こる事象を示す流れ図である。 第5図は、割込みを認識すべき点に達したときに、準備
された据置き可能割込みをプログラムがどうトリガする
かを示す流れ図である。 第6図は、あるタスクが、その据置き可能割込みが準備
される前に割込みを受けた場合に、据置き可能割込みを
動作不能にするために取られる処置を示す流れ図である
。 10・・・・経過時間レジスタ、20・・・・最小量子
レジスタ、30・・・・最大量子レジスタ、40,50
・・・・加算器。

Claims (2)

    【特許請求の範囲】
  1. (1)現在実行されているプログラムに関連してキャッ
    シュにストアされているラインの数が少ないときに発生
    する傾向のあるコンテキスト交換用の割込みを生成する
    ステップと、 プログラム・フットプリントのサイズが減少する点でそ
    の割込みをトリガするステップと、をコンピュータ・オ
    ペレーティング・システムによって実行する多重プログ
    ラム式コンピュータ・システムにおけるコンテキスト交
    換によるキャッシュ再ロード・オーバーヘッドを減少さ
    せる方法。
  2. (2)多重プログラム式コンピュータ・システム上で1
    つのタスクを走行する時間に対応する値を記憶する経過
    時間レジスタ手段と、 前記タスクに割り当てられた最小量子時間に対応する値
    を記憶する最小量子時間レジスタ手段と、前記タスクに
    割り当てられた最大量子時間に対応する値を記憶する最
    大量子時間レジスタ手段と、前記経過時間レジスタ手段
    及び前記最小量子時間レジスタ及び最大量子時間レジス
    タ手段に接続された、経過時間を最小量子時間と比較し
    、かつ経過時間を最大量子時間と比較するための比較論
    理手段と、 を含む多重プログラム式コンピュータ・システムにおけ
    るコンテキスト交換によるキャッシュ再ロード・オーバ
    ーヘッドを減少させる装置。
JP2118853A 1989-05-10 1990-05-10 キャッシュ再ロード・オーバーヘッドを減少させる方法およびコンピュータ・システム Expired - Lifetime JPH065515B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/349,621 US5065310A (en) 1989-05-10 1989-05-10 Reducing cache-reload transient at a context swap
US349621 1989-05-10

Publications (2)

Publication Number Publication Date
JPH0355634A true JPH0355634A (ja) 1991-03-11
JPH065515B2 JPH065515B2 (ja) 1994-01-19

Family

ID=23373248

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2118853A Expired - Lifetime JPH065515B2 (ja) 1989-05-10 1990-05-10 キャッシュ再ロード・オーバーヘッドを減少させる方法およびコンピュータ・システム

Country Status (3)

Country Link
US (1) US5065310A (ja)
EP (1) EP0396863A3 (ja)
JP (1) JPH065515B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE193607T1 (de) * 1993-11-26 2000-06-15 Siemens Ag Recheneinheit mit mehreren ausführbaren tasks
EP0986007A3 (en) * 1993-12-01 2001-11-07 Marathon Technologies Corporation Method of isolating I/O requests
WO1995032466A1 (en) * 1994-05-19 1995-11-30 Vlsi Technology, Inc. Flexible register mapping scheme
TW405090B (en) * 1997-04-04 2000-09-11 Ibm Predictive cache loading by program address discontinuity history
JP2006146678A (ja) * 2004-11-22 2006-06-08 Hitachi Ltd 情報処理装置におけるプログラム制御方法、情報処理装置、及びプログラム
US8260996B2 (en) * 2009-04-24 2012-09-04 Empire Technology Development Llc Interrupt optimization for multiprocessors
US8321614B2 (en) * 2009-04-24 2012-11-27 Empire Technology Development Llc Dynamic scheduling interrupt controller for multiprocessors
US8234431B2 (en) * 2009-10-13 2012-07-31 Empire Technology Development Llc Interrupt masking for multi-core processors
JP6730587B2 (ja) * 2016-06-13 2020-07-29 富士通株式会社 キャッシュミス推定プログラム、キャッシュミス推定方法及び情報処理装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4425616A (en) * 1979-11-06 1984-01-10 Frederick Electronic Corporation High-speed time share processor
US4382278A (en) * 1980-06-05 1983-05-03 Texas Instruments Incorporated Hierarchial memory system with microcommand memory and pointer register mapping virtual CPU registers in workspace cache #4 and main memory cache
US4463424A (en) * 1981-02-19 1984-07-31 International Business Machines Corporation Method for dynamically allocating LRU/MRU managed memory among concurrent sequential processes
US4422145A (en) * 1981-10-26 1983-12-20 International Business Machines Corporation Thrashing reduction in demand accessing of a data base through an LRU paging buffer pool
US4484274A (en) * 1982-09-07 1984-11-20 At&T Bell Laboratories Computer system with improved process switch routine
JPS59225463A (ja) * 1983-06-06 1984-12-18 Fuji Electric Co Ltd プログラムの実行待ち時間監視方式
JPH06100981B2 (ja) * 1983-12-28 1994-12-12 株式会社日立製作所 記憶階層制御方式
US4794521A (en) * 1985-07-22 1988-12-27 Alliant Computer Systems Corporation Digital computer with cache capable of concurrently handling multiple accesses from parallel processors

Also Published As

Publication number Publication date
JPH065515B2 (ja) 1994-01-19
EP0396863A3 (en) 1992-05-27
EP0396863A2 (en) 1990-11-14
US5065310A (en) 1991-11-12

Similar Documents

Publication Publication Date Title
US6021425A (en) System and method for optimizing dispatch latency of tasks in a data processing system
US7290261B2 (en) Method and logical apparatus for rename register reallocation in a simultaneous multi-threaded (SMT) processor
US5386561A (en) Method of integrated system load control through dynamic time-slicing in a virtual storage environment
KR102333341B1 (ko) 마이크로프로세서 시스템에서의 예외 처리
US6233599B1 (en) Apparatus and method for retrofitting multi-threaded operations on a computer by partitioning and overlapping registers
EP1839146B1 (en) Mechanism to schedule threads on os-sequestered without operating system intervention
US5274813A (en) Operation system having a migration function which moves saved data associated with an interrupted process to a different save area
JP5385347B2 (ja) メイン・メモリのフリー・メモリ量を拡大する方法およびコンピュータ
US9158574B2 (en) Handling interrupts in data processing
US20090049451A1 (en) Multi-threaded processing with reduced context switching
JPH03147047A (ja) 入出力チャネル経路上の負荷を均衡させる方法及びコンピュータ・システム
GB2348306A (en) Batch processing of tasks in data processing systems
JP2009093665A (ja) マルチスレッド・プロセッサ性能を制御する装置及び方法
JP2007200288A (ja) 実行スレッドをグループ化するためのシステム及び方法
KR101901587B1 (ko) 연성 실시간 운영체제의 실시간성을 확보하는 방법 및 장치
US7739685B2 (en) Decoupling a central processing unit from its tasks
WO2007035126A1 (fr) Procede d'organisation d'ordinateurs multiprocesseurs
JPH0355634A (ja) キャッシュ再ロード・オーバーヘッドを減少させる方法およびコンピュータ・システム
US7500244B2 (en) Adaptive algorithm for selecting a virtualization algorithm in virtual machine environments
US20050066305A1 (en) Method and machine for efficient simulation of digital hardware within a software development environment
JPH06243112A (ja) マルチプロセッサ装置
JP2005521937A (ja) コンピュータオペレーティングシステムにおけるコンテキスト切り替え方法及び装置
KR102003721B1 (ko) Gpu 커널 트랜잭션화 방법 및 컴퓨팅 장치
JPH0916409A (ja) マイクロコンピュータ
EP0223463B1 (en) Multiprocessor data processing system