図面 (/)

技術 キャッシュ制御装置およびキャッシュ制御方法

出願人 日本電気株式会社
発明者 藤原飛日
出願日 2012年7月10日 (8年5ヶ月経過) 出願番号 2012-154505
公開日 2014年1月30日 (6年11ヶ月経過) 公開番号 2014-016863
状態 特許登録済
技術分野 計算機におけるファイル管理 検索装置 階層構造のメモリシステム
主要キーワード 低速記憶装置 登録要否 参照動作 読み書き速度 圧縮対象データ 半導体ディスク 外部情報源 処理時間予測
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2014年1月30日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (7)

課題

2段階の階層構造を持つキャッシュ制御装置において、1次キャッシュ用領域に空き領域がない状況下でさらにキャッシュデータの追加を行うために、1次キャッシュ用領域に空き領域を作る処理時間を短縮する。

解決手段

1次記憶装置20における1次キャッシュ用領域内でデータを圧縮する方式と、1次記憶装置よりもデータの読み出しが低速な2次記憶装置30における2次キャッシュ用領域へデータを移動させる方式のそれぞれの処理時間予測に基づいて、対象データのサイズに最も適した方式を選択する。

概要

背景

現在、コンピュータ上で動作するアプリケーションプログラム(以下、単に「アプリケーション」とも言う。)が必要なデータを取得する場合、そのデータがアクセス速度の低速な記憶装置に存在するときには、そのデータをその低速な記憶装置から取得後、取得したそのデータを、2回目以降の使用に備えて、アクセス速度の高速な記憶装置に一時的に保存するキャッシュ機能が知られている。

言うまでもなく、キャッシュ機能では、アクセス要求されたデータが、高速な記憶装置に既にキャッシュされている場合(これを「キャッシュヒット」と呼ぶ。)に、その効果が発揮できる。

ここで、キャッシュ機能の効果を高めるためには、キャッシュデータを保存する記憶装置(以下、「キャッシュメモリ」と言う。)の記憶容量を増やす方法と、限られた記憶容量のキャッシュメモリでキャッシュヒットの確率を高める方法とが考えられる。

まず、キャッシュメモリの記憶容量を増やす方法であるが、一般に、キャッシュメモリとして使用される高速な記憶装置は、低速な記憶装置に比べて高価であり、費用の面で、キャッシュメモリを単純に増設することには限度がある。

そこで、高価だが高速な1次キャッシュメモリと、安価だが低速な2次キャッシュメモリとを用意し、2次キャッシュメモリを1次キャッシュメモリの下の階層の補助記憶装置として使用する方法がある。

次に、キャッシュヒットの確率を高める方法として、新たなキャッシュすべきデータが発生した場合に、キャッシュメモリの記憶容量一杯までメモリにデータが保存されているときには、保存済みのデータの一部をキャッシュヒットの確率をできるだけ下げないように破棄することで、その新しいデータを保存するための記憶領域を確保する方法が考えられている。

このような技術の一例として、特許文献1には、限られた記憶容量の高速な記憶装置と、大記憶容量だが低速な記憶装置とをネットワーク接続したコンテンツ蓄積システムを構成し、データへのアクセス頻度を基にして記憶先を選択する技術が開示されている。

この技術においては、高速蓄積装置蓄積されているコンテンツ低速記憶装置転送完了後、高速蓄積装置からコンテンツを消去することで、高速蓄積装置の空き領域が確保されている。

また、本技術では、高速蓄積装置に蓄積されているコンテンツの消去の対象をアクセス頻度に基づいて選定することで、ダウンロード要求の少ないコンテンツを高速蓄積装置から削除し、ダウンロード要求の多いコンテンツを高速蓄積装置に残すように構成されている。

これにより、ダウンロード要求の多いコンテンツが高速蓄積装置に恒久的に保存されるので、コスト増を抑えられた高速で大規模なコンテンツ蓄積システムを提供することが可能である。

すなわち、本技術は、上述のキャッシュメモリの記憶容量を増やす方法と、キャッシュヒットの確率を高める方法とを組み合わせて使用した例である。なお、上述の1次キャッシュメモリは本技術の高速蓄積装置に、上述の2次キャッシュメモリは本技術の低速蓄積装置に相当する。

また、キャッシュメモリの記憶容量を増加させる方法として、他にも、限られた記憶容量に保存するデータ量を増加させる方法が知られている。

このような技術の一例として、特許文献2には、階層状に構成された記憶装置システムにおいて、上位装置からキャッシュメモリへのデータ書き込み時にデータを圧縮し、キャッシュメモリから上位装置へのデータ読み出し時にデータを伸長する技術が開示されている。この技術は、データ圧縮することにより、キャッシュメモリに記憶できるデータ容量を増加させ、より大きなキャッシュメモリを設けることと同じ効果を得ようとするものである。すなわち、限られた容量のキャッシュメモリの利用効率を上げて、キャッシュヒット率を高め、演算速度を速くすることが可能である。

概要

2段階の階層構造を持つキャッシュ制御装置において、1次キャッシュ用領域に空き領域がない状況下でさらにキャッシュデータの追加を行うために、1次キャッシュ用領域に空き領域を作る処理時間を短縮する。1次記憶装置20における1次キャッシュ用領域内でデータを圧縮する方式と、1次記憶装置よりもデータの読み出しが低速な2次記憶装置30における2次キャッシュ用領域へデータを移動させる方式のそれぞれの処理時間予測に基づいて、対象データのサイズに最も適した方式を選択する。

目的

これにより、ダウンロード要求の多いコンテンツが高速蓄積装置に恒久的に保存されるので、コスト増を抑えられた高速で大規模なコンテンツ蓄積システムを提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段と、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択手段と、データの各サイズと、前記データ圧縮手段により各サイズのデータを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、各サイズのデータを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値との関係を予め記憶し、前記処理対象データのサイズの場合には、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定手段と、前記判定手段において、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理手段とを備えたことを特徴とするキャッシュ制御装置

請求項2

データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段と、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択手段と、前記データ圧縮手段により前記処理対象データを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、前記処理対象データを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値とを算出し、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定手段と、前記判定手段において、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理手段とを備えたことを特徴とするキャッシュ制御装置。

請求項3

圧縮データを非圧縮データ展開するデータ展開手段を含み、前記圧縮方式予測値は、圧縮された当該データを前記展開手段で展開するのに要する時間を加算した値であることを特徴とする請求項1または2記載のキャッシュ制御装置。

請求項4

前記移動方式予測値は、当該データを前記2次記憶手段から読み出し1次記憶手段に移動させるのに要する時間を加算した値であることを特徴とする請求項1乃至3記載のキャッシュ制御装置。

請求項5

前記データ圧縮手段は複数個設けられ、前記判定手段は、前記処理対象データを複数の前記圧縮手段と一対一対応するよう複数の部分データに分割して、各該部分データを対応する前記データ圧縮手段に圧縮処理させたときに要する処理時間の予測値のうちの最も長いものを前記圧縮方式予測値として使用し、前記判定手段で前記圧縮方式予測値の方が小さいと判定された場合には、前記複数の部分データを対応する複数の前記データ圧縮手段で並行して圧縮処理することを特徴とする請求項1、2または4記載のキャッシュ制御装置。

請求項6

前記データ圧縮手段と圧縮データを非圧縮データに展開するデータ展開手段とが複数個設けられ、前記判定手段は、前記処理対象データを複数の前記圧縮手段と一対一対応するよう複数の第1の部分データに分割して各該第1の部分データを対応する前記データ圧縮手段に圧縮処理させたときに要する処理時間の予測値のうちの最も長いものと、前記処理対象データを圧縮した圧縮データを複数の前記データ展開手段と一対一対応するよう複数の第2の部分データに分割して各該第2の部分データを対応する前記データ展開手段に展開処理させたときに要する処理時間の予測値のうちの最も長いものとを加算した値を前記圧縮方式予測値として使用し、前記判定手段で前記圧縮方式予測値の方が小さいと判定された場合には、前記複数の第1の部分データを対応する複数の前記データ圧縮手段で並行して圧縮処理することを特徴とする請求項1、2または4記載のキャッシュ制御装置。

請求項7

データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを使用するキャッシュ制御方法において、データの各サイズと、前記データ圧縮手段により各サイズのデータを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、各サイズのデータを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値との関係を記憶手段に予め記憶しておく予測値記憶ステップと、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択ステップと、前記処理対象データのサイズの場合には、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定ステップと、前記判定ステップにおいて、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理ステップとを含むことを特徴とするキャッシュ制御方法。

請求項8

データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを使用するキャッシュ制御方法において、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択ステップと、前記データ圧縮手段により前記処理対象データを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、前記処理対象データを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値とを算出し、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定ステップと、前記判定ステップにおいて、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理ステップとを含むことを特徴とするキャッシュ制御方法。

請求項9

前記圧縮方式予測値は、圧縮された当該データをデータ展開手段で非圧縮データに展開するのに要する時間を加算した値であることを特徴とする請求項7または8記載のキャッシュ制御方法。

請求項10

前記移動方式予測値は、当該データを前記2次記憶手段から読み出し1次記憶手段に移動させるのに要する時間を加算した値であることを特徴とする請求項7乃至9記載のキャッシュ制御方法。

技術分野

0001

本発明は、二段階以上の階層的な記憶構成を持つキャッシュ制御装置およびキャッシュ制御方法に関し、特に、キャッシュ用領域に空き領域を作る処理時間を短縮することができるキャッシュ制御装置およびキャッシュ制御方法に関する。

背景技術

0002

現在、コンピュータ上で動作するアプリケーションプログラム(以下、単に「アプリケーション」とも言う。)が必要なデータを取得する場合、そのデータがアクセス速度の低速な記憶装置に存在するときには、そのデータをその低速な記憶装置から取得後、取得したそのデータを、2回目以降の使用に備えて、アクセス速度の高速な記憶装置に一時的に保存するキャッシュ機能が知られている。

0003

言うまでもなく、キャッシュ機能では、アクセス要求されたデータが、高速な記憶装置に既にキャッシュされている場合(これを「キャッシュヒット」と呼ぶ。)に、その効果が発揮できる。

0004

ここで、キャッシュ機能の効果を高めるためには、キャッシュデータを保存する記憶装置(以下、「キャッシュメモリ」と言う。)の記憶容量を増やす方法と、限られた記憶容量のキャッシュメモリでキャッシュヒットの確率を高める方法とが考えられる。

0005

まず、キャッシュメモリの記憶容量を増やす方法であるが、一般に、キャッシュメモリとして使用される高速な記憶装置は、低速な記憶装置に比べて高価であり、費用の面で、キャッシュメモリを単純に増設することには限度がある。

0006

そこで、高価だが高速な1次キャッシュメモリと、安価だが低速な2次キャッシュメモリとを用意し、2次キャッシュメモリを1次キャッシュメモリの下の階層の補助記憶装置として使用する方法がある。

0007

次に、キャッシュヒットの確率を高める方法として、新たなキャッシュすべきデータが発生した場合に、キャッシュメモリの記憶容量一杯までメモリにデータが保存されているときには、保存済みのデータの一部をキャッシュヒットの確率をできるだけ下げないように破棄することで、その新しいデータを保存するための記憶領域を確保する方法が考えられている。

0008

このような技術の一例として、特許文献1には、限られた記憶容量の高速な記憶装置と、大記憶容量だが低速な記憶装置とをネットワーク接続したコンテンツ蓄積システムを構成し、データへのアクセス頻度を基にして記憶先を選択する技術が開示されている。

0009

この技術においては、高速蓄積装置蓄積されているコンテンツ低速記憶装置転送完了後、高速蓄積装置からコンテンツを消去することで、高速蓄積装置の空き領域が確保されている。

0010

また、本技術では、高速蓄積装置に蓄積されているコンテンツの消去の対象をアクセス頻度に基づいて選定することで、ダウンロード要求の少ないコンテンツを高速蓄積装置から削除し、ダウンロード要求の多いコンテンツを高速蓄積装置に残すように構成されている。

0011

これにより、ダウンロード要求の多いコンテンツが高速蓄積装置に恒久的に保存されるので、コスト増を抑えられた高速で大規模なコンテンツ蓄積システムを提供することが可能である。

0012

すなわち、本技術は、上述のキャッシュメモリの記憶容量を増やす方法と、キャッシュヒットの確率を高める方法とを組み合わせて使用した例である。なお、上述の1次キャッシュメモリは本技術の高速蓄積装置に、上述の2次キャッシュメモリは本技術の低速蓄積装置に相当する。

0013

また、キャッシュメモリの記憶容量を増加させる方法として、他にも、限られた記憶容量に保存するデータ量を増加させる方法が知られている。

0014

このような技術の一例として、特許文献2には、階層状に構成された記憶装置システムにおいて、上位装置からキャッシュメモリへのデータ書き込み時にデータを圧縮し、キャッシュメモリから上位装置へのデータ読み出し時にデータを伸長する技術が開示されている。この技術は、データ圧縮することにより、キャッシュメモリに記憶できるデータ容量を増加させ、より大きなキャッシュメモリを設けることと同じ効果を得ようとするものである。すなわち、限られた容量のキャッシュメモリの利用効率を上げて、キャッシュヒット率を高め、演算速度を速くすることが可能である。

先行技術

0015

特許第4464656号
特開平05−07413号公報

発明が解決しようとする課題

0016

ここで、新たなデータをキャッシュ登録するための処理時間を考えると、特許文献1に開示された技術においては、高速蓄積装置にすぐ消去できるデータがなかった場合、高速蓄積装置からコンテンツを低速蓄積装置へ転送して書き込んだ後、該コンテンツを消去して空き領域を作る時間が必要となる。

0017

一方、特許文献2に開示された技術においては、新たなデータを登録するための記憶容量を、それまでのキャッシュデータを圧縮しておくことによって確保したと考えれば、新たなデータ(を圧縮した)分の空き領域を得るためのデータ圧縮の時間が必要となる。

0018

また、特許文献1に開示された技術においては、空き領域に元々キャッシュされていたデータを再び利用する場合、低速蓄積装置から読み出して転送する時間が必要になる。

0019

一方、特許文献2に開示された技術においては、キャッシュデータの利用にはデータ伸張する時間が必要となる。

0020

これら2つの技術のどちらの総合的な処理時間が短いかは、使用する記憶装置やデータ圧縮アルゴリズムの性能などに依存するが、図1に示すように、一律には定まらないケースがあると考えられる。なお、図1の「書込時間」には、2次キャッシュへ転送(send)して書き込む(Write)する時間が含まれる。

0021

図1ならば、Aの範囲では圧縮時間<書込時間であり、データ圧縮の処理の方が速い。一方、Bの範囲では、圧縮時間>書込時間であり、2次キャッシュへ書き込む処理の方が速い。

0022

すなわち、対象のデータのサイズによって、1次キャッシュから2次キャッシュに移動させる方が速い場合と、1次キャッシュ内でデータを圧縮して空き領域を作る方が速い場合とがあり、どちらの技術を採用しても常に最適な処理が行えるとは言えない。

課題を解決するための手段

0023

本発明のキャッシュ制御装置は、データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段と、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択手段と、データの各サイズと、前記データ圧縮手段により各サイズのデータを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、各サイズのデータを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値との関係を予め記憶し、前記処理対象データのサイズの場合には、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定手段と、前記判定手段において、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理手段とを備える。

0024

本発明のキャッシュ制御装置は、データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段と、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択手段と、前記データ圧縮手段により前記処理対象データを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、前記処理対象データを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値とを算出し、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定手段と、前記判定手段において、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理手段とを備える。

0025

本発明のキャッシュ制御方法は、データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを使用する方法であって、データの各サイズと、前記データ圧縮手段により各サイズのデータを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、各サイズのデータを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値との関係を記憶手段に予め記憶する予測値記憶ステップと、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択ステップと、前記処理対象データのサイズの場合には、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定ステップと、前記判定ステップにおいて、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理ステップとを含む。

0026

本発明のキャッシュ制御方法は、データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを使用する方法であって、前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択ステップと、前記データ圧縮手段により前記処理対象データを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、前記処理対象データを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値とを算出し、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定ステップと、前記判定ステップにおいて、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理ステップとを含む。

発明の効果

0027

本発明には、二段階以上の階層的なメモリ構成を持つキャッシュ制御装置において、1次キャッシュに空き領域がない状況におけるキャッシュ登録処理の性能向上を達成できるという効果がある。

図面の簡単な説明

0028

データ圧縮による処理時間と2次キャッシュへの書き込みによる処理時間の一例を示すグラフである。
本発明の第1の実施形態の構成を示すブロック図である。
1次記憶装置と2次記憶装置の構成を示すブロック図である。
本発明の第1乃至第3の実施形態における1次キャッシュへのデータ登録動作を示すフローチャートである。
本発明の第1乃至第3の実施形態におけるキャッシュしたデータへの参照動作を示すフローチャートである。
本発明の第2の実施形態の構成を示すブロック図である。

実施例

0029

次に、本発明の実施形態について図面を参照して詳細に説明する。

0030

<第1の実施形態>
図2は、本発明の第1の実施形態を示すブロック図である。

0031

図2を参照すると、本実施形態は、コンピュータ100および外部情報源200から構成される。

0032

コンピュータ100は、演算処理装置10、1次記憶装置20、2次記憶装置30、処理データ選択部40、方式判定部50、データ圧縮手段60、およびデータ展開手段70を備える。

0033

演算処理装置10は、各部の動作を制御する。

0034

1次記憶装置20は、演算処理装置10に接続された主記憶装置であり、データの読み書き速度(以下、「アクセス速度」という)が高速な記憶装置である。

0035

1次記憶装置20は、1次キャッシュメモリとしての動作も行うとともに、OSプログラムおよびアプリケーションプログラム自体並びにそれらのプログラムが利用するデータを保持する動作を行い、そのために、キャッシュデータを保持する領域とOSプログラムおよびアプリケーションプログラムの利用するデータを保持する領域とに区分されている。

0036

なお、以降の説明では、OSプログラムおよびアプリケーションプログラムなどのプログラムを総称して単に「アプリケーション」と言う。

0037

次に、図3を参照して、1次記憶装置20の詳細な構成を説明する。

0038

1次記憶装置20の記憶領域は、1次キャッシュ用領域21と、アプリケーション用領域25とに区分されている。

0039

1次キャッシュ用領域21は、アプリケーションが外部情報源3から取得したデータを、次のアクセスの機会に備えて一時的にデータを保持するための記憶領域であり、コンピュータ100の起動時などに1次記憶装置20内に所定の記憶容量を持つよう割り当てられる。

0040

1次キャッシュ用領域21は、さらに、展開情報保存領域22と圧縮情報保存領域23と空き領域24とからなる。なお、空き領域24は、1次キャッシュ用領域21の中で使用されていない領域を示し、存在しないこともある。

0041

展開情報保存領域22は、1次キャッシュ用領域21に保存すべきキャッシュデータを圧縮せず、そのまま保存する領域である。なお、データ圧縮していないキャッシュデータを「非圧縮データ」と呼ぶことがある。

0042

圧縮情報保存領域23は、1次キャッシュ用領域21に保存すべきキャッシュデータを圧縮した状態で保存する領域である。

0043

展開情報保存領域22および圧縮情報保存領域23の大きさは、キャッシュされているデータの状態によって変動する。また、領域22と領域23とはそれぞれ非連続でもよい。

0044

アプリケーション用領域25は、アプリケーションが使用する領域であり、外部情報源3から読み出されたデータはこの領域に格納されて、そのデータを要求したアプリケーションに引き渡される。

0045

2次記憶装置30は、1次記憶装置20よりはアクセス速度が低速であるが、外部情報源3よりはアクセス速度が高速な記憶装置である。

0046

具体的には、例えば、1次記憶装置20はRAM(Random Access Memory)などの半導体メモリ、2次記憶装置30はSSD(Solid State Drive、半導体ディスク)、そして、外部情報源3は磁気ディスク(HDD)である。

0047

次に、図3を参照して、2次記憶装置30の詳細な構成を説明する。

0048

本実施形態では、2次記憶装置30は、2次キャッシュ用領域31のみから構成され、2次キャッシュ用領域31は、展開情報保存領域32と圧縮情報保存領域33と空き領域34とからなる。なお、空き領域34は、2次キャッシュ用領域31の中で使用されていない領域を示し、存在しないこともある。

0049

展開情報保存領域32は、2次キャッシュ用領域31に保存すべきキャッシュデータを圧縮せず、そのまま保存する領域である。

0050

圧縮情報保存領域33は、2次キャッシュ用領域31に保存すべきキャッシュデータを圧縮した状態で保存する領域である。

0051

展開情報保存領域32および圧縮情報保存領域33の大きさは、キャッシュされているデータの状態によって変動する。また、領域32と領域33とはそれぞれ非連続でもよい。

0052

2次キャッシュ用領域31は、1次キャッシュ用領域21で保存しきれなくなったキャッシュデータを一時的に保存するためのものである。アプリケーションが該データを再び参照する場合は、まず、該データが2次キャッシュ用領域31から読み出されて1次キャッシュ用領域21に転送され、アプリケーションはこうして1次キャッシュ用領域に転送されてきた該データを利用する。

0053

処理データ選択部40は、1次キャッシュ用領域21の空き領域を増やすために、1次キャッシュ用領域21に保存されているデータの中から移動もしくは削除するデータを選択する。処理データ選択部40で行われるデータ選択の選択基準は、例えば、利用頻度最終アクセス時刻を考慮して、再アクセスの確率が低そうなデータを選択することを基本とする。

0054

このため、処理データ選択部40は、例えば、アプリケーションからの各データへのアクセスタイミング等の情報を収集し、利用頻度や最終アクセス時刻等の情報として整理する。

0055

データ圧縮手段50は、1次記憶装置20上の非圧縮データを読み出して、圧縮し、圧縮後の圧縮データを1次記憶装置20上に書き込む。

0056

データ圧縮アルゴリズムとしては、圧縮対象データのサイズを基に圧縮に掛かる時間、および、圧縮データの展開時間を予測できるものが採用される。

0057

例えば、よく知られているLZSS(Lempel−Ziv−Storer−Szymanski)方式などのいわゆる辞書式のアルゴリズムにおいては、元データの各要素について同じ処理を繰り返すことで圧縮を行うため、処理対象となるデータのサイズに比例して圧縮処理回数が増加する。これにより、1回あたりの圧縮処理時間を測定しておけば、データサイズからおおよその圧縮時間を予測することができる。なお、展開についても同様である。

0058

また、圧縮および展開の演算処理には、演算処理装置10を使用してもよいし、GPU(Graphics Processing Unit)などの別の装置を使用してもよい。

0059

データ展開手段60は、データ圧縮手段50によって圧縮されたデータを、1次記憶装置20上から読み出して、展開し、展開されたデータを1次記憶装置20上に書き込む。データ展開アルゴリズムは、データ圧縮手段50の圧縮アルゴリズムに対応するものを採用する。

0060

方式判定部70は、処理データ選択部40が選択した処理対象データのサイズを基に、1次キャッシュ用領域21に該データを書き込むのに必要な空き容量を確保するための処理に要する時間が短い処理方式を判定する。

0061

この処理方式としては、本実施形態では、1次キャッシュ用領域21内で既存の非圧縮データを圧縮し、縮小した分のサイズを空ける方式(以下、「圧縮方式」と言う。)と、1次キャッシュ用領域21から2次キャッシュ用領域31へデータを移動させる方式(以下、「移動方式」と言う。)との2つの処理方式がある。

0062

はじめに、圧縮方式の処理時間について説明する。

0063

本実施形態では、この方式の処理時間は、1次キャッシュ用領域21の非圧縮データをデータ圧縮手段50で圧縮するのに要する時間と、該圧縮データをデータ展開手段60で展開するのに要する時間との合計の時間で表わされるものとする。これら2つの処理に要する時間は、上述したとおり、データサイズから予測することが可能である。

0064

なお、本実施形態では、1次記憶装置20に対する読み書きの時間は、上記2つの処理に要する時間に比べて十分に短く無視できるため考慮に入れないが、1次記憶装置20、データ圧縮手段50、および、データ展開手段60の性能次第では考慮に入れることもありうる。

0065

次に、移動方式の処理時間について説明する。

0066

本実施形態では、この方式の処理時間は、データを1次記憶装置20から2次記憶装置30へ送るのに要する時間、データを2次記憶装置30に書き込むのに要する時間、2次記憶装置30から読み出すのに要する時間および1次記憶装置20へ送るのに要する時間の合計の時間で表されるものとする。これら4つの時間は、装置を構成後のテストによる測定値や装置の仕様情報に基づいて、処理対象のデータサイズ毎におおよそ予測できる。

0067

なお、本方式でも同様に、1次記憶装置20に対する読み書きの時間は、上記2つの時間に比べて十分に短く無視できるため考慮に入れていないが、1次記憶装置20と2次記憶装置30との間の性能差の程度によっては考慮に入れることもありえる。

0068

以上のように、2つの方式は、対象となるデータサイズから処理時間が予測できる。そこで、本実施形態では、2つの方式におけるデータサイズと処理時間との関係を予め予測した判定情報が方式判定部70内に予め格納されており、これにより、方式判定部70はデータサイズに応じて処理時間が短い方の方式を選定する。

0069

なお、上記判定情報は、方式判定部70が、処理中に算出してもよい。

0070

ここで、判定情報とは、例えば、2つの方式における処理時間とデータサイズとの関係が図1のようなグラフで表せるとすると、処理対象のデータサイズをdとして、0≦d<aのときは圧縮方式、a≦d<bのときは移動方式、b≦d<x(xは図示せず)のときは圧縮方式、のような関係を示した情報である。

0071

なお、上記の移動方式では、4つの時間のうち、2次記憶装置30から読み出すのに要する時間および1次記憶装置20へ送るのに要する時間は処理時間から削っても良い。

0072

外部情報源200は、コンピュータ100で動作するアプリケーションがアクセスする対象のオリジナルデータを格納している記憶装置である。外部情報源200は、1次記憶装置20および2次記憶装置30に比べて、アクセス速度が遅い記憶手段であり、上述の通り、本実施形態では磁気ディスク装置とする。

0073

なお、本実施形態では、外部情報源200以外の構成要素はすべて1つのコンピュータに搭載されているが、それに限定されるものではない。例えば、2次記憶装置30が高速なネットワーク回線でつながれた別のコンピュータに設けられ、外部情報源200がより低速なネットワーク回線でつながれた別のコンピュータに設けられる構成などでもよい。

0074

次に、上述した構成を備える本実施形態の動作について詳細に説明する。

0075

本実施形態の主な動作は、1次キャッシュ用領域21へのデータ登録動作と、キャッシュしたデータへの参照動作とに分けられる。これらについて、以下順番に説明する。

0076

まず、図4を参照して、1次キャッシュ用領域21へのデータ登録動作を説明する。

0077

コンピュータ100の起動時の1次キャッシュ用領域21と2次キャッシュ用領域31との状態は図3の通りであるとする。

0078

まず、アプリケーションがデータD1の登録を要求し、データD1を1次キャッシュ用領域21へ登録する必要がある場合、演算処理装置10は、1次キャッシュ用領域21への登録対象のデータD1のサイズを確認し、1次キャッシュ用領域21の空き領域24に収められるかどうかを判断する(ステップS100)。

0079

なお、1次キャッシュ用領域21への登録要否の判断は、一般的なキャッシュ技術を利用し、本実施形態では詳細を記述しない。

0080

もし、空き領域24に収められる場合、演算処理装置10は、1次キャッシュ用領域21の空き領域24にデータD1を書き込んで、その領域を展開情報保存領域22の一部と定義する(ステップS130)。この場合は、これで1次キャッシュ用領域21へのデータD1の登録処理は完了する。

0081

一方、データD1のサイズが空き領域24のサイズより大きい場合には、1次キャッシュ用領域21の空き領域24のサイズを増やすための処理に進む。

0082

演算処理装置10は、1次キャッシュ用領域21に圧縮情報保存領域23が存在するか否かを確認する(ステップS101)。

0083

もし、ここで圧縮情報保存領域23がなければ、後述するステップS102に進む。

0084

今は、圧縮情報保存領域23があるので、圧縮データを移動させる処理に進む。

0085

処理データ選択部40は、それまでのアクセス状況から、圧縮情報保存領域23の中で最も利用度の低い圧縮データD2を選択する(ステップS110)。

0086

演算処理装置10は、圧縮データD2を装置30の2次キャッシュ用領域31内の空き領域34に書き込み、書き込んだ領域を圧縮情報保存領域33と定義する。そして、圧縮データD2を1次キャッシュ用領域21の圧縮情報保存領域23から削除する(ステップS111)。これにより、空き領域24は、データD2の分だけ増加する。この結果、データD1を登録するために必要なサイズの空き領域24が確保された場合には、データD1をそこに登録する(ステップ130)。

0087

一方、データD1を登録するために必要なサイズの空き領域24がまだ確保できない場合には(ステップ100)、ステップS110およびS111の処理をデータD1を収められるだけのサイズの空き領域24が確保できるまで繰り返す。もし、これらのステップを繰り返し、圧縮情報保存領域23の全てのデータを削除してもデータD1を登録するために必要なサイズの空き領域24が確保できない場合には、処理データ選択部40は、それまでのアクセス状況から、1次キャッシュ用領域21の展開情報保存領域22の中で最も利用度の低い非圧縮のデータD3を選択する(ステップS102)。

0088

次に、方式判定部70が、データD3のサイズを確認し、以下のようにして処理時間が短い方式を選択する(ステップS103)。

0089

すなわち、データD3のサイズd3が、図1のBの範囲(a≦d3<b)の場合、方式判定部70は2次キャッシュ用領域31への移動方式を選択し、ステップS120に進む。

0090

演算処理装置10は、非圧縮データD3を2次キャッシュ用領域31内の空き領域34に書き込み、その書き込んだ領域を展開情報保存領域32と定義する。そして、非圧縮データD3を1次キャッシュ用領域21の展開情報保存領域22から削除する(ステップS120)。これにより、空き領域24は、データD3の分だけ増加する。そして、ステップS100の処理に戻る。

0091

一方、ステップS102において、データD3のサイズd3が、図1のAの範囲(0≦d3<a、または、b≦d3<x、xは図示せず)の場合、方式判定部70は圧縮方式を選択し、ステップS104に進む。

0092

データ圧縮手段50は、非圧縮データD3を圧縮して、1次キャッシュ用領域21内に圧縮情報保存領域23を再度作成し、そこに圧縮したデータD3を書き込む(ステップS104)。

0093

次に、演算処理装置10は、圧縮前のデータD3を1次キャッシュ用領域21の展開情報保存領域22から削除する(ステップS105)。これにより、空き領域24は、データD3の圧縮により縮小したサイズ分だけ増加する。そして、ステップS100の処理に戻る。

0094

この時点で、まだデータD1を登録するために必要なサイズの空き領域24が確保できない場合であって、ステップ103でデータD3に対して移動方式が選択されていたときには、再度ステップS102およびS103の処理に進み、ステップS120、または、ステップS104およびS105、の処理を行い、一方、ステップ103でデータD3に対して圧縮方式が選択されていたときには、ステップS110およびS111の処理に進む。

0095

例えば、展開情報保存領域22に2つのデータaとデータbとがあるとき、まず、利用率が低いデータaが先に処理対象に選ばれて、そのまま移動した方が速い場合は非圧縮のまま2次キャッシュ用領域31へ移動され、移動するより圧縮した方が速い場合は圧縮される。そして、それでも空き領域24が足りない場合は、展開情報保存領域22内の別のデータbが処理対象になる前に、先に圧縮されたデータaが2次キャッシュ用領域31へ移動される。すなわち、空き領域24のサイズが十分に確保できるまで、展開情報保存領域22のデータは、処理データ選択部40により利用率が低いと判断された順に、2次キャッシュ用領域31へ移動されていき、そのデータの形態は、処理時間に応じて、圧縮または非圧縮という形態になる。

0096

以上のような処理フローに従って空き領域24のサイズを増やしていき、最終的に、データD1を登録できるだけのサイズの空き領域24を確保し(ステップS100)、そこを展開情報保存領域23と定義してデータD1を格納する(ステップS130)ことにより、1次キャッシュ用領域21へのデータD1の登録処理が完了する。

0097

このようにして、1次キャッシュ用領域21内の既存データを、該データを最も速く移動できる手段を用いて2次キャッシュ用領域31へ移動させるか、1次キャッシュ用領域21内で圧縮することにより既存データのサイズを縮小して、新しいデータD1を1次キャッシュ用領域21へ登録することが実現できる。

0098

次に、図5を参照して、キャッシュしたデータの参照動作を説明する。

0099

今、すでに1次キャッシュ用領域21と2次キャッシュ用領域31とになんらかのデータが登録されており、アプリケーションがデータD4の参照を要求したとする。

0100

まず、演算処理装置10は、アクセス対象のデータD4が1次キャッシュ用領域21に保存されているかどうかを確認する(ステップS200)。

0101

もし、1次キャッシュ用領域21の展開情報保存領域22、または、圧縮情報保存領域23に保存されていた場合は、ステップS203に進む。

0102

一方、1次キャッシュ用領域21に保存されていなかった場合、演算処理装置10は、アクセス対象のデータD4が2次キャッシュ用領域31に保存されているかどうかを確認する(ステップS201)。

0103

もし、2次キャッシュ用領域21の展開情報保存領域22、または、圧縮情報保存領域23に保存されていなかった場合、キャッシュミスとして処理する。すなわち、演算処理装置10は、外部情報源200からデータD4を取得し(ステップS210)、1次記憶装置20のアプリケーション用領域25に格納してアプリケーションに引き渡す(ステップS206)。

0104

この後、データD4を1次キャッシュ用領域21に登録する必要があると判断された場合は、上述した1次キャッシュ用領域21へのデータ登録動作を行っても良い。

0105

一方、ステップS201において、データD4が2次キャッシュ用領域31に保存されていた場合、演算処理装置10は、2次キャッシュ用領域31からデータD4を1次キャッシュ用領域21へ転送する。そして、演算処理装置10は、転送したデータD4が非圧縮データならば展開情報保存領域22へデータD1を保存し、データD4が圧縮データならば圧縮情報保存領域23へ保存する(ステップS202)。転送後、演算処理装置10は、2次キャッシュ用領域31のデータD4を削除する。

0106

次に、演算処理装置10は、データD4が圧縮されているかどうか確認する(ステップS203)。

0107

もし、非圧縮データの場合は、ステップS206に進む。

0108

一方、圧縮データの場合、データ展開手段60は、圧縮データD4を展開し(ステップS204)、1次キャッシュ用領域21の展開情報保存領域22に展開したデータD4を保存するとともに、元の圧縮データD4を圧縮情報保存領域23から削除する(ステップS205)。

0109

最後に、演算処理装置10は、1次キャッシュ用領域21の展開情報保存領域22の非圧縮データD4を、1次記憶装置20のアプリケーション用領域25に格納してアプリケーションに引き渡す(ステップS206)。

0110

なお、ステップS202およびS205において、データD4を保存するための1次キャッシュ用領域21の空き領域24が不足している場合は、上述した1次キャッシュ用領域21へのデータ登録動作を行う。

0111

ここで、キャッシュデータの参照に要した時間を考える。

0112

まず、2次キャッシュ用領域31に保存されていた場合は、2次記憶装置30からの読み出しと、1次記憶装置20への転送時間を要する。

0113

次に、データ圧縮されていた場合は、展開する時間を要する。

0114

しかし、1次キャッシュ用領域21へのデータ登録動作において方式判定部70が処理方式を選択する(ステップS103)ときの判定情報に、上記のような参照するために要する時間を加算しているので、後でデータを利用する際の処理に要する時間はすでに方式選択において考慮済みである。すなわち、本実施形態では、キャッシュデータ参照のための展開処理を含めても処理時間が短くなるときだけ、データ圧縮を行うように制御されていると言える。同じく、2次記憶装置30からの読み出しと、1次記憶装置20へ送る時間を含めても処理時間が短くなるときだけ、データ移動を行うように制御されているとも言える。

0115

以上説明したように、本実施形態には、従来の階層的な記憶構成を持つキャッシュ制御装置や、キャッシュデータを圧縮して保存するのみのキャッシュ制御装置に比べて、キャッシュデータの登録処理の性能が向上するという効果がある。

0116

その理由は、新たなデータを登録するために1次キャッシュ用領域から予め定めた条件に基づきデータを選択し、その選択されたデータを圧縮するのに要する時間とその選択されたデータを2次キャッシュ用領域に移動させ書き込むのに要する時間とのうちの短い時間の方の処理を選択して、当該選択された処理を当該データに施すようにしたためである。

0117

さらに、2次キャッシュ用領域に保存されたデータにおいては、キャッシュの参照処理の性能が向上する効果もある。

0118

その理由は、1次キャッシュ用領域の空き容量を確保する処理の時点で、2次キャッシュ用領域からデータを読み込む際の移動と展開のための処理に要する時間を加算した予測値に基づいて、処理時間が短い方の方式を判定するためである。すなわち、圧縮と展開とに要する時間を加算してもなお、圧縮してサイズが小さくなったデータを2次記憶装置から読み出して1次記憶装置へ転送するために要する処理時間がより短く済むようなデータサイズの場合は、圧縮して2次キャッシュ用領域に保存されるので、常に非圧縮の状態で2次キャッシュにデータを保存する従来方式に比べて参照性能が向上する。一方、圧縮と展開とを行うことで余計に時間が掛かるようなデータサイズの場合は、圧縮しないまま2次キャッシュ用領域に移動されるので、常にキャッシュデータを圧縮する従来方式に比べても性能が向上する。

0119

<第2の実施形態>
次に、上述した第1の実施形態を基本とする第2の実施形態について説明する。以下では、第2の実施形態に係る特徴的な部分を中心に説明し、第1の実施形態と同様な構成を有する第2の実施形態の構成要素には、第1の実施形態で付した参照符号と同一の参照符号を付し、その構成要素について重複する詳細な説明は省略する。

0120

図6は、第2の実施形態を示すブロック図である。

0121

図6を参照すると、本実施形態では、コンピュータ101の中にデータ圧縮手段50およびデータ展開手段60をそれぞれ複数個有する点が第1の実施形態と異なる。

0122

なお、データ圧縮手段50およびデータ展開手段60の数は同数である必要はない。

0123

次に、上述した構成を備える本実施形態の動作について詳細に説明する。

0124

本実施形態の動作は、第1の実施形態と基本的には同じであり、異なる点は以下の点だけである。

0125

まず、1次キャッシュ用領域21へのデータ登録動作においては、方式判定部70が、データ圧縮手段50およびデータ展開手段60の数に合わせてデータD3を複数の部分データに分割し、例えば、最短時間の方式を決定する際に採用するデータサイズを、分割したデータの中で最も大きなデータサイズとする(図4のステップS103)。すなわち、方式判定部70が、データD3を複数の圧縮手段50と一対一対応するよう複数の第1の部分データに分割して各第1の部分データを対応する圧縮手段50に圧縮処理させたときに要する処理時間の予測値のうちの最も長いものと、データD3を圧縮した圧縮データを複数の展開手段60と一対一対応するよう複数の第2の部分データに分割して各第2の部分データを対応する展開手段60に展開処理させたときに要する処理時間の予測値のうちの最も長いものとを加算した値を圧縮方式の予測値として割り出す。

0126

なお、ここでは、展開手段60による展開処理の時間の予測値を考慮して圧縮方式の予測値を割り出すようにしたが、展開手段60による展開処理の時間の予測値を考慮せず、圧縮処理の処理時間のみから予測値を割り出すようにしてもよいことは言うまでもない。

0127

次に、データD3を実際に圧縮する際には、ステップS103で方式判定部70により分割された複数の第1の部分データがそれぞれ対応する複数のデータ圧縮手段50に分配されて、複数のデータ圧縮手段50で並行して圧縮処理される(図4のステップS104)。

0128

そして、データへの参照動作においては、圧縮されたデータD3を展開する際も同様に、データD3が複数の第2の部分データに分割され、こうして分割された複数の第2の部分データはそれぞれ対応する複数のデータ展開手段60に分配されて、複数のデータ展開手段60で並行して展開処理される(図5のステップS203)。

0129

以上、説明したように、本実施形態には、上述した第1の実施形態と同様の効果に加えて、さらに、キャッシュ登録処理および参照処理の時間を短縮することができるという効果がある。

0130

その理由は、データを分割して並列処理することで、データ圧縮および展開の処理時間を短縮することができるためである。

0131

なお、本発明は上述した実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下の付記に限定されるものではないことは言うまでもない。

0132

(付記1)
データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを使用するキャッシュ制御方法において、
データの各サイズと、前記データ圧縮手段により各サイズのデータを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、各サイズのデータを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値との関係を記憶手段に予め記憶しておく予測値記憶ステップと、
前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択ステップと、
前記処理対象データのサイズの場合には、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定ステップと、
前記判定ステップにおいて、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理ステップと
を含むことを特徴とするキャッシュ制御方法。

0133

(付記2)
データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを使用するキャッシュ制御方法において、
前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択ステップと、
前記データ圧縮手段により前記処理対象データを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、前記処理対象データを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値とを算出し、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定ステップと、
前記判定ステップにおいて、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理ステップと
を含むことを特徴とするキャッシュ制御方法。

0134

(付記3)
前記移動方式予測値は、当該データを前記2次記憶手段から読み出し1次記憶手段に移動させるのに要する時間を加算した値であることを特徴とする付記1または2記載のキャッシュ制御方法。

0135

(付記4)
前記データ圧縮手段は複数個使用され、
前記判定ステップは、前記処理対象データを複数の前記圧縮手段と一対一対応するよう複数の部分データに分割して、各該部分データを対応する前記データ圧縮手段に圧縮処理させたときに要する処理時間の予測値のうちの最も長いものを前記圧縮方式予測値として使用し、
前記判定ステップで前記圧縮方式予測値の方が小さいと判定された場合には、前記複数の部分データを対応する複数の前記データ圧縮手段で並行して圧縮処理する
ことを特徴とする付記1乃至3記載のキャッシュ制御方法。

0136

(付記5)
前記データ圧縮手段と圧縮データを非圧縮データに展開するデータ展開手段とが複数個使用され、
前記判定ステップは、前記処理対象データを複数の前記圧縮手段と一対一対応するよう複数の第1の部分データに分割して各該第1の部分データを対応する前記データ圧縮手段に圧縮処理させたときに要する処理時間の予測値のうちの最も長いものと、前記処理対象データを圧縮した圧縮データを複数の前記データ展開手段と一対一対応するよう複数の第2の部分データに分割して各該第2の部分データを対応する前記データ展開手段に展開処理させたときに要する処理時間の予測値のうちの最も長いものとを加算した値を前記圧縮方式予測値として使用し、
前記判定ステップで前記圧縮方式予測値の方が小さいと判定された場合には、前記複数の第1の部分データを対応する複数の前記データ圧縮手段で並行して圧縮処理する
ことを特徴とする付記1乃至3記載のキャッシュ制御方法。

0137

(付記6)
データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを含むシステムにおいて、
データの各サイズと、前記データ圧縮手段により各サイズのデータを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、各サイズのデータを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値との関係を記憶手段に予め記憶しておく予測値記憶処理と、
前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択処理と、
前記処理対象データのサイズの場合には、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定処理と、
前記判定処理において、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理と
をコンピュータに実行させることを特徴とするキャッシュ制御プログラム

0138

(付記7)
データを記憶する1次記憶手段と、前記1次記憶手段よりもデータの読み出しが低速である2次記憶手段と、データを圧縮して前記1次記憶手段に保存できるデータ圧縮手段とを含むシステムにおいて、
前記1次記憶手段に新規データを保存する場合であって、前記1次記憶手段に該新規データを保存するための空き領域が存在しない場合、予め定めた条件に基づき指定される前記1次記憶手段内のデータを処理対象データとして選択する選択処理と、
前記データ圧縮手段により前記処理対象データを圧縮するのに要する圧縮時間の予測値である圧縮方式予測値と、前記処理対象データを前記1次記憶手段から2次記憶手段に移動させ書き込むのに要する移動時間の予測値である移動方式予測値とを算出し、前記圧縮方式予測値および前記移動方式予測値のうちのいずれが小さいかを判定する判定処理と、
前記判定処理において、前記圧縮方式予測値の方が小さいと判定された場合には、前記処理対象データを前記圧縮手段で圧縮した圧縮データを前記1次記憶手段に保存し、一方、前記移動方式予測値の方が小さいと判定された場合には、前記処理対象データを前記第2の記憶手段に移動させ書き込む処理と
をコンピュータに実行させることを特徴とするキャッシュ制御プログラム。

0139

(付記8)
前記圧縮方式予測値は、圧縮された当該データをデータ展開手段で非圧縮データに展開するのに要する時間を加算した値であることを特徴とする付記6または7記載のキャッシュ制御プログラム。

0140

(付記9)
前記移動方式予測値は、当該データを前記2次記憶手段から読み出し1次記憶手段に移動させるのに要する時間を加算した値であることを特徴とする付記6乃至8記載のキャッシュ制御プログラム。

0141

(付記10)
前記システムは、複数の前記データ圧縮手段を含み、
前記判定処理は、前記処理対象データを複数の前記圧縮手段と一対一対応するよう複数の部分データに分割して、各該部分データを対応する前記データ圧縮手段に圧縮処理させたときに要する処理時間の予測値のうちの最も長いものを前記圧縮方式予測値として使用し、
前記判定処理で前記圧縮方式予測値の方が小さいと判定された場合には、前記複数の部分データを対応する複数の前記データ圧縮手段で並行して圧縮処理する
ことを特徴とする付記6、7または9記載のキャッシュ制御プログラム。

0142

(付記11)
前記システムは、複数の前記データ圧縮手段と圧縮データを非圧縮データに展開する複数のデータ展開手段とを含み、
前記判定処理は、前記処理対象データを複数の前記圧縮手段と一対一対応するよう複数の第1の部分データに分割して各該第1の部分データを対応する前記データ圧縮手段に圧縮処理させたときに要する処理時間の予測値のうちの最も長いものと、前記処理対象データを圧縮した圧縮データを複数の前記データ展開手段と一対一対応するよう複数の第2の部分データに分割して各該第2の部分データを対応する前記データ展開手段に展開処理させたときに要する処理時間の予測値のうちの最も長いものとを加算した値を前記圧縮方式予測値として使用し、
前記判定処理で前記圧縮方式予測値の方が小さいと判定された場合には、前記複数の第1の部分データを対応する複数の前記データ圧縮手段で並行して圧縮処理する
ことを特徴とする付記6、7または9記載のキャッシュ制御プログラム。

0143

10演算処理装置
201次記憶装置
21 1次キャッシュ用領域
22展開情報保存領域
23圧縮情報保存領域
24 空き領域
25アプリケーション用領域
30 2次記憶装置
31 2次キャッシュ用領域
32 展開情報保存領域
33 圧縮情報保存領域
34 空き領域
40 処理データ選択部
50データ圧縮手段
60データ展開手段
70方式判定部
100コンピュータ
200外部情報源
101 コンピュータ

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ