JP2017027296A - 性能評価方法、性能評価プログラム及び情報処理装置 - Google Patents
性能評価方法、性能評価プログラム及び情報処理装置 Download PDFInfo
- Publication number
- JP2017027296A JP2017027296A JP2015144167A JP2015144167A JP2017027296A JP 2017027296 A JP2017027296 A JP 2017027296A JP 2015144167 A JP2015144167 A JP 2015144167A JP 2015144167 A JP2015144167 A JP 2015144167A JP 2017027296 A JP2017027296 A JP 2017027296A
- Authority
- JP
- Japan
- Prior art keywords
- memory space
- queue
- memory
- cache
- hit rate
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/122—Replacement control using replacement algorithms of the least frequently used [LFU] type, e.g. with individual count value
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1021—Hit rate improvement
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【課題】キャッシュ用のメモリ空間を分割して使用するキャッシュシステムの性能指標を高精度で算出する。【解決手段】本情報処理装置は、複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、複数のデータブロックに対するアクセスの頻度とに基づき、複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出する第1算出部と、複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出されたパラメータから、第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する第2算出部とを有する。【選択図】図11
Description
本発明は、キャッシュシステムの性能評価技術に関する。
インネットワークキャッシング(In-Network Caching)やICN(Information Centric Networking)の普及に伴い、キャッシュシステムの性能を解析する技術が注目されている。
或る文献は、LRU(Least Recently Used)を使用したキャッシュシステムのメモリ条件に対してキャッシュヒット率を解析的に推定する技術(以下、Che Approximationと呼ぶ)を開示する。LRUとは、最後にアクセスされてから経過した時間が最も長いデータから廃棄するというアルゴリズムであり、一般的なキャッシュシステムにおいて広く使用されている。
一方で、ウェブサイト或いはインターネット動画サービス等のコンテンツの中には、極めて低頻度でしかアクセスされない「One-Timers」と呼ばれるコンテンツが多く存在する。そして、LRUを使用すると「One-Timers」が一時的にメモリ内に保持されてしまうため、キャッシュ性能(具体的には、キャッシュヒット率)が低下するという問題がある。
このような問題に対しては、メモリ空間を「One-Timers」用の空間とそれ以外のコンテンツ用の空間とに分割する2Qアルゴリズム及びARC(Adaptive Replacement Caching)アルゴリズムが有効であると言われている。しかし、2Qアルゴリズム及びARCアルゴリズムは、複数のメモリ空間を管理する複雑なアルゴリズムであるため、単一のキャッシュメモリを管理するアルゴリズムであるLRUと比較してキャッシュ性能を解析的に評価することが難しい。
C. Fricker, P. Robert, J. Roberts,"A Versatile and Accurate Approximation for LRU Cache Performance",[online],2012年2月,the 24th International Teletraffic Congress (ITC),[平成27年6月18日],インターネット<URL:http://arxiv.org/pdf/1202.3974.pdf>
T. Johnson, D. Shasha,"2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm",[online],1994年,Proceedings of the 20th International Conference on Very Large Data Bases,[平成27年6月18日],インターネット<URL:http://www.vldb.org/conf/1994/P439.PDF>
N. Megiddo, D. S. Modha,"ARC: A Self-Tuning, Low Overhead Replacement Cache",[online],2003年4月,The USENIX Association,[平成27年6月18日],インターネット<URL:https://www.usenix.org/legacy/event/fast03/tech/full_papers/megiddo/megiddo.pdf>
従って、本発明の目的は、1つの側面では、キャッシュ用のメモリ空間を分割して使用するキャッシュシステムの性能指標を高精度で算出するための技術を提供することである。
本発明に係る情報処理装置は、(A)複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、複数のデータブロックに対するアクセスの頻度とに基づき、複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出する第1算出部と、(B)複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出されたパラメータから、第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する第2算出部とを有する。
1つの側面では、キャッシュ用のメモリ空間を分割して使用するキャッシュシステムの性能指標を高精度で算出できるようになる。
[実施の形態1]
2Qには、Simplified 2Qと呼ばれるアルゴリズムとFull 2Qと呼ばれるアルゴリズムとが有る。第1の実施の形態においては、Simplified 2Qを採用したキャッシュシステムの性能評価を行うことを考える。
2Qには、Simplified 2Qと呼ばれるアルゴリズムとFull 2Qと呼ばれるアルゴリズムとが有る。第1の実施の形態においては、Simplified 2Qを採用したキャッシュシステムの性能評価を行うことを考える。
まず、参考までに、Che Approximationについて説明する。Che Approximationにおいては、アクセス頻度がλ(n)であり且つサイズがθ(n)であるコンテンツnに対するキャッシュヒット率が以下の式によって算出される。
ここで、τCはキュー内にコンテンツが留まる時間を表す特性時間パラメータであり、以下の式を満たすように算出される。
これに対し、Simplified 2Qにおいてはメモリ空間が2つに分割される。図1を用いて、Simplified 2Qについて説明する。図1において長方形の図形はメモリ空間を表す。Simplified 2Qにおいては、或るコンテンツへのアクセスが1回目である場合、コンテンツは保存されずアクセスの履歴(以下、ポインタと呼ぶ)がA1キューに保存される。そして、或るコンテンツへのアクセスが2回目であるか否かがA1キューを利用して判定され、アクセスが2回目である場合にはコンテンツがAmキューに保存される。Amキュー内のコンテンツはLRUに従って整理される。
ここで、A1キューのサイズをCA1とする。ポインタの個数によってA1キューのサイズを表現するので単位は「個」である。AmキューのサイズをCAmとする。単位は「バイト」である。すると、アクセス頻度がλ(n)(回数/秒)であり且つサイズがθ(n)(バイト)であるコンテンツnに対するキャッシュヒット率HS2Q(n)は、以下の式によって算出される。
ここで、HAm(n)はAmキューにおけるコンテンツnのキャッシュヒット率である。
A1キューの確率方程式は、A1キューの特性時間パラメータτA1を使用して以下のように表される。
ここで、HA1(n)はA1キューにおけるコンテンツnのポインタについてのヒット率である。λA1(n)はA1キューにおいてコンテンツnのポインタがアクセスされる確率を表し、以下ではA1キューのアクセス分配確率と呼ぶ。
Amキューの確率方程式は、Amキューの特性時間パラメータτAmを使用して以下のように表される。
ここで、λAm(n)はAmキューにおいてコンテンツnがアクセスされる確率を表し、以下ではAmキューのアクセス分配確率と呼ぶ。
特性時間パラメータτA1は、以下のキュー長条件を満たす。
特性時間パラメータτAmは、以下のキュー長条件を満たす。
以上のモデル式には、複数のキューの間の相互影響を表現する項が含まれているので、適切な値を算出することができる。以下では、以上のモデル式を使用してキャッシュシステムの性能評価を行う方法について具体的に説明する。
図2に、本実施の形態におけるシステムの概要を示す。本実施の形態の主要な処理を実行する性能評価装置1は、ネットワークを介してキャッシュ装置3に接続される。キャッシュ装置3は、キャッシュ格納部30を有する。キャッシュ装置3は、ネットワークを介して1又は複数のサーバ7及び1又は複数の要求元装置5に接続される。本実施の形態においては、コンテンツのコピーとしてキャッシュ装置3に格納されるデータのことをキャッシュと呼ぶ。
要求元装置5は、サーバ7が管理するコンテンツを要求するコンテンツ要求をサーバ7宛に送信するが、コンテンツのキャッシュがキャッシュ格納部30に格納されている場合は、キャッシュ装置3はキャッシュを要求元装置5に対して送信する。これにより、要求元装置5に対する応答を完了するまでの時間を短縮できる。コンテンツは、例えば動画のデータであるが、このようなデータに限られるわけではない。
キャッシュ格納部30はキャッシュ装置3のメモリ上に設けられる。第1の実施の形態においては、キャッシュ格納部30はA1キュー用のメモリ空間とAmキュー用のメモリ空間とに分割される。
図3に、A1キューに格納されるデータの一例を示す。図3の例では、コンテンツのポインタであるID(IDentifier)が格納される。
図4に、Amキューに格納されるデータの一例を示す。図4の例では、コンテンツのポインタであるIDと、コンテンツのキャッシュとが格納される。
図5に、性能評価装置1の機能ブロック図を示す。性能評価装置1は、受付部101と、メモリ条件格納部102と、コンテンツ条件格納部103と、アルゴリズム選択データ格納部104と、モデル式格納部105と、算出部106と、結果格納部110と、出力部111とを有する。算出部106は、第1算出部107と、第2算出部108と、判定部109とを有する。
受付部101は、性能評価装置1の操作者からデータの入力を受け付け、メモリ条件格納部102、コンテンツ条件格納部103、アルゴリズム選択データ格納部104、及びモデル式格納部105に格納する。算出部106は、メモリ条件格納部102に格納されたデータ、コンテンツ条件格納部103に格納されたデータ、アルゴリズム選択データ格納部104に格納されたデータ、及びモデル式格納部105に格納されたデータに基づき処理を実行し、処理結果を結果格納部110に書き込む。出力部111は、結果格納部110に格納されたデータを出力する(例えば、ディスプレイなどの表示装置に出力或いはプリンタに出力する)。
図6に、メモリ条件格納部102に格納されるデータの一例を示す。図6の例では、トータルのサイズと、A1キューのサイズと、Amキューのサイズとが格納される。
図7に、コンテンツ条件格納部103に格納されるデータの一例を示す。図7の例では、コンテンツIDと、そのコンテンツIDを有するコンテンツのサイズとが格納される。
図8に、アルゴリズム選択データ格納部104に格納されるデータの一例を示す。図8の例では、キャッシュ装置3が採用するアルゴリズムを示すデータが格納される。
図9に、モデル式格納部105に格納されるデータの一例を示す。図9の例では、アルゴリズム名と、モデル式とが格納される。第1の実施の形態においてはキャッシュ装置3はSimplified 2Qを採用するのでモデル式1が使用されるが、その他のアルゴリズムが採用される場合にはその他のモデル式が使用される。
図10に、結果格納部110のデータ構造の一例を示す。結果格納部110は、A1キュー及びAmキューについて、キュー名を格納する領域と、アクセス分配確率を格納する領域と、キャッシュヒット率を格納する領域と、特性時間パラメータを格納する領域と、探索を終了できるか否かを表す情報を格納する領域とを有する。
次に、図11乃至図12Bを用いて、性能評価装置1が実行する処理を詳細に説明する。
まず、性能評価装置1の受付部101は、メモリ条件、コンテンツ条件、アルゴリズム選択データ、及びモデル式の入力を受け付ける(図11:ステップS1)。受付部101は、メモリ条件をメモリ条件格納部102に格納し、コンテンツ条件をコンテンツ条件格納部103に格納し、アルゴリズム選択データをアルゴリズム選択データ格納部104に格納し、モデル式をモデル式格納部105に格納する。ここでは説明を簡単にするため同時に入力を受け付けるものとして説明したが、このような例に限られるわけではない。例えば、モデル式1乃至3の入力を予め受け付けてモデル式格納部105に格納しておき、実際に性能評価をする時にメモリ条件、コンテンツ条件、及びアルゴリズム選択データの入力を受け付ける場合もある。
算出部106は、メモリ条件をメモリ条件格納部102から読み出し(ステップS2)、コンテンツ条件をコンテンツ条件格納部103から読み出す(ステップS3)。また、算出部106は、アルゴリズム選択データ格納部104に格納されたアルゴリズム選択データに従い、モデル式格納部105からモデル式を読み出す(ステップS5)。第1の実施の形態においてはSimplified 2Qを採用したキャッシュ装置3を対象とするので、Simplified 2Qに対応するモデル式が読み出される。
第1算出部107は、キュー毎に特性時間パラメータを算出し(ステップS7)、算出された特性時間パラメータを結果格納部110に書き込む。なお、ステップS7の処理を初めて実行する場合、特性時間パラメータの初期値を結果格納部110に書き込む。ステップS7の処理を実行するのが初めてではない場合には、前回の特性時間パラメータに値を加えることで新たに特性時間パラメータが算出される。算出方法は任意であるが、後で算出方法の一例を示す。
第2算出部108は、ステップS5において読み出されたモデル式(具体的には、数式(2)及び(3))に従い、キュー毎にアクセス分配確率及びキャッシュヒット率を算出し(ステップS9)、算出されたアクセス分配確率及びキャッシュヒット率を結果格納部110に書き込む。
判定部109は、結果格納部110に書き込まれたデータに基づき、ステップS5において読み出されたモデル式に含まれる各キュー長条件(具体的には、数式(4)及び(5))が満たされるか判定する(ステップS11)。なお、満たされると判定されたキュー長条件については、探索を終了できるか否かを表す情報が「yes」に設定される。
各キュー長条件が満たされない場合(ステップS11:Noルート)、ステップS7の処理に戻る。一方、各キュー長条件が満たされる場合(ステップS11:Yesルート)、判定部109は、結果格納部110に格納されたデータと数式(1)とに基づき、各コンテンツのキャッシュヒット率(第1の実施の形態においてはHS2Q(n))を算出する(ステップS13)。そして、判定部109は、算出されたキャッシュヒット率を結果格納部110に格納する。そして、出力部111は、結果格納部110に格納された各コンテンツのキャッシュヒット率を出力する。そして処理を終了する。
図12A及び図12Bに、ステップS5乃至S13の処理を実行するためのプログラムの一例を示す。図12Aはプログラムの前半部分を表し、図12Bはプログラムの後半部分を表す。ステップS7においては、図12Bに示したようにτA1←τA1+α(CA1−BA1)及びτAm←τAm+α(CAm−BAm)によって特性時間パラメータが算出される。但し、このような算出方法に限られるわけではない。
次に、第1の実施の形態の方法の有効性を、コンテンツへのアクセスをシミュレートした場合に計測されたキャッシュヒット率と第1の実施の形態の方法によって算出されたキャッシュヒット率とを比較することによって示す。ここでは、Simplified 2QにおけるA1キューのサイズを50(個)とし、Amキューのサイズを1000(バイト)とする。また、各コンテンツのサイズを1(バイト)とし、総コンテンツ数を10000(個)とする。コンテンツに対するアクセス頻度(回数/秒)の分布を、以下に示すジップ則によって定義する。
図13に、シミュレーションの結果と第1の実施の形態の方法による算出結果とを示す。図13においては、ジップ則のパラメータαが0.8、1.0、1.2、及び1.5の場合についてそれぞれ結果が示されている。縦軸はオブジェクト(すなわち、コンテンツ)のキャッシュヒット率を表し、横軸はオブジェクトのIDを表す。IDの値はアクセス頻度の高さの順位を表し、値が小さいほど頻繁にアクセスされるオブジェクトである。
白抜きの実線は第1の実施の形態のモデル式によるキャッシュヒット率を表す。三角の図形はSimplified 2Qを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率を表す。Simplified 2QにはLRUと比較して中程度のアクセス頻度を有するウォームオブジェクトのキャッシュヒット率が高くなるという特徴があるが、第1の実施の形態の方法によれば、Simplified 2Qを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率を高精度に予測することができている。なお、参考までに図13にはLRUを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率が丸の図形で示されており、白抜きの破線はChe Approximationによるキャッシュヒット率である。Che Approximationによれば、LRUを採用したシステムのキャッシュヒット率であれば高精度に予測することができる。
よって、本実施の形態によれば、シミュレーション或いは実機によって事前に検証を行わなくても済むようになり、短時間で高精度の性能評価を行うことができるようになる。
[実施の形態2]
第2の実施の形態においては、Full 2Qを採用したキャッシュシステムの性能評価を行うことを考える。
第2の実施の形態においては、Full 2Qを採用したキャッシュシステムの性能評価を行うことを考える。
図14を用いて、Full 2Qについて説明する。Full 2Qにおいては、メモリ空間は3つに分割される。1回目のアクセスに関しては、ポインタのみを保存するA1outキューとコンテンツを保存するA1inキューとが使用される。或るコンテンツへのアクセスが1回目である場合、A1inキューの最後尾にコンテンツが保存される。A1inキュー内のコンテンツ量が閾値を超えた場合には最も古いコンテンツ(すなわち、A1inキューの先頭のコンテンツ)が削除され、A1outキューにポインタが保存される。A1outキューによって2回目のアクセスであると判定された場合には、コンテンツがAmキューに保存される。Amキュー内のコンテンツは、LRUに従って整理される。
ここで、A1inキューのサイズをCA1inとする。単位は「バイト」である。A1outキューのサイズをCA1outとする。ポインタの個数によってA1outキューのサイズを表現するので単位は「個」である。AmキューのサイズをCAmとする。単位は「バイト」である。すると、アクセス頻度がλ(n)(回数/秒)であり且つサイズがθ(n)(バイト)であるコンテンツnに対するキャッシュヒット率HF2Q(n)は、以下の式によって算出される。
ここで、HA1in(n)はA1inキューにおけるコンテンツnのキャッシュヒット率であり、HAm(n)はAmキューにおけるコンテンツnのキャッシュヒット率である。
A1inキューの確率方程式は、A1inキューの特性時間パラメータτA1inを使用して以下のように表される。
ここで、λA1in(n)はA1inキューにおいてコンテンツnがアクセスされる確率を表し、以下ではA1inキューのアクセス分配確率と呼ぶ。HA1out(n)はA1outキューにおけるコンテンツnのポインタについてのヒット率である。
A1outキューの確率方程式は、A1outキューの特性時間パラメータτA1outを使用して以下のように表される。
ここで、λA1out(n)はA1outキューにおいてコンテンツnのポインタがアクセスされる確率を表し、以下ではA1outキューのアクセス分配確率と呼ぶ。
Amキューの確率方程式は、Amキューの特性時間パラメータτAmを使用して以下のように表される。
ここで、λAm(n)はAmキューにおいてコンテンツnがアクセスされる確率を表し、以下ではAmキューのアクセス分配確率と呼ぶ。
特性時間パラメータτA1inは、以下のキュー長条件を満たす。
特性時間パラメータτA1outは、以下のキュー長条件を満たす。
特性時間パラメータτAmは、以下のキュー長条件を満たす。
よって、第2の実施の形態におけるキャッシュ格納部30は、A1inキュー用のメモリ空間と、A1outキュー用のメモリ空間と、Amキュー用のメモリ空間とに分割される。A1outキューに格納されるデータは図3に示したデータと同様であり、A1inキューに格納されるデータ及びAmキューに格納されるデータは図4に示したデータと同様である。
図15に、第2の実施の形態におけるメモリ条件格納部102に格納されるデータの一例を示す。図15の例では、トータルのサイズと、A1inキューのサイズと、A1outキューのサイズと、Amキューのサイズとが格納される。
図16に、第2の実施の形態における結果格納部110のデータ構造の一例を示す。結果格納部110は、A1inキュー、A1outキュー及びAmキューについて、キュー名を格納する領域と、アクセス分配確率を格納する領域と、キャッシュヒット率を格納する領域と、特性時間パラメータを格納する領域と、探索を終了できるか否かを表す情報を格納する領域とを有する。
第2の実施の形態の性能評価装置1は、基本的には第1の実施の形態の性能評価装置1と同様の処理を実行する。但し、第2の実施の形態においてはアルゴリズム選択データが「Full 2Q」を表すので、ステップS5乃至S13の処理を実行するためのプログラムは図17A及び図17Bに示すようになる。図17Aはプログラムの前半部分を表し、図17Bはプログラムの後半部分を表す。
図18に、シミュレーションの結果と第2の実施の形態の方法による算出結果とを示す。シミュレーションにおいては、Full 2QにおけるA1inキューのサイズを10(バイト)とし、A1outキューのサイズを500(個)とし、Amキューのサイズを1000(バイト)とする。また、各コンテンツのサイズを1(バイト)とし、総コンテンツ数を10000(個)とする。図18においては、ジップ則のパラメータαが0.8、1.0、1.2、及び1.5の場合についてそれぞれ結果が示されている。縦軸はオブジェクト(すなわち、コンテンツ)のキャッシュヒット率を表し、横軸はオブジェクトのIDを表す。IDの値はアクセス頻度の高さの順位を表し、値が小さいほど頻繁にアクセスされるオブジェクトである。
白抜きの実線は第2の実施の形態のモデル式によるキャッシュヒット率を表す。三角の図形はFull 2Qを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率を表す。Full 2QにはLRUと比較して中程度のアクセス頻度を有するウォームオブジェクトのキャッシュヒット率が高くなるという特徴があるが、第2の実施の形態の方法によれば、Full 2Qを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率を高精度に予測することができている。なお、参考までに図18にはLRUを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率が丸の図形で示されており、白抜きの破線はChe Approximationによるキャッシュヒット率である。Che Approximationによれば、LRUを採用したシステムのキャッシュヒット率であれば高精度に予測することができる。
[実施の形態3]
図19を用いて、ARCについて説明する。ARCにおいては、メモリ空間が4つに分割される。1回目のアクセスに関しては、ポインタのみを保存するB1キューとコンテンツを保存するT1キューとが使用される。2回目のアクセスに関しては、ポインタのみを保存するB2キューとコンテンツを保存するT2キューとが使用される。1回目のアクセスに関しては、T1キューの最後尾にコンテンツが保存される。T1キュー内のコンテンツ量が閾値を超えた場合には最も古いコンテンツ(すなわち、T1キューの先頭のコンテンツ)が削除され、B1キューにポインタが保存される。2回目のアクセスに関しては、T2キューの最後尾にコンテンツが保存される。T2キュー内のコンテンツ量が閾値を超えた場合には最も古いコンテンツ(すなわち、T2キューの先頭のコンテンツ)が削除され、B2キューにポインタが保存される。T2キュー内のコンテンツは、LRUに従って整理される。なお、ARCは2Qとは異なり、各キューのサイズがアクセスパターンに応じて動的に変更される。
図19を用いて、ARCについて説明する。ARCにおいては、メモリ空間が4つに分割される。1回目のアクセスに関しては、ポインタのみを保存するB1キューとコンテンツを保存するT1キューとが使用される。2回目のアクセスに関しては、ポインタのみを保存するB2キューとコンテンツを保存するT2キューとが使用される。1回目のアクセスに関しては、T1キューの最後尾にコンテンツが保存される。T1キュー内のコンテンツ量が閾値を超えた場合には最も古いコンテンツ(すなわち、T1キューの先頭のコンテンツ)が削除され、B1キューにポインタが保存される。2回目のアクセスに関しては、T2キューの最後尾にコンテンツが保存される。T2キュー内のコンテンツ量が閾値を超えた場合には最も古いコンテンツ(すなわち、T2キューの先頭のコンテンツ)が削除され、B2キューにポインタが保存される。T2キュー内のコンテンツは、LRUに従って整理される。なお、ARCは2Qとは異なり、各キューのサイズがアクセスパターンに応じて動的に変更される。
但し、図20に示すように、実際にARCを採用したキャッシュシステムにおいてはT1キューのサイズ及びB2キューのサイズは全体のキューサイズ(ここでは1000とする)の1パーセント程度であり、変動幅が無視できるほど小さいことが確認された。図20においては、横軸が時間(秒)を表し、縦軸がT1キューのサイズ及びB2キューのサイズpを表す。
そこで第3の実施の形態においては、T1キューのサイズ及びB2キューのサイズを固定値として取り扱うFRC(Fixed Replacement Caching)(p=1)を採用する。但し、計算を簡単にするため、コンテンツの個数がそのままデータ量をも表すものとする。この場合、T1キューのサイズをp(バイト)とすると、B1キューのサイズはC−p(個)であり、T2キューのサイズはC−p(バイト)であり、B2キューのサイズはp(個)である。
すると、アクセス頻度がλ(n)(回数/秒)であるコンテンツnに対するキャッシュヒット率HFRC(n)は、以下の式によって算出される。
ここで、HT1(n)はT1キューでのコンテンツnのキャッシュヒット率であり、HT2(n)はT2キューでのコンテンツnのキャッシュヒット率である。本明細書においては、書式上の問題から、下付きのT1及びT2をT1及びT2と表す。B1及びB2についても同様とする。
B1キューの確率方程式は、B1キューの特性時間パラメータτB1を使用して以下のように表される。
ここで、λB1(n)はB1キューにおいてコンテンツnのポインタがアクセスされる確率を表し、以下ではB1キューのアクセス分配確率と呼ぶ。HB2(n)はB2キューでのコンテンツnのポインタについてのヒット率である。
T1キューの確率方程式は、T1キューの特性時間パラメータτT1を使用して以下のように表される。
ここで、λT1(n)はT1キューにおいてコンテンツnがアクセスされる確率を表し、以下ではT1キューのアクセス分配確率と呼ぶ。HB1(n)はB1キューでのコンテンツnのポインタについてのヒット率である。
T2キューの確率方程式は、T2キューの特性時間パラメータτT2を使用して以下のように表される。
ここで、λT2(n)はT2キューにおいてコンテンツnがアクセスされる確率を表し、以下ではT2キューのアクセス分配確率と呼ぶ。
B2キューの確率方程式は、B2キューの特性時間パラメータτB1を使用して以下のように表される。
ここで、λB2(n)はB2キューにおいてコンテンツnのポインタがアクセスされる確率を表し、以下ではB2キューのアクセス分配確率と呼ぶ。
特性時間パラメータτB1は、以下のキュー長条件を満たす。
特性時間パラメータτT1は、以下のキュー長条件を満たす。
特性時間パラメータτT2は、以下のキュー長条件を満たす。
特性時間パラメータτB2は、以下のキュー長条件を満たす。
よって、第3の実施の形態におけるキャッシュ格納部30は、B1キュー用のメモリ空間と、T1キュー用のメモリ空間と、T2キュー用のメモリ空間と、B2キュー用のメモリ空間とに分割される。B1に格納されるデータ及びB2キューに格納されるデータは図3に示したデータと同様であり、T1キューに格納されるデータ及びT2キューに格納されるデータは図4に示したデータと同様である。
図21に、第3の実施の形態におけるメモリ条件格納部102に格納されるデータの一例を示す。図21の例では、トータルのサイズと、B1キューのサイズと、T1キューのサイズと、T2キューのサイズと、B2キューのサイズとが格納される。
図22に、第3の実施の形態における結果格納部110のデータ構造の一例を示す。結果格納部110は、B1キュー、T1キュー、T2キュー及びB2キューについて、キュー名を格納する領域と、アクセス分配確率を格納する領域と、キャッシュヒット率を格納する領域と、特性時間パラメータを格納する領域と、探索を終了できるか否かを表す情報を格納する領域とを有する。
第3の実施の形態の性能評価装置1は、基本的には第1の実施の形態の性能評価装置1と同様の処理を実行する。但し、第3の実施の形態においてはアルゴリズム選択データが「ARC」を表すので、ステップS5乃至S13の処理を実行するためのプログラムは図23A及び図23Bに示すようになる。図23Aはプログラムの前半部分を表し、図23Bはプログラムの後半部分を表す。
図24に、シミュレーションの結果と第3の実施の形態の方法による算出結果とを示す。シミュレーションにおいては、p=1且つC=1000とする。また、各コンテンツのサイズを1(バイト)とし、総コンテンツ数を10000(個)とする。図24においては、ジップ則のパラメータαが0.8、1.0、1.2、及び1.5の場合についてそれぞれ結果が示されている。縦軸はオブジェクト(すなわち、コンテンツ)のキャッシュヒット率を表し、横軸はオブジェクトのIDを表す。IDの値はアクセス頻度の高さの順位を表し、値が小さいほど頻繁にアクセスされるオブジェクトである。
白抜きの実線は第3の実施の形態のモデル式によるキャッシュヒット率を表す。三角の図形はARCを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率を表す。ARCにはLRUと比較して中程度のアクセス頻度を有するウォームオブジェクトのキャッシュヒット率が高くなるという特徴があるが、第3の実施の形態の方法によれば、ARCを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率を高精度に予測することができている。なお、参考までに図24にはLRUを採用したシステムのコンテンツアクセスをシミュレートした場合におけるキャッシュヒット率が丸の図形で示されており、白抜きの破線はChe Approximationによるキャッシュヒット率である。Che Approximationによれば、LRUを採用したシステムのキャッシュヒット率であれば高精度に予測することができる。
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した性能評価装置1及びキャッシュ装置3の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
また、上で説明した各テーブルの構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
また、ステップS1においてはユーザからデータの入力を受け付けるようにしているが、ネットワークを介して接続された他の装置からデータを取得するようにしてもよい。
なお、上で述べた性能評価装置1、キャッシュ装置3、要求元装置5、及びサーバ7は、コンピュータ装置であって、図25に示すように、メモリ2501とCPU(Central Processing Unit)2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本発明の実施の形態をまとめると、以下のようになる。
本実施の形態の第1の態様に係る情報処理装置は、(A)複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、複数のデータブロックに対するアクセスの頻度とに基づき、複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出する第1算出部と、(B)複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出されたパラメータから、第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する第2算出部とを有する。
このようにすれば、複数のメモリ空間を使用するアルゴリズムを採用したキャッシュシステムであっても、高精度にキャッシュヒット率を算出できるようになる。なお、第1のメモリ空間の数が複数であってもよい。
また、上で述べた所定の条件は、メモリ空間のサイズについての第1条件と、メモリ空間におけるデータブロックのキャッシュヒット率についての第2条件と、メモリ空間におけるデータブロックに対するアクセスの頻度についての第3条件とを含んでもよい。これにより、パラメータを妥当な値にすることができるようになる。
また、上で述べた第2算出部は、(b1)第1のメモリ空間について算出されたパラメータと、第1のメモリ空間におけるデータブロックに対するアクセスの頻度と、第2条件とから、第1のメモリ空間についてのキャッシュヒット率を算出してもよい。これにより、第1のメモリ空間についてのキャッシュヒット率を妥当な値にすることができる。
また、上で述べた第1条件は、メモリ空間におけるデータブロックに対するアクセスの頻度、又は、メモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのサイズから、メモリ空間のサイズを算出するための第1条件式を含み、第2条件は、メモリ空間におけるデータブロックに対するアクセスの頻度及びパラメータから、メモリ空間におけるデータブロックのキャッシュヒット率を算出するための第2条件式を含み、第3条件は、メモリ空間とは異なるメモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのキャッシュヒット率から、メモリ空間におけるデータブロックに対するアクセスの頻度を算出するための第3条件式を含んでもよい。複数のメモリ空間の相互の影響を考慮できるので、適切なパラメータを算出できるようになる。
また、複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数、及び、複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1であってもよい。これにより、Simplified 2Qを採用するキャッシュシステムのキャッシュヒット率を高精度で算出できるようになる。
また、複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1であってもよい。これにより、Full 2Qを採用するキャッシュシステムのキャッシュヒット率を高精度で算出できるようになる。
また、複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が2であってもよい。これにより、ARCを採用するキャッシュシステムのキャッシュヒット率を高精度で算出できるようになる。
本実施の形態の第2の態様に係る性能評価方法は、(C)複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、複数のデータブロックの数とに基づき、複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出し、(D)複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出されたパラメータから、第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する処理を含む。
なお、上記方法による処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出する第1算出部と、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する第2算出部と、
を有する情報処理装置。
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出する第1算出部と、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する第2算出部と、
を有する情報処理装置。
(付記2)
前記所定の条件は、
前記メモリ空間のサイズについての第1条件と、前記メモリ空間におけるデータブロックのキャッシュヒット率についての第2条件と、前記メモリ空間におけるデータブロックに対するアクセスの頻度についての第3条件とを含む、
付記1記載の情報処理装置。
前記所定の条件は、
前記メモリ空間のサイズについての第1条件と、前記メモリ空間におけるデータブロックのキャッシュヒット率についての第2条件と、前記メモリ空間におけるデータブロックに対するアクセスの頻度についての第3条件とを含む、
付記1記載の情報処理装置。
(付記3)
前記第2算出部は、
前記第1のメモリ空間について算出された前記パラメータと、前記第1のメモリ空間におけるデータブロックに対するアクセスの頻度と、前記第2条件とから、前記第1のメモリ空間についてのキャッシュヒット率を算出する、
付記2記載の情報処理装置。
前記第2算出部は、
前記第1のメモリ空間について算出された前記パラメータと、前記第1のメモリ空間におけるデータブロックに対するアクセスの頻度と、前記第2条件とから、前記第1のメモリ空間についてのキャッシュヒット率を算出する、
付記2記載の情報処理装置。
(付記4)
前記第1条件は、前記メモリ空間におけるデータブロックに対するアクセスの頻度、又は、前記メモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのサイズから、前記メモリ空間のサイズを算出するための第1条件式を含み、
前記第2条件は、前記メモリ空間におけるデータブロックに対するアクセスの頻度及び前記パラメータから、前記メモリ空間におけるデータブロックのキャッシュヒット率を算出するための第2条件式を含み、
前記第3条件は、前記メモリ空間とは異なるメモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのキャッシュヒット率から、前記メモリ空間におけるデータブロックに対するアクセスの頻度を算出するための第3条件式を含む、
付記2又は3記載の情報処理装置。
前記第1条件は、前記メモリ空間におけるデータブロックに対するアクセスの頻度、又は、前記メモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのサイズから、前記メモリ空間のサイズを算出するための第1条件式を含み、
前記第2条件は、前記メモリ空間におけるデータブロックに対するアクセスの頻度及び前記パラメータから、前記メモリ空間におけるデータブロックのキャッシュヒット率を算出するための第2条件式を含み、
前記第3条件は、前記メモリ空間とは異なるメモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのキャッシュヒット率から、前記メモリ空間におけるデータブロックに対するアクセスの頻度を算出するための第3条件式を含む、
付記2又は3記載の情報処理装置。
(付記5)
前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数、及び、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1である、
付記1乃至4のいずれか1つ記載の情報処理装置。
前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数、及び、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1である、
付記1乃至4のいずれか1つ記載の情報処理装置。
(付記6)
前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1である、
付記1乃至4のいずれか1つ記載の情報処理装置。
前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1である、
付記1乃至4のいずれか1つ記載の情報処理装置。
(付記7)
前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が2である、
付記1乃至4のいずれか1つ記載の情報処理装置。
前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が2である、
付記1乃至4のいずれか1つ記載の情報処理装置。
(付記8)
コンピュータが、
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出し、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する、
処理を実行する性能評価方法。
コンピュータが、
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出し、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する、
処理を実行する性能評価方法。
(付記9)
コンピュータに、
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出し、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する、
処理を実行させる性能評価プログラム。
コンピュータに、
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出し、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する、
処理を実行させる性能評価プログラム。
1 性能評価装置 3 キャッシュ装置
5 要求元装置 7 サーバ
101 受付部 102 メモリ条件格納部
103 コンテンツ条件格納部 104 アルゴリズム選択データ格納部
105 モデル式格納部 106 算出部
107 第1算出部 108 第2算出部
109 判定部 110 結果格納部
111 出力部 30 キャッシュ格納部
5 要求元装置 7 サーバ
101 受付部 102 メモリ条件格納部
103 コンテンツ条件格納部 104 アルゴリズム選択データ格納部
105 モデル式格納部 106 算出部
107 第1算出部 108 第2算出部
109 判定部 110 結果格納部
111 出力部 30 キャッシュ格納部
Claims (9)
- 複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出する第1算出部と、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する第2算出部と、
を有する情報処理装置。 - 前記所定の条件は、
前記メモリ空間のサイズについての第1条件と、前記メモリ空間におけるデータブロックのキャッシュヒット率についての第2条件と、前記メモリ空間におけるデータブロックに対するアクセスの頻度についての第3条件とを含む、
請求項1記載の情報処理装置。 - 前記第2算出部は、
前記第1のメモリ空間について算出された前記パラメータと、前記第1のメモリ空間におけるデータブロックに対するアクセスの頻度と、前記第2条件とから、前記第1のメモリ空間についてのキャッシュヒット率を算出する、
請求項2記載の情報処理装置。 - 前記第1条件は、前記メモリ空間におけるデータブロックに対するアクセスの頻度、又は、前記メモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのサイズから、前記メモリ空間のサイズを算出するための第1条件式を含み、
前記第2条件は、前記メモリ空間におけるデータブロックに対するアクセスの頻度及び前記パラメータから、前記メモリ空間におけるデータブロックのキャッシュヒット率を算出するための第2条件式を含み、
前記第3条件は、前記メモリ空間とは異なるメモリ空間におけるデータブロックに対するアクセスの頻度及び当該データブロックのキャッシュヒット率から、前記メモリ空間におけるデータブロックに対するアクセスの頻度を算出するための第3条件式を含む、
請求項2又は3記載の情報処理装置。 - 前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数、及び、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1である、
請求項1乃至4のいずれか1つ記載の情報処理装置。 - 前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が1である、
請求項1乃至4のいずれか1つ記載の情報処理装置。 - 前記複数のメモリ空間のうちデータブロックのキャッシュを格納するメモリ空間の数が2であり、前記複数のメモリ空間のうちデータブロックの識別子を格納するメモリ空間の数が2である、
請求項1乃至4のいずれか1つ記載の情報処理装置。 - コンピュータが、
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出し、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する、
処理を実行する性能評価方法。 - コンピュータに、
複数のデータブロックのサイズと、各々がデータブロックのキャッシュ又はデータブロックの識別情報を格納する複数のメモリ空間のサイズと、前記複数のデータブロックに対するアクセスの頻度とに基づき、前記複数のメモリ空間の各々について、当該メモリ空間に留まる時間を表すパラメータであって所定の条件を満たすパラメータを算出し、
前記複数のメモリ空間のうちデータブロックのキャッシュを格納する第1のメモリ空間について算出された前記パラメータから、前記第1のメモリ空間についてのキャッシュヒット率を算出し、算出された当該キャッシュヒット率の総和を算出する、
処理を実行させる性能評価プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015144167A JP2017027296A (ja) | 2015-07-21 | 2015-07-21 | 性能評価方法、性能評価プログラム及び情報処理装置 |
US15/213,525 US20170024328A1 (en) | 2015-07-21 | 2016-07-19 | Information processing apparatus, information processing method, and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015144167A JP2017027296A (ja) | 2015-07-21 | 2015-07-21 | 性能評価方法、性能評価プログラム及び情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017027296A true JP2017027296A (ja) | 2017-02-02 |
Family
ID=57836130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015144167A Pending JP2017027296A (ja) | 2015-07-21 | 2015-07-21 | 性能評価方法、性能評価プログラム及び情報処理装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20170024328A1 (ja) |
JP (1) | JP2017027296A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388550A (zh) * | 2018-11-08 | 2019-02-26 | 浪潮电子信息产业股份有限公司 | 一种缓存命中率确定方法、装置、设备及可读存储介质 |
CN111857587A (zh) * | 2020-07-15 | 2020-10-30 | 济南浪潮数据技术有限公司 | 一种在存储系统缓存装置中基于磁道地址的命中检测方法 |
WO2021166249A1 (ja) * | 2020-02-21 | 2021-08-26 | 日本電信電話株式会社 | 通信装置、通信方法及びプログラム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3101549B1 (en) * | 2015-06-04 | 2018-09-26 | Tata Consultancy Services Limited | Estimating cache size for cache routers in information centric networks |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6493810B1 (en) * | 2000-04-28 | 2002-12-10 | Microsoft Corporation | Method and system for allocating cache memory for a network database service |
US7730531B2 (en) * | 2005-04-15 | 2010-06-01 | Microsoft Corporation | System and method for detection of artificially generated system load |
US7512591B2 (en) * | 2005-12-09 | 2009-03-31 | International Business Machines Corporation | System and method to improve processing time of databases by cache optimization |
-
2015
- 2015-07-21 JP JP2015144167A patent/JP2017027296A/ja active Pending
-
2016
- 2016-07-19 US US15/213,525 patent/US20170024328A1/en not_active Abandoned
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388550A (zh) * | 2018-11-08 | 2019-02-26 | 浪潮电子信息产业股份有限公司 | 一种缓存命中率确定方法、装置、设备及可读存储介质 |
CN109388550B (zh) * | 2018-11-08 | 2022-03-22 | 浪潮电子信息产业股份有限公司 | 一种缓存命中率确定方法、装置、设备及可读存储介质 |
WO2021166249A1 (ja) * | 2020-02-21 | 2021-08-26 | 日本電信電話株式会社 | 通信装置、通信方法及びプログラム |
CN111857587A (zh) * | 2020-07-15 | 2020-10-30 | 济南浪潮数据技术有限公司 | 一种在存储系统缓存装置中基于磁道地址的命中检测方法 |
Also Published As
Publication number | Publication date |
---|---|
US20170024328A1 (en) | 2017-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6889289B2 (ja) | 計測手段が組み込まれたソフトウェアを分析するためのデータストリーム処理言語 | |
US8112546B2 (en) | Routing users to receive online services based on online behavior | |
US11410063B2 (en) | Self-intelligent improvement in predictive data models | |
US9383944B2 (en) | Data access analysis using entropy rate | |
US9477601B2 (en) | Apparatus and method for determining a sector division ratio of a shared cache memory | |
US9342455B2 (en) | Cache prefetching based on non-sequential lagging cache affinity | |
TWI606340B (zh) | 用於資料快取之方法、電腦可讀取儲存媒體及系統 | |
JP2017027296A (ja) | 性能評価方法、性能評価プログラム及び情報処理装置 | |
CN110609796A (zh) | 用于存储系统中预取的方法、设备和计算机程序产品 | |
US20150106827A1 (en) | Rpc acceleration based on previously memorized flows | |
JP5674954B2 (ja) | ストリームデータの異常検知方法および装置 | |
CN110162272B (zh) | 一种内存计算缓存管理方法及装置 | |
JP6189266B2 (ja) | データ処理装置、データ処理方法及びデータ処理プログラム | |
EP4137971A1 (en) | Distributed generic cacheability analysis | |
WO2013114911A1 (ja) | リスク評価システム、リスク評価方法、及びプログラム | |
JP2011154487A (ja) | コンテンツ有用性管理システム、方法、及びプログラム | |
US11354129B2 (en) | System and method for predicting latency of a variable-latency instruction | |
KR102020725B1 (ko) | 그래프 스트림에서 비용 모델을 이용한 처리 방법 및 처리 장치 | |
US20200042421A1 (en) | Storage system performance models based on empirical component utilization | |
JP6750248B2 (ja) | 制御装置及び制御方法 | |
US11662921B2 (en) | System and method for managing latency prediction for a storage system | |
CN116244216B (zh) | 缓存控制方法、装置、缓存行结构、电子设备和存储介质 | |
US20160041769A1 (en) | Recording medium storing access control program, access control apparatus, and access control method | |
Tan et al. | Analyzing document-duplication effects on policies for browser and proxy caching | |
CN118069548A (zh) | 一种预取方法、装置、电子设备及可读存储介质 |