"複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリと、前記キャッシュメモリの各ブロックに対して前記データのリプレースを行なう制御部とを備え、前記制御部は、前記各エントリにおいて前記データがリプレースされたリプレース回数を、前記エントリ毎に計数するカウンタと、前記リプレース回数に応じて、前記データのリプレース方式を切り替える切替部とを備えることを特徴とする、キャッシュメモリ装置。前記切替部は、前記リプレース回数が所定の閾値に達した場合に、前記リプレース方式を切り替えることを特徴とする、請求項1記載のキャッシュメモリ装置。前記制御部は、前記所定の閾値を決定する閾値決定部をさらに備え、前記切替部は、前記閾値決定部によって決定された所定の閾値を用いて、前記リプレース方式を切り替えることを特徴とする、請求項2記載のキャッシュメモリ装置。前記閾値決定部は、前記所定の閾値を変化させてキャッシュヒット率を算出し、算出されたキャッシュヒット率に基づいて、前記所定の閾値を決定することを特徴とする、請求項3記載のキャッシュメモリ装置。前記閾値決定部は、前記所定の閾値を変化させて前記エントリ毎のキャッシュヒット率を算出し、算出された各キャッシュヒット率に基づいて、前記エントリ毎に前記所定の閾値を決定することを特徴とする、請求項4記載のキャッシュメモリ装置。前記カウンタは、前記リプレース回数が所定の数と等しくなった場合に、前記リプレース回数をリセットすることを特徴とする、請求項1~5のいずれか1項記載のキャッシュメモリ装置。前記カウンタは、前記リプレース回数が前記エントリにおけるブロックの数と等しくなった場合に、前記リプレース回数をリセットすることを特徴とする、請求項6記載のキャッシュメモリ装置。前記リプレース方式は、前記ステータスに応じた優先度に基づいて、前記リプレースを行なうリプレース対象のブロックを選択する優先順位方式と、前記リプレース対象のブロックとして、前記エントリにおいて最も古くアクセスされたブロックを選択するLRULeastRecentlyUsed方式とを含むことを特徴とする、請求項1~7のいずれか1項記載のキャッシュメモリ装置。前記制御部は、前記エントリ毎に、前記ブロックがアクセスされたアクセス順序を管理するアクセス順序管理部をさらに備え、前記アクセス順序管理部が管理するアクセス順序に基づいて、前記LRU方式によるリプレースを実行することを特徴とする、請求項8記載のキャッシュメモリ装置。前記制御部は、リプレースを行なうリプレース対象のエントリに対応するリプレース方式を前記切替部から取得し、取得したリプレース方式に基づいて、前記リプレース対象のエントリにおけるリプレース対象のブロックを選択するブロック選択部と、前記リプレース対象のエントリを決定し、当該エントリを示す情報を前記ブロック選択部に出力するとともに、前記ブロック選択部によって選択された前記リプレース対象のブロックに対して、前記データのリプレースを行なう処理部とをさらに備えることを特徴とする、請求項1~9のいずれか1項記載のキャッシュメモリ装置。セットアソシアティブ方式を採用することを特徴とする、請求項1~10のいずれか1項記載のキャッシュメモリ装置。複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリの各ブロックに対して前記データのリプレースを行なう制御装置であって、前記各エントリにおいて前記データがリプレースされたリプレース回数を、前記エントリ毎に計数するカウンタと、前記リプレース回数に応じて、前記データのリプレース方式を切り替える切替部とを備えることを特徴とする、キャッシュメモリの制御装置。前記切替部は、前記リプレース回数が所定の閾値に達した場合に、前記リプレース方式を切り替えることを特徴とする、請求項12記載のキャッシュメモリの制御装置。前記所定の閾値を決定する閾値決定部をさらに備え、前記切替部は、前記閾値決定部によって決定された所定の閾値を用いて、前記リプレース方式を切り替えることを特徴とする、請求項13記載のキャッシュメモリの制御装置。請求項1~11のいずれか1項に記載のキャッシュメモリ装置を備えることを特徴とする、情報処理装置。複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリの各ブロックに対して前記データのリプレースを行なう制御方法であって、前記各エントリにおいて前記データがリプレースされたリプレース回数を、前記エントリ毎に計数し、前記計数したリプレース回数に応じて、前記データのリプレース方式を切り替えることを特徴とする、キャッシュメモリの制御方法。複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリと、前記キャッシュメモリの各ブロックに対して前記データのリプレースを行なう制御部とを備え、前記制御部は、前記各エントリにおいて前記データがリプレースされたリプレース回数を、前記エントリ毎に計数するカウンタと、前記リプレース回数に応じて、前記データのリプレース方式を切り替える切替部とを備えるとともに、前記切替部は、前記リプレース回数が所定の閾値に達した場合に、前記リプレース方式を切り替えるキャッシュメモリ装置において、前記所定の閾値を変化させ、変化させた所定の閾値毎にキャッシュヒット率を算出し、算出された複数のキャッシュヒット率に基づいて、前記所定の閾値を決定する、処理をコンピュータに実行させる、キャッシュメモリ装置の閾値決定プログラム。ところで、上述した優先順位方式では、性能向上に寄与する特定のキャッシュを優先してキャッシュに格納すると、優先度の高いキャッシュ種類がキャッシュラインを占めるようになり、かえって性能が悪化する虞がある。図10は、8つのWAYを持つキャッシュラインに格納されるキャッシュを示す図であり、図10aは、キャッシュラインに格納される3種類の優先度のキャッシュを示す図である。また、図10bは、図10aに示すキャッシュラインに、優先度の高いキャッシュが格納された場合を示す図であり、図10cは、図10bに示すキャッシュラインに、優先度の高いキャッシュが格納された場合を示す図である。図10a~cに示すように、キャッシュラインが備える8つのWAYには、HHigh,MMiddle,LLowの優先度を持つキャッシュがそれぞれ格納されている。これらの優先度を持つキャッシュについて、キャッシュメモリ装置は、H>M>Lの順番でキャッシュを優先するものとする。なお、図10a~図10cに示すH,M,Lの優先度は、WAY毎のデータに対応付けられたステータスに応じて決定されるものである。図10aに示すキャッシュラインにおいて、WAY1~5には優先度Hのキャッシュが格納されており、WAY6には優先度Mのキャッシュが格納されており、WAY7~8には優先度Lのキャッシュが格納されている。次に、図10aに示すキャッシュラインのいずれかのWAYに、優先度Hのキャッシュを格納リプレースする場合、図10bに示すように、キャッシュする優先度の低い、優先度LのWAYが優先的にリプレース対象となる。図10bに示す例においては、WAY7に優先度Hのキャッシュがリプレースされる。また、図10bに示すキャッシュラインのいずれかのWAYに、さらに優先度Hのキャッシュを格納リプレースする場合、図10cに示すように、キャッシュする優先度の低い、優先度LのWAYが優先的にリプレース対象となる。図10cに示す例においては、WAY8に優先度Hのキャッシュがリプレースされる。従って、図10a~cを用いて上述の如く、優先順位方式では、性能向上に寄与する特定のキャッシュを優先してキャッシュに格納すると、優先度の高いキャッシュ種類がキャッシュラインを占めるようになり、かえって性能が悪化する虞がある。また、上述した優先順位方式では、キャッシュラインを特定のキャッシュ種類を優先するように割り当てると、例えば、優先順位の高いキャッシュであるが時間的に古いものがいつまでもキャッシュラインに残ってしまい、キャッシュライン全体を有効に使用することができなくなるといった問題がある。さらに、上述の如く、特定のステータスを持つキャッシュの数がある閾値を超えた場合に、LRU方式か優先順位方式かのリプレース方式を切り替える手法が知られているが、この手法は、プロセッサからの入力アドレスを全キャッシュラインと比較するフルアソシアティブ方式において採用されているものである。一方、セットアソシアティブ方式では、複数のブロックを1つのキャッシュラインとして管理するため、キャッシュラインによって格納されるキャッシュの種類に偏りが生じ、特定の種類のキャッシュが、あるキャッシュライン内に偏って格納されることがある。従って、上述の如き手法をセットアソシアティブ方式に適用しようとすると、全てのキャッシュラインに同一の閾値を用いているため、キャッシュラインによってキャッシュの種類に偏りが生じるセットアソシアティブ方式では、必ずしも性能の向上につながるわけではない。また、上述の如き手法では、キャッシュは、特定のステータスを持つキャッシュの数が閾値をいつまでも超えないと優先順位方式のリプレースのみを実行し、優先順位の高いキャッシュであるが時間的に古いものがいつまでもキャッシュラインに残ってしまう。すなわち、上述の如き手法では、特定のステータスを持つキャッシュの数が閾値をいつまでも超えないと、キャッシュの時間的局所性の観点から、キャッシュヒット率の低下を招くという問題がある。さらに、上述の如き手法における閾値によるリプレース方式の切り替えでは、特定のステータスを持つキャッシュの数が閾値を超えない場合に、優先順位の低いキャッシュ種が連続してキャッシュメモリに格納される対象になった場合、優先順位の高いキャッシュエントリブロックはリプレース対象とならない。従って、実質的にエントリ数が少なくなり、優先順位の低いキャッシュ種が連続してキャッシュメモリに格納される対象になった場合などに、性能の低下が予想される。上述の点に鑑み、本件の目的の1つは、キャッシュメモリ装置におけるキャッシュヒット率の向上を実現することである。なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。本件のキャッシュメモリ装置は、複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリと、前記キャッシュメモリの各ブロックに対して前記キャッシュデータのリプレースを行なう制御部とを備え、前記制御部は、前記各エントリにおいて前記キャッシュデータがリプレースされたリプレース回数を、前記エントリ毎に計数するカウンタと、前記リプレース回数に応じて、前記キャッシュデータのリプレース方式を切り替える切替部とを備えるものである。また、本件のキャッシュメモリの制御装置は、複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリの各ブロックに対して前記データのリプレースを行なう制御装置であって、前記各エントリにおいて前記データがリプレースされたリプレース回数を、前記エントリ毎に計数するカウンタと、前記リプレース回数に応じて、前記データのリプレース方式を切り替える切替部とを備えるものである。さらに、本件の情報処理装置は、上述したキャッシュメモリ装置を備えるものである。また、本件のキャッシュメモリの制御方法は、複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリの各ブロックに対して前記データのリプレースを行なうリプレース方法であって、前記各エントリにおいて前記データがリプレースされたリプレース回数を、前記エントリ毎に計数し、前記計数したリプレース回数に応じて、前記データのリプレース方式を切り替えるものである。さらに、本件のキャッシュメモリ装置の閾値決定プログラムは、複数のエントリを備え、前記エントリ毎に、データと前記データの状態を表すステータスとを含む少なくとも1のブロックを備えるキャッシュメモリと、前記キャッシュメモリの各ブロックに対して前記データのリプレースを行なう制御部とを備え、前記制御部は、前記各エントリにおいて前記データがリプレースされたリプレース回数を、前記エントリ毎に計数するカウンタと、前記リプレース回数に応じて、前記データのリプレース方式を切り替える切替部とを備えるとともに、前記切替部は、前記リプレース回数が所定の閾値に達した場合に、前記リプレース方式を切り替えるキャッシュメモリ装置において、前記所定の閾値を変化させ、変化させた所定の閾値毎にキャッシュヒット率を算出し、算出された複数のキャッシュヒット率に基づいて、前記所定の閾値を決定する、処理をコンピュータに実行させるものである。開示の技術によれば、キャッシュメモリ装置におけるキャッシュヒット率の向上を実現することができる。以下、図面を参照して本発明の実施の形態を説明する。1一実施形態1-1一実施形態の構成図1は、本実施形態の一例としての情報処理装置1のハードウェアの構成例を示す図である。図1に示すように、情報処理装置1は、CPU2と、キャッシュメモリ装置3と、DRAMDynamicRAM等のRAMなどのメモリ6と、HDDHardDiskDrive等のI/OInputOutput装置7とを備える。CPU2は、情報処理装置1における種々の制御や演算を行なう演算処理装置であり、例えば、HDD等のI/O装置7に格納されたプログラムをメモリ6に展開して実行することにより、種々の機能を実現する。キャッシュメモリ装置3は、CPU2とメモリ6との間に備えられ、CPU2とメモリ6との間で転送されるデータ及びそのデータの参照情報を保持する。本実施形態においては、キャッシュメモリ装置3は、nWAYセットアソシアティブ方式を採用するものとして説明する。メモリ主記憶装置6は、種々のデータやプログラムを一時的に格納する記憶領域であって、CPU2がプログラムを実行する際に、データやプログラムを一時的に格納展開して用いる。なお、情報処理装置1には、メモリ6とキャッシュメモリ装置3との間の入出力制御を行なうメモリコントローラ図示省略が備えられても良い。I/O装置7は、例えば、HDD等の外部装置である。なお、情報処理装置1には、I/O装置7とCPU2との間の入出力制御を行なうI/Oコントローラ図示省略が備えられても良い。図2は、本実施形態の一例としてのnWAYセットアソシアティブ方式を採用するキャッシュメモリ装置3の構成例を示す図である。また、図3は、本実施形態の一例としてのキャッシュメモリ装置3によるキャッシュ管理の処理を説明するための図である。なお、図3においては、図の簡略化のため、キャッシュ制御部5の一部の構成要素の記載を省略している。キャッシュメモリ装置3は、キャッシュメモリ4と、キャッシュ制御部5とを備える。キャッシュメモリ4は、図2に示す如く、複数のキャッシュラインエントリ40-1~40-mを備える。なお、以下、キャッシュラインを示す符号としては、複数のキャッシュラインのうちの1つを特定する必要があるときには符号40-1~40-mを用いるが、任意のキャッシュラインを指すときには符号40を用いる。また、キャッシュメモリ4は、キャッシュライン40毎に、タグ41と、タグ41に対応付けられたデータ42と、キャッシュの状態、例えば、データ42の優先順位を表すステータス43とを含む少なくとも1つのWAYブロックを備える。本実施形態においては、キャッシュメモリ4は、キャッシュライン40-1~40-m毎に、タグ41、データ42、ステータス43を含むWAY1~nを備える。なお、キャッシュメモリ4は、メモリ6よりも高速なメモリであり、キャッシュメモリ4としては、例えば、SRAMStaticRAM等が挙げられる。キャッシュ制御部制御部,制御装置5は、CPU2からメモリ6への要求入力アドレスに応じて、キャッシュメモリ4に対するキャッシュ管理を行ない、得られたデータ42をCPU2に渡す。また、キャッシュ制御部5は、キャッシュメモリ4の各WAYに対してキャッシュのリプレースを行なう。キャッシュ制御部5は、処理部51と、アクセス順序管理部52と、カウンタ53と、リプレース対象WAY選択部54と、閾値決定部55とを備える。処理部51は、キャッシュ制御部5におけるキャッシュメモリ4に対するキャッシュ管理を行なうとともに、CPU2及びメモリ6に対するデータの受け渡しを行なう。また、処理部51は、リプレースを行なうキャッシュライン40を決定し、リプレースが発生することを示すリプレース通知を後述するリプレース対象WAY選択部54に出力するとともに、リプレース対象WAY選択部54によって選択されたリプレース対象のWAYに対して、キャッシュのリプレースを行なう。なお、以下、キャッシュのリプレースとは、リプレース対象のWAYに格納されたデータ42を、必要に応じてメモリ6へ書き込む処理ライトバック、及びメモリ6から読み出した、キャッシュに格納されるタグ41、データ42、及びステータス43を、リプレース対象のWAYに書き込む処理を含むものとする。なお、ライトバックの処理は、リプレース対象のWAYに格納されたデータ42のステータス43に応じて、行なわれない場合がある。ライトバックの処理が行なわれない状況としては、例えば、リプレース対象のWAYに格納されたデータ42が他のCPUのキャッシュにも格納されている場合Share;共有状態や、当該WAYが無効である場合Invalid;無効状態等が挙げられる。さらに、処理部51は、比較部511と、データ選択部512とを備える。比較部511は、CPU2からの要求入力アドレス21のうちのタグ、つまり1のタグ41を示す情報と、1のキャッシュライン40内の複数のWAY1~nにおけるタグ41とを比較する。そして、比較部511は、入力アドレス21のうちのタグに該当するタグ41がWAY1~nのうちのいずれかのWAYのタグ41にあった場合ヒットした場合に、当該タグ41に対応するWAYをデータ選択部512に出力する。また、比較部511は、ヒットした場合、及びヒットしなかった場合ミスの場合のいずれの場合においても、ヒット/ミスの情報を、比較を行なったキャッシュライン40を示す情報とともに後述する閾値決定部55に出力する。データ選択部512は、比較部511から入力されたヒットしたWAYの情報に基づいて、1のキャッシュライン40内の当該ヒットしたWAYから、データ42を選択する。そして、データ選択部512は、選択したデータ42をCPU2へ出力する。具体的には、図3に示す如く、キャッシュメモリ4では、CPU2からの要求入力アドレス21のうちのインデックス、つまり1のキャッシュライン40を示すエントリ情報に基づいて、複数のキャッシュライン40-1~40-mから1のキャッシュライン40が絞り込まれる選択される。なお、入力アドレス21のうちのインデックスには、例えば、キャッシュライン40-1~40-mの通し番号、つまりキャッシュライン40-1~40-mのうちの、先頭から何番目のキャッシュライン40かを示す番号値が設定される。処理部51は、比較部511により、入力アドレス21のうちのタグ、つまり1のタグ41を示す情報に基づいて、絞り込まれたキャッシュライン40内の複数のWAY1~nを検索する。そして、処理部51は、比較部511により、入力アドレス21のうちのタグに該当するタグ41を、絞り込まれたキャッシュライン40内の複数のWAY1~nにおけるタグ41から発見ヒットした場合に、データ選択部512により、当該タグ41に対応付けられたデータ42をCPU2に渡す。一方、処理部51は、入力アドレス21のうちのタグに該当するタグ41を発見しないミスした場合には、CPU2からの入力アドレス21に基づいて、メモリ6からデータを取得し、取得したデータをCPU2に渡す。また、このとき処理部51は、当該データを、絞り込まれたキャッシュライン40のうちの任意のWAYに、対応するタグ41及び当該データ42の優先順位を表すステータス43とともに格納リプレースする。また、処理部51は、入力アドレス21のうちのタグに該当するタグ41を発見しないミスした場合には、絞り込まれたキャッシュライン40のうちの任意のWAYをリプレース対象のWAYとして選択するために、リプレースが発生することを示すリプレース通知を、後述するリプレース対象WAY選択部54に出力する。なお、このリプレース通知は、絞り込まれたリプレース対象のキャッシュライン40の情報を含んでも良い。リプレース対象WAY選択部54からリプレース対象のWAYが入力されると、処理部51は、リプレース対象のWAYに対してキャッシュのリプレースを実行する。なお、入力アドレス21のうちのタグに該当するタグ41を発見ヒットし、当該タグ41に対応するWAYをアクセス参照した場合には、処理部51は、アクセスしたWAYについて、後述するアクセス順序管理部52が管理するアクセス順序LRU情報を更新する。また、入力アドレス21のうちのタグに該当するタグ41を発見せず、絞り込まれたキャッシュライン40のうちのリプレース対象のWAYにアクセスリプレースを行なった場合にも、処理部51は、アクセスしたWAYについて、後述するアクセス順序管理部52が管理するアクセス順序LRU情報を更新する。なお、図3においては、図の簡略化のため、処理部51からキャッシュメモリ4に対する、CPU2にデータ42を出力するための参照の信号線、並びにリプレース対象のWAYにリプレースを行なうための参照及び書き込みの信号線は、省略している。また、図3においては、図の簡略化のため、処理部51からアクセス順序管理部52に対する、アクセス順序LRU情報の更新の信号線は、省略している。図4は、本実施形態の一例としてのキャッシュメモリ装置3によるリプレース対象のWAYを選択する処理を説明するための図である。なお、図4においては、図の簡略化のため、キャッシュメモリ4の一部の構成要素及びキャッシュ制御部5の一部の構成要素の記載を省略している。アクセス順序管理部52は、キャッシュのリプレース対象のWAYを選択するための情報として、キャッシュライン40毎に、WAY1~nがアクセスされたアクセス順序LRU情報を格納し管理する。ここで、LRU情報は、キャッシュライン40内のWAY1~nがアクセスされた順序を示す情報である。LRU情報は、WAY1~nが処理部51によってヒットされ、データが参照取得された場合や、処理部51によってリプレースされた場合など、WAY1~nのキャッシュがアクセス参照、変更された場合に、処理部51によって更新される。アクセス順序管理部52では、図4に示す如く、CPU2からの要求入力アドレス21のうちのインデックス、つまり1のキャッシュライン40を示すエントリ情報によって、当該1のキャッシュライン40に対応するLRU情報が選択される。処理部51は、入力アドレス21のうちのインデックスによって指定されたキャッシュライン40において、WAY1~nのうちのいずれかのWAYのキャッシュにアクセス参照、変更した場合に、アクセス順序管理部52において上述の如く選択されているLRU情報を更新する。なお、アクセス順序管理部52において上述の如く選択されるLRU情報は、後述するリプレース対象WAY選択部54によるリプレース対象のWAYの選択の際に参照される。LRU情報としては、例えば、キャッシュライン40においてアクセスされたキャッシュのWAYの番号1~nを、最近のものから順に先頭から並べたものとすることができる。最近のものから順に先頭から並べた場合、処理部51によるLRU情報の更新は、新たにアクセスされたWAYの番号を、LRU情報のうちの先頭に移動されることにより行なうことができる。なお、LRU情報は上述したものに限定されず、例えば、WAY1~n毎に、最後にアクセスのあった時刻をタイムスタンプとして格納したものであっても良い。WAY1~n毎のタイムスタンプを格納する場合、LRU情報を用いる後述するリプレース対象WAY選択部54においては、LRU情報内のタイムスタンプに基づいて、最も古い過去の時刻にアクセスされたWAYを選択する処理を行なうことが好ましい。カウンタ53は、キャッシュのリプレース対象のWAYを選択するための情報として、キャッシュライン40毎にカウント値を格納し管理している。また、後述するリプレース対象WAY選択部54においてリプレース対象のWAYが選択される度に、リプレース対象のキャッシュライン40に対応するカウント値が、リプレース対象WAY選択部54によってカウントアップされる。つまり、カウンタ53は、各キャッシュライン40においてキャッシュがリプレースされるリプレース回数を、キャッシュライン40毎に計数する。なお、処理部51によってリプレース対象のWAYが実際にリプレースされるタイミングで、リプレース対象のキャッシュライン40に対応するカウント値が、処理部51によってカウントアップされても良い。また、カウンタ53では、図4に示す如く、CPU2からの要求入力アドレス21のうちのインデックス、つまり1のキャッシュライン40を示すエントリ情報によって、当該1のキャッシュライン40に対応するカウント値が選択される。リプレース対象WAY選択部54又は処理部51は、リプレース対象のWAYを選択する度又はリプレース対象のWAYをリプレースする度に、カウンタ53において上述の如く選択されているカウント値をカウントアップする。なお、図4においては、図の簡略化のため、リプレース対象WAY選択部54又は処理部51からカウンタ53に対する、カウント値のカウントアップを行なうための信号線は、省略している。なお、カウンタ53において選択されるカウント値は、リプレース対象WAY選択部54によるリプレース対象のWAYの選択の際に参照される。また、カウンタ53は、リプレース回数であるカウント値が所定の数と等しくなった場合、例えば、本実施形態においては、図5に示す如く、カウント値がキャッシュライン40におけるWAYの数nと等しくなった場合に、カウント値を0にリセットする。すなわち、本実施形態におけるカウンタ53は、0~n-1の値を繰り返すカウンタである。なお、所定の数は、上述したものに限定されず、キャッシュライン40におけるWAYの数nよりも小さな数或いは大きな数としても良い。リプレース対象WAY選択部54は、処理部51からリプレース通知を入力されると、カウンタ53に格納されているカウント値に基づいてリプレース方式を選択し、選択したリプレース方式に従って、リプレース対象のWAYを選択する。リプレース対象WAY選択部54は、切替部541と、ブロック選択部542とを備える。切替部541は、カウンタ53のカウント値リプレース回数を参照し、参照したカウント値に応じて、キャッシュのリプレース対象のWAYを選択するリプレース方式を切り替える。具体的には、切替部541は、後述する閾値決定部55によって決定される所定の閾値を用いて、カウント値が所定の閾値に達した場合に、リプレース方式を切り替える。そして、切替部541は、図4に示す如く、カウンタ53のカウント値リプレース回数に応じたリプレース方式を示す情報を、ブロック選択部542に出力する。なお、リプレース対象WAY選択部54が処理部51からのリプレース通知を入力されるとき、上述の如く、カウンタ53では、CPU2からの入力アドレス21によって、1のこの場合はリプレース対象のキャッシュライン40に対応するカウント値が選択されている。従って、処理部51からトリガとなるリプレース通知がリプレース対象WAY選択部54に入力されたとき、切替部541は、カウンタ53において選択されているカウント値を参照することで、リプレース対象のキャッシュライン40に対応するカウント値を取得することができる。ブロック選択部542は、切替部541からのリプレース方式を示す情報に基づいて、リプレース対象のWAYを選択し、選択したリプレース対象のWAYを示す情報を処理部51に出力する。図5は、本実施形態の一例としてのカウント値とWAY選択方式リプレース方式との対応関係を示す図である。本実施形態においては、リプレース方式には、優先順位方式とLRU方式とが含まれるが、これに限定されず、キャッシュメモリ装置3の使用態様に応じて、既知の種々の方式を含むことができる。図5に示すように、本実施形態において、切替部541により用いられる所定の閾値は、0及びxである。すなわち、本実施形態におけるリプレース方式は、カウント値が所定の閾値であるxに達した場合に、切替部541により、優先順位方式第1のリプレース方式からLRU方式第2のリプレース方式に切り替えられる。一方、カウント値が所定の閾値である0に達した場合、つまり、カウント値がキャッシュライン40におけるWAYの数nに達し、カウンタ53により0にリセットされたとき、切替部541により、LRU方式第2のリプレース方式から優先順位方式第1のリプレース方式に切り替えられる。従って、切替部541は、図5に示す如く、カウンタ53のカウント値リプレース回数に応じて、カウント値が0~x-1の間、つまりカウント値がx未満の場合には、キャッシュのリプレース方式として優先順位方式を示す情報を、ブロック選択部542に出力する。また、切替部541は、カウント値がx~n-1の間、つまりカウント値がx以上の場合には、キャッシュのリプレース方式としてLRU方式を示す情報を、ブロック選択部542に出力する。そして、ブロック選択部542は、切替部541から取得したリプレース方式に基づいて、リプレース対象のキャッシュライン40におけるリプレース対象のWAYを選択し、選択したリプレース対象のWAYを示す情報を処理部51に出力する。具体的には、リプレース対象のキャッシュライン40について、切替部541によりリプレース方式のうちの優先順位方式が選択された場合、ブロック選択部542は、リプレース対象のキャッシュライン40が備えるWAY1~nのうちのステータス43に基づいて、リプレース対象のWAYを選択する。以下、リプレース対象WAY選択部54によって実行されるリプレース対象のWAYの選択方式リプレース方式のうちの、優先順位方式について説明する。リプレース方式のうちの優先順位方式は、リプレース対象WAY選択部54ブロック選択部542が、リプレース対象のキャッシュライン40が備えるWAY1~nのうちのステータス43に応じた優先度に基づいて、リプレース対象のWAYを選択するものである。なお、ブロック選択部542が切替部541から優先順位方式を示す情報を入力されたとき、上述の如く、キャッシュメモリ4では、CPU2からの入力アドレス21によって、1のこの場合はリプレース対象のキャッシュライン40に対応するWAY1~nが選択されている。従って、ブロック選択部542が切替部541から優先順位方式を示す情報を入力されたとき、ブロック選択部542は、キャッシュメモリ4において選択されているWAY1~nの各ステータス43を参照することで、リプレース対象のキャッシュライン40に対応するステータス43を取得することができる。以下、ブロック選択部542が、リプレース対象のキャッシュライン40について、切替部541から優先順位方式を示す情報を入力された場合について説明する。ここで、各キャッシュ、つまり各WAY1~nに格納されるステータス43とは、例えばマルチプロセッサシステムで使用されるMESIプロトコルに代表されるものである。MESIプロトコルとは、MModified;変更、EExclusive;排他、SShared;共有、及びIInvalid;無効の4つのキャッシュステータスを採用するプロトコルである。以下、特定のプログラムやシステム構成、または実際のキャッシュヒット率測定などにより、上述したMESIプロトコルの各キャッシュステータスについて、例えば、キャッシュの優先度M、E、Sの順番で優先的にキャッシュを行なうと、キャッシュヒット率が向上することが分かっているものとする。なお、キャッシュステータスがI無効のWAYについては、そのWAYのデータが無効であることを示すため、キャッシュの優先度は設定していない。ステータス43として上述の如きMESIプロトコルを採用する場合、ブロック選択部542は、キャッシュの優先度の高いステータス43のキャッシュを優先的に各WAY1~nに格納するように、リプレース対象のWAYを選択する。換言すれば、ブロック選択部542は、リプレース対象のキャッシュライン40について、キャッシュの優先度の低いステータス43のキャッシュを優先的にリプレース対象のWAYとして選択する。つまり、ブロック選択部542は、各WAY1~nのステータス43と、上述したキャッシュの優先度とは逆の、リプレース対象の優先度S、E、Mの順番とに基づいて、リプレース対象のWAYを選択する。なお、ブロック選択部542は、キャッシュステータスがI無効のWAY、つまり使用されていない無駄になっているWAYを優先的にリプレース対象のWAYとして選択しても良い。つまり、キャッシュステータスがI無効のWAYを優先的にリプレース対象のWAYとする場合、ブロック選択部542は、各WAY1~nのステータス43と、リプレース対象の優先度I、S、E、Mの順番とに基づいて、リプレース対象のWAYを選択しても良い。なお、リプレース対象WAY選択部54は、リプレース対象のキャッシュライン40において、同一の優先度のキャッシュWAYからリプレース対象のWAYを選択する場合は、同一優先度のキャッシュの中から後述するLRU方式によりリプレース対象のWAYを選択する。例えば、リプレース対象WAY選択部54は、リプレース対象のキャッシュライン40内に、優先的にリプレース対象となるSのステータス43を持つWAYが複数含まれる場合、当該Sのステータス43を持つWAYの中からLRU方式によりリプレース対象のWAYを選択する。上述のように、リプレース対象WAY選択部54によって、ステータス43に応じた上述の如き優先度に基づいて、リプレース対象のWAYが選択されることにより、キャッシュヒット率の向上を実現することができる。なお、上述の如く、本実施形態においては、ステータス43としてMESIプロトコルのキャッシュステータスを採用したが、これに限定されるものではなく、他のプロトコルのキャッシュステータスを採用しても良い。また、データの利用頻度に応じて変化する値等、例えば、データの利用頻度に応じたキャッシュの優先度を表わす値などをステータス43として各WAY1~nに格納しても良い。次に、リプレース対象WAY選択部54によって実行されるリプレース対象のWAYの選択方式リプレース方式のうちの、LRU方式について説明する。リプレース対象のキャッシュライン40について、切替部541によりリプレース方式のうちのLRU方式が選択された場合、ブロック選択部542は、リプレース対象のWAYとして、リプレース対象のキャッシュライン40において最も古くアクセスされたWAYを選択する。つまり、ブロック選択部542は、切替部541からリプレース方式のうちのLRU方式を示す情報を入力されると、アクセス順序管理部52において選択されているLRU情報に基づいて、リプレース対象のキャッシュライン40において最も古くアクセスされたWAYをリプレース対象のWAYとして選択する。なお、ブロック選択部542が切替部541からLRU方式を示す情報を入力されたとき、上述の如く、アクセス順序管理部52では、CPU2からの入力アドレス21によって、1のこの場合はリプレース対象のキャッシュライン40に対応するLRU情報が選択されている。従って、ブロック選択部542が切替部541からLRU方式を示す情報を入力されたとき、ブロック選択部542は、アクセス順序管理部52において選択されているLRU情報を参照することで、リプレース対象のキャッシュライン40に対応するLRU情報を取得することができる。なお、上述の如く、アクセス順序管理部52が格納するLRU情報が、WAY1~n毎のタイムスタンプである場合には、リプレース対象WAY選択部54ブロック選択部542は、アクセス順序管理部52から取得するLRU情報内のタイムスタンプの中から最も古い過去の時刻を探すことが好ましい。これにより、リプレース対象WAY選択部54ブロック選択部542は、最も古い過去の時刻のタイムスタンプに対応するWAYをリプレース対象のWAYとして選択することができる。なお、リプレース対象WAY選択部54は、処理部51から、リプレース通知とともに絞り込まれたリプレース対象のキャッシュライン40の情報が入力されても良い。この場合、リプレース対象WAY選択部54は、選択されているカウント値やステータス情報43或いはLRU情報が、入力されたリプレース対象のキャッシュライン40に対応するものであるか否かを確認することができる。または、リプレース対象WAY選択部54は、入力されたリプレース対象のキャッシュライン40の情報に基づいて、カウント値と、ステータス情報43若しくはLRU情報とを取得しても良い。つまり、リプレース対象WAY選択部54は、CPU2からの入力アドレス21に基づいて選択されているカウント値やステータス情報43或いはLRU情報を用いず、処理部51から入力されたリプレース対象のキャッシュライン40の情報に基づいて、これらの情報を取得しても良い。次に、上述の如く構成されたキャッシュメモリ装置3におけるリプレース対象WAY選択部54による処理を、図6のフローチャートを参照しながら説明する。図6は、本実施形態の一例としてのリプレース対象WAY選択部54の処理を説明するためのフローチャートである。はじめに、リプレース対象WAY選択部54が処理部51からリプレース通知を受けると、切替部541により、カウンタ53のカウント値と、所定の閾値xとが比較され、カウント値が所定の閾値x未満であるか否かが判断されるステップS1。なお、以下、図6に示すフローチャートにおけるカウント値は、カウンタ53において選択されているリプレース対象のキャッシュライン40に対応するものであり、所定の閾値xは、リプレース対象のキャッシュライン40に対応するものである。切替部541による比較の結果、カウント値が所定の閾値x未満であった場合ステップS1のYesルート、切替部541により、優先順位方式を示す情報がブロック選択部542に出力される。ブロック選択部542に優先順位方式を示す情報が入力されると、ブロック選択部542により、上述した優先順位方式によるリプレース対象のWAYの選択が行なわれステップS2、選択されたWAYを示す情報が処理部51に出力される。一方、ステップS1の切替部541による比較の結果、カウント値が所定の閾値x以上であった場合ステップS1のNoルート参照、切替部541により、LRU方式を示す情報がブロック選択部542に出力される。ブロック選択部542にLRU方式を示す情報が入力されると、ブロック選択部542により、上述したLRU方式によるリプレース対象のWAYの選択が行なわれステップS3、選択されたWAYを示す情報が処理部51に出力される。ステップS2又はステップS3において、ブロック選択部542によりリプレース対象のWAYが選択されると、リプレース対象WAY選択部54により、カウンタ53のカウント値が判定され、カウント値がn-1未満であるか否かが判断されるステップS4。カウント値がWAYの数-1、つまりn-1未満であった場合ステップS4のYesルート、リプレース対象WAY選択部54により、当該カウント値に1が加算されステップS5、リプレース対象WAY選択部54の処理が終了する。一方、カウント値がWAYの数-1、つまりn-1と等しい場合ステップS4のNoルート、リプレース対象WAY選択部54により、当該カウント値が0にリセットされステップS6、リプレース対象WAY選択部54の処理が終了する。閾値決定部55は、リプレース方式の切り替えの判断基準となる所定の閾値を決定し、決定した所定の閾値を切替部541へ出力する。本実施形態においては、閾値決定部55は、所定の閾値xについて、xの値を動的に変化させてキャッシュヒット率を算出し、算出されたキャッシュヒット率に基づいて所定の閾値を決定し、切替部541へ出力する。具体的には、閾値決定部55は、xの値を所定の時間毎に変化させ、変化させた値を切替部541に出力するとともに、処理部51の比較部511から出力されるヒット/ミスの情報に基づいて、xの値毎にキャッシュヒット率を算出する。そして、閾値決定部55は、キャッシュヒット率が最大になったときのxの値を所定の閾値として決定し、切替部541へ出力する。上述のように、閾値決定部55によれば、xの値を動的に変化させることにより、優先順位方式とLRU方式との2つの最適比率を動的に設定することが可能となる。なお、上述したように、所定の閾値には、0及びxがあり、閾値決定部55は、所定の閾値xの値を決定する。一方、所定の閾値0については、閾値決定部55により切替部541に出力されなくても良い。つまり、本実施形態においては、切替部541は、カウント値がx未満の場合、及びx以上の場合のいずれかの場合に応じて、リプレース方式を切り替える。従って、カウント値がx以上であるn-1から、x未満である0に変わったとき、必然的に切替部55によりリプレース方式が切り替えられる。上述のことから、閾値決定部55は、所定の閾値0及びxのうちのxの値を決定し、決定した所定の閾値を切替部541へ出力するだけで良い。なお、閾値決定部55は、所定の閾値をキャッシュライン40毎に設定することができる。つまり、閾値決定部55は、所定の閾値を変化させてキャッシュライン40毎のキャッシュヒット率を算出し、算出された各キャッシュヒット率に基づいて、キャッシュライン40毎に所定の閾値を決定することができる。この場合、所定の閾値をキャッシュライン40毎に柔軟に設定することができるため、特定の種類のキャッシュが、あるキャッシュライン40内に偏って格納されたとしても、キャッシュヒット率が最大になる閾値を設定することができる。また、閾値決定部55は、キャッシュメモリ4全体で1つの所定の閾値を設定しても良い。閾値決定部55によって決定された所定の閾値は、切替部541又は閾値決定部55のいずれかに備えられた図示しないレジスタ等に保持されても良い。なお、閾値決定部55としての機能は、ハードウェアにより実現されても良いし、例えば、システムサービスプロセッサなどの外部設定ノードによって実現されても良い。また、閾値決定部55を設けずに、所定の閾値を固定として予め切替部541に設定されても良いし、上述した外部設定ノードによって任意のタイミングで切替部541に設定されても良い。上述のように、リプレース対象WAY選択部54により、キャッシュステータスに設けられた優先順位に応じてリプレース対象のWAYを選択する優先順位方式と、キャッシュステータスに関係なくアクセスされたのが最も古いWAYを選択するLRU方式とが併用される。そして、リプレース対象WAY選択部54により実行されるリプレース方式の比率が、閾値決定部55によって最適な比率に設定されることにより、キャッシュヒット率の向上が実現される。次に、上述の如く構成されたキャッシュメモリ装置3における閾値決定部55の処理について説明する。図7は、本実施形態の一例としての閾値決定部55の処理を説明するためのフローチャートである。はじめに、閾値決定部55により、所定の閾値xに初期値Pが設定されるとともに、計測時間Tが設定されるステップS11。ここで、初期値Pとは、カウンタ53のカウント値がとり得る範囲内の任意の値であり、本実施形態においては、0~n-1の範囲内の任意の値である。また、計測時間Tとは、所定の閾値xを切替部541に出力設定した後に、処理部51からのヒット/ミスの情報を計測する時間である。計測時間Tとしては、CPU2からメモリ6へのアクセス頻度や、キャッシュヒット率の計算に用いるヒット/ミスの情報の要求母数等に応じて、例えば、数秒程度の時間を設定しても良いし、数分~数時間程度の時間を設定しても良い。次に、閾値決定部55により、所定の閾値xについての処理部51からのヒット/ミスの情報が計測時間Tの間計測され、所定の閾値xについてのキャッシュヒット率が計算される。なお、キャッシュヒット率は、例えば、計測時間Tにおけるヒット数から計測時間Tにおけるヒット数及びミス数を除算することにより求められる。また、閾値決定部55により、所定の閾値をx-1に変化させた場合、及びx1に変化させた場合の、それぞれのキャッシュヒット率も計算されるステップS12。すなわち、ステップS12においては、所定の閾値xについてのキャッシュヒット率の他に、閾値決定部55により、所定の閾値x-1についての処理部51からのヒット/ミスの情報が計測時間Tの間計測され、所定の閾値x-1についてのキャッシュヒット率も計算される。また、閾値決定部55により、所定の閾値x1についての処理部51からのヒット/ミスの情報が計測時間Tの間計測され、所定の閾値x1についてのキャッシュヒット率も計算される。なお、ステップS11において、初期値Pを設定された所定の閾値xの値が、カウンタ53のカウント値がとり得る範囲内の値のうちの、最小又は最大の値であった場合、ステップS12におけるキャッシュヒット率の計算は、一部が実行されない。例えば、所定の閾値xの値が、本実施形態におけるカウンタ53のカウント値がとり得る範囲内0~n-1の値のうちの、最小の値0であった場合には、ステップS12において、キャッシュヒット率x-1の計算は実行されない。同様に、所定の閾値xの値が、本実施形態におけるカウンタ53のカウント値がとり得る範囲内0~n-1の値のうちの、最大の値n-1であった場合には、ステップS12において、キャッシュヒット率x1の計算は実行されない。ここで、図7におけるキャッシュヒット率計算xの文言は、所定の閾値xについてのキャッシュヒット率が、上述の如く計算されることを示す。括弧内がx-1又はx1の場合も同様に、所定の閾値x-1又はx1についてのキャッシュヒット率が、上述の如く計算されることを示す。ステップS12において、所定の閾値x、x-1、x1についてのキャッシュヒット率がそれぞれ計算されると、閾値決定部55により、これらのキャッシュヒット率x、x-1、x1が比較されるステップS13。なお、上述の如く、所定の閾値xの値が、カウンタ53のカウント値がとり得る範囲内の値のうちの、最小又は最大の値であった場合には、ステップS12において求められたキャッシュヒット率のみを用いて、閾値決定部55による比較が実行される。以下、所定の閾値を括弧で括った、x、x-1、x1は、その所定の閾値についてのキャッシュヒット率を示すものとする。キャッシュヒット率の比較により、xがx-1以上、且つx1以上であった場合ステップS13のx≧x-1且つx≧x1ルート、閾値決定部55により、xが所定の閾値に決定されステップS14、閾値決定部55による処理が終了する。すなわち、所定の閾値をxとした場合の方が、所定の閾値をxの前後の値とした場合よりもキャッシュヒット率が高い場合、つまり、所定の閾値xのときキャッシュヒット率が最大になると考えられる場合、所定の閾値をxとすることで、優先順位方式及びLRU方式の切り替えの比率が最適比率となる。従って、所定の閾値をxとした場合の方が、所定の閾値をxの前後の値とした場合よりもキャッシュヒット率が高い場合、閾値決定部55により、xが所定の閾値に決定される。一方、ステップS13において、キャッシュヒット率の比較により、xがx-1未満であった場合ステップS13のx<x-1ルート、閾値決定部55により、所定の閾値xから1を減じられるデクリメントステップS15。そして、閾値決定部55により、ステップS15においてデクリメントされた所定の閾値xがX0と等しいか否かが判断されるステップS16。なお、X0とは、カウンタ53のカウント値がとり得る範囲内の値のうちの、最小の値であり、本実施形態においては、カウンタ53のカウント値がとり得る0~n-1の範囲内の値のうちの、最小の値0である。ステップS16において、所定の閾値xがX0と等しいと判断された場合ステップS16のYesルート、閾値決定部55により、x、つまり、ステップS15においてデクリメントされた値が所定の閾値に決定されステップS14、閾値決定部55による処理が終了する。すなわち、ステップS16において、所定の閾値xがX0と等しいと判断された場合、所定の閾値xは、カウンタ53のカウント値がとり得る範囲内の値のうちの、最小の値であるため、現在のx未満の値について、キャッシュヒット率を求めることができない。つまり、キャッシュヒット率の大小を比較した結果、ステップS15において変更されたxの値が、カウンタ53のカウント値がとり得る範囲内の値のうちの、最小の値になったとき、xを所定の閾値に決定することで、キャッシュヒット率xが最大になるものと考えられる。従って、ステップS16において、閾値決定部55により、所定の閾値xがX0と等しいと判断された場合には、現在のxの値が所定の閾値に決定されステップS14、閾値決定部55による処理が終了する。一方、ステップS16において、所定の閾値xがX0とは等しくないと判断された場合ステップS16のNoルート、閾値決定部55により、所定の閾値x-1についてのキャッシュヒット率が、上述の如く計算されるステップS17。なお、ステップS17において計算されるキャッシュヒット率は、ステップS15でデクリメントされた所定の閾値xから、さらに1を減じたx-1について行なわれる。ステップS17において、所定の閾値x-1についてのキャッシュヒット率が計算されると、閾値決定部55により、キャッシュヒット率xと、x-1とが比較され、xがx-1以上であるか否かが判断されるステップS18。キャッシュヒット率の比較により、xがx-1未満であった場合ステップS18のNoルート、ステップS15の処理に戻る。一方、ステップS18において、キャッシュヒット率の比較により、xがx-1以上であった場合ステップS18のYesルート、閾値決定部55により、x、つまり、ステップS15においてデクリメントされた値が所定の閾値に決定されステップS14、閾値決定部55による処理が終了する。また、ステップS13において、キャッシュヒット率の比較により、xがx1未満であった場合ステップS13のx<x1ルート、閾値決定部55により、所定の閾値xに1が加算されるインクリメントステップS19。そして、閾値決定部55により、ステップS19においてインクリメントされた所定の閾値xがXnと等しいか否かが判断されるステップS20。なお、Xnとは、カウンタ53のカウント値がとり得る範囲内の値のうちの、最大の値であり、本実施形態においては、カウンタ53のカウント値がとり得る0~n-1の範囲内の値のうちの、最大の値n-1である。ステップS20において、所定の閾値xがXnと等しいと判断された場合ステップS20のYesルート、閾値決定部55により、x、つまり、ステップS19においてインクリメントされた値が所定の閾値に決定されステップS14、閾値決定部55による処理が終了する。すなわち、ステップS20において、所定の閾値xがXnと等しいと判断された場合、所定の閾値xは、カウンタ53のカウント値がとり得る範囲内の値のうちの、最大の値であるため、現在のxより大きな値について、キャッシュヒット率を求めることができない。つまり、キャッシュヒット率の大小を比較した結果、ステップS19において変更されたxの値が、カウンタ53のカウント値がとり得る範囲内の値のうちの、最大の値になったとき、xを所定の閾値に決定することで、キャッシュヒット率xが最大になるものと考えられる。従って、ステップS20において、閾値決定部55により、所定の閾値xがXnと等しいと判断された場合には、現在のxの値が所定の閾値に決定されステップS14、閾値決定部55による処理が終了する。一方、ステップS20において、所定の閾値xがXnとは等しくないと判断された場合ステップS20のNoルート、所定の閾値x1についてのキャッシュヒット率が、上述の如く計算されるステップS21。なお、ステップS21において計算されるキャッシュヒット率は、ステップS19でインクリメントされた所定の閾値xに、さらに1を加算したx1について行なわれる。ステップS21において、所定の閾値x1についてのキャッシュヒット率が計算されると、閾値決定部55により、キャッシュヒット率xと、x1とが比較され、xがx1以上であるか否かが判断されるステップS22。キャッシュヒット率の比較により、xがx1未満であった場合ステップS22のNoルート、ステップS19の処理に戻る。一方、ステップS22において、キャッシュヒット率の比較により、xがx1以上であった場合ステップS22のYesルート、閾値決定部55により、x、つまり、ステップS19においてインクリメントされた値が所定の閾値に決定されステップS14、閾値決定部55による処理が終了する。なお、上述したステップS13において、キャッシュヒット率の比較により、xがx-1未満であり、且つx1未満であった場合には、閾値決定部55により、x-1及びx1のうちのキャッシュヒット率が大きい方が選択される。そして、閾値決定部55により、x-1が選択された場合には、ステップS15の処理に移行し、x1が選択された場合には、ステップS19の処理に移行する。上述のように、閾値決定部55は、所定の閾値xを変化させ、変化させた所定の閾値毎にキャッシュヒット率を算出し、算出された複数のキャッシュヒット率に基づいて所定の閾値を決定し、切替部541へ出力する。また、上述のように、閾値決定部55によるキャッシュヒット率を算出する処理は、所定の閾値xを所定の時間毎に変化させ、変化させた所定の閾値xを切替部541に設定すべく出力されることにより行なわれる。そして、閾値決定部55によるキャッシュヒット率を算出する処理は、変化させた所定の閾値xに基づいて切替部541によりリプレース方式が切り替えられる状態において、処理部51から出力されるヒット/ミスの情報に基づいて、所定の閾値毎にキャッシュヒット率を算出することにより行なわれる。さらに、上述のように、閾値決定部55による所定の閾値xを決定する処理は、複数のキャッシュヒット率の中から最大のキャッシュヒット率を選択し、最大のキャッシュヒット率が算出されたときの所定の閾値xを、切替部541に設定すべき所定の閾値xとして決定することにより行なわれる。なお、上述したステップS11~ステップS22の処理は、閾値決定部55により、キャッシュライン40毎に個別に所定の閾値を決定すべく、キャッシュライン40毎に独立して行なわれても良いし、キャッシュメモリ4全体で1つの所定の閾値を決定すべく行なわれても良い。また、キャッシュライン40毎に個別に所定の閾値が決定される場合、上述したステップS11~ステップS22の処理は、キャッシュライン40毎に並行して実施されても良いし、例えばキャッシュライン40-1から40-mまで1ラインずつ順に実施されても良い。なお、キャッシュライン40毎に個別に所定の閾値が決定される場合、閾値決定部55は、比較部511からヒット/ミスの情報とともに入力される、当該ヒット/ミスが発生したキャッシュライン40の情報に基づいて、ヒット/ミスの情報を集計するキャッシュライン40を特定することができる。また、上述したステップS11~ステップS22の処理は、情報処理装置1の起動時、所定のタイミング、または所定の間隔で、閾値決定部55により実行される。なお、閾値決定部55により決定された所定の閾値xは、次回の閾値決定部55による所定の閾値の決定の際に、初期値Pとして用いられても良い。このように、本実施形態の一例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、各キャッシュライン40におけるWAYのリプレース回数を計数するカウンタ53と、カウント値で示されるリプレース回数に応じて、WAYのリプレース方式を切り替える切替部541とが備えられる。これにより、切替部541によって、リプレース回数に応じて、例えば優先順位方式からLRU方式に切り替えることができる。従って、図10a~cを用いて上述した優先順位方式のみを行なう場合とは異なり、優先度の高いキャッシュがキャッシュライン40を占めないようにリプレース方式を切り替えることができるため、キャッシュヒット率の向上を実現することができる。また、キャッシュライン全体を有効に使用することができる。さらに、特定のステータスを持つキャッシュの数がある閾値を超えた場合に、LRU方式か優先順位方式かのリプレース方式を切り替える上述の如き既知の手法とは異なり、特定のステータスを持つキャッシュの数に関係なく、確実にカウンタ53におけるリプレースの実行回数がカウントアップされる。従って、特定のステータスを持つキャッシュの数が閾値をいつまでも超えないことによるキャッシュヒット率の低下を抑制することができる。また、本実施形態の一例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、切替部541により、カウント値で示されるリプレース回数が所定の閾値xに達した場合に、リプレース方式が切り替えられる。また、上述の如くカウンタ53により、キャッシュライン40毎のリプレース回数が計数される。これにより、特定のステータスを持つキャッシュの数がある閾値を超えた場合にリプレース方式を切り替える上述の如き既知の手法とは異なり、例えば、優先順位方式によるリプレース回数が所定の閾値xに達した場合に、確実に他のリプレース方式例えばLRU方式に切り替えることができる。すなわち、例えば、リプレース回数が所定の閾値xまでは優先順位方式によるリプレースを行ない、所定の閾値xに達した場合にLRU方式によるリプレースに切り替えるといった制御が可能となる。従って、リプレース回数が所定の閾値に達した場合に、例えば優先順位方式からLRU方式に確実に切り替えられるため、優先順位の高いキャッシュであるが時間的に古いものが残らず、キャッシュの時間的局所性の観点から、キャッシュヒット率の向上を実現することができる。また、優先順位方式によって実質的にエントリ数が少なくなっていても、LRU方式に切り替えられることで、優先順位の低いキャッシュ種が連続してキャッシュメモリに格納される対象になった場合に、優先順位の高いキャッシュであるが時間的に古いものがリプレース対象となる。従って、リプレース回数が所定の閾値に達した場合、つまり所定の閾値xを境に、優先順位方式により実質的に減少したエントリ数を、LRU方式により実質的に増加させることができる。さらに、本実施形態の一例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、所定の閾値xを決定する閾値決定部55がさらに備えられる。また、閾値決定部55により、所定の閾値xを変化させてキャッシュヒット率が算出され、算出されたキャッシュヒット率に基づいて、所定の閾値xが決定される。これにより、キャッシュメモリ4において設定される所定の閾値xの値を、キャッシュライン40について最適な値とすることができ、キャッシュヒット率の向上を実現することができる。また、本実施形態の一例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、閾値決定部55により、所定の閾値xを変化させてキャッシュライン40毎のキャッシュヒット率が算出され、算出された各キャッシュヒット率に基づいて、キャッシュライン40毎に所定の閾値xが決定される。これにより、キャッシュライン40によって格納されるキャッシュの種類に偏りが生じ、特定の種類のキャッシュが、あるキャッシュライン40内に偏って格納されていても、キャッシュライン40毎にキャッシュヒット率が算出され、所定の閾値xが設定される。すなわち、閾値決定部55により、キャッシュライン40に格納されるキャッシュの種類の偏りに応じて、キャッシュライン40毎に柔軟に所定の閾値xが設定される。従って、キャッシュヒット率の向上を実現することができる。さらに、本実施形態の一例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、カウンタ53により、カウント値で示されるリプレース回数が所定の数、例えばキャッシュライン40におけるWAYの数と等しくなった場合に、リプレース回数が0にリセットされる。これにより、所定の閾値xは、カウンタ53のカウント値がとり得る範囲内の値、例えば、本実施形態においては、0~n-1のうちの任意の値となる。一方、特定のステータスを持つキャッシュの数がある閾値を超えた場合に、リプレース方式を切り替える上述の如き既知の手法では、閾値の設定値は、理論上キャッシュラインの数だけ存在し、CPUのキャッシュメモリが年々大容量となってきている現在は最適なヒット率となる閾値を設定することは容易ではない。従って、上述のように、本実施形態の一例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、特定のステータスを持つキャッシュの数がある閾値を超えた場合に、リプレース方式を切り替える上述の如き既知の手法よりも容易に、最適な所定の閾値を決定することができる。2第1変形例上述した本実施形態においては、リプレース方式として、優先順位方式及びLRU方式を採用して説明したが、これに限定されず、ラウンドロビン方式やランダム方式など、既知のリプレース方式を採用することができる。例えば、キャッシュメモリ装置3は、切替部541により、所定の閾値に応じて優先順位方式とラウンドロビン方式或いはランダム方式とが切り替えられるように構成されても良い。また、キャッシュメモリ装置3は、複数例えば3つの所定の閾値0、x1、及びx2を用いて、切替部541により、カウント値が0~x1-1の場合は第1のリプレース方式、x1~x2-1の場合は第2のリプレース方式、x2~n-1の場合は第3のリプレース方式が選択されるように構成されても良い。なお、3つのリプレース方式を切り替える場合、所定の閾値x1及びx2の値は、閾値決定部55により、上述した図7若しくは後述する図9に示すフローチャートに従って、順に決定されても良いし、システムサービスプロセッサ等の外部設定ノードにより、決定されても良い。以下、本第1変形例における、閾値決定部55により所定の閾値x1及びx2が決定された場合の、リプレース対象WAY選択部54による第1~第3のリプレース方式の切り替え処理について説明する。図8は、本実施形態の変形例としてのリプレース対象WAY選択部54の処理を説明するためのフローチャートである。はじめに、リプレース対象WAY選択部54が処理部51からリプレース通知を受けると、切替部541により、カウンタ53のカウント値と、所定の閾値x1、x2とが比較されるステップT1。なお、以下、図8に示すフローチャートにおけるカウント値は、カウンタ53において選択されているリプレース対象のキャッシュライン40に対応するものであり、所定の閾値x1、x2は、リプレース対象のキャッシュライン40に対応するものである。また、所定の閾値には、x1<x2の関係があるものとする。切替部541による比較の結果、カウント値が所定の閾値x1未満であった場合ステップT1のカウント値<所定の閾値x1ルート、切替部541により、第1のリプレース方式を示す情報がブロック選択部542に出力される。ブロック選択部542に第1のリプレース方式を示す情報が入力されると、ブロック選択部542により、第1のリプレース方式によるリプレース対象のWAYの選択が行なわれステップT2、選択されたWAYを示す情報が処理部51に出力される。一方、ステップT1の切替部541による比較の結果、カウント値が所定の閾値x1以上であり、且つ、所定の閾値x2未満であった場合ステップT1のカウント値≧所定の閾値x1且つカウント値<所定の閾値x2ルート参照、切替部541により、第2のリプレース方式を示す情報がブロック選択部542に出力される。ブロック選択部542に第2のリプレース方式を示す情報が入力されると、ブロック選択部542により、第2のリプレース方式によるリプレース対象のWAYの選択が行なわれステップT3、選択されたWAYを示す情報が処理部51に出力される。また、切替部541による比較の結果、カウント値が所定の閾値x2以上であった場合ステップT1のカウント値≧所定の閾値x2ルート、切替部541により、第3のリプレース方式を示す情報がブロック選択部542に出力される。ブロック選択部542に第3のリプレース方式を示す情報が入力されると、ブロック選択部542により、第3のリプレース方式によるリプレース対象のWAYの選択が行なわれステップT4、選択されたWAYを示す情報が処理部51に出力される。ステップT2~ステップT4のいずれかにおいて、ブロック選択部542によりリプレース対象のWAYが選択されると、リプレース対象WAY選択部54により、カウンタ53のカウント値が判定され、カウント値がn-1未満であるか否かが判断されるステップT5。カウント値がWAYの数-1、つまりn-1未満であった場合ステップT5のYesルート、リプレース対象WAY選択部54により、当該カウント値に1が加算されステップT6、リプレース対象WAY選択部54の処理が終了する。一方、カウント値がWAYの数-1、つまりn-1と等しい場合ステップT5のNoルート、リプレース対象WAY選択部54により、当該カウント値が0にリセットされステップT7、リプレース対象WAY選択部54の処理が終了する。このように、本第1変形例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、本実施形態と同様の効果が得られるほか、優先順位方式及びLRU方式に限定されず、リプレース対象WAY選択部54によって他のリプレース方式を切り替えることができる。また、3つ以上のリプレース方式をリプレース対象WAY選択部54によって切り替えることができるため、使用態様に応じた所定の閾値x1、x2の設定により、最適なリプレース方式を選択することができ、キャッシュヒット率の向上を実現することができる。3第2変形例上述した本実施形態及び第1変形例においては、閾値決定部55による所定の閾値xの決定は、図7に示すフローチャートに従っていたが、これに限定されず、例えば、図9に示すフローチャートに従って行なわれても良い。以下、本第2変形例における、閾値決定部55による所定の閾値xの決定処理について説明する。図9は、本実施形態の変形例としての閾値決定部55の処理を説明するためのフローチャートである。はじめに、閾値決定部55により、所定の閾値xに初期値0が設定されるとともに、計測時間Tが設定されるステップT11。ここで、初期値0とは、カウンタ53のカウント値がとり得る範囲内の値のうちの、最小の値であり、本実施形態においては、カウンタ53のカウント値がとり得る0~n-1の範囲内の値のうちの、最小の値0である。また、計測時間Tは、図7を参照して説明したものと同様である。次に、閾値決定部55により、xmaxに0が設定され、xmaxにNullが設定されるとともに、最大のxの値Xnが設定されるステップT12。なお、xmaxとは、最大のキャッシュヒット率である。また、xmaxとは、最大のキャッシュヒット率が得られたときの所定の閾値xの値である。さらに、Xnとは、カウンタ53のカウント値がとり得る範囲内の値のうちの、最大の値であり、本実施形態においては、カウンタ53のカウント値がとり得る0~n-1の範囲内の値のうちの、最大の値n-1である。そして、閾値決定部55により、所定の閾値xについての処理部51からのヒット/ミスの情報が計測時間Tの間計測され、所定の閾値xについてのキャッシュヒット率が計算されるステップT13。なお、キャッシュヒット率は、図7を参照しながら既述の如く、例えば、計測時間Tにおけるヒット数から計測時間Tにおけるヒット数及びミス数を除算することにより求められる。また、図9におけるキャッシュヒット率計算xの文言は、所定の閾値xについてのキャッシュヒット率が、上述の如く計算されることを示す。ステップT13において、所定の閾値xについてのキャッシュヒット率が計算されると、閾値決定部55により、キャッシュヒット率xと、最大のキャッシュヒット率xmaxとが比較され、xがxmaxよりも大きいか否かが判断されるステップT14。以下、所定の閾値を括弧で括ったxは、所定の閾値xについてのキャッシュヒット率を示すものとする。キャッシュヒット率の比較により、xがxmaxよりも大きい場合ステップT14のYesルート、閾値決定部55により、最大のキャッシュヒット率xmaxにxが設定され、xmaxにxが設定されるステップT15。すなわち、xがxmaxよりも大きい場合、閾値決定部55により、xが最大のキャッシュヒット率であると判断され、xmaxがxの値に更新されるとともに、xmaxが、最大のキャッシュヒット率xが得られたときの所定の閾値xに更新される。そして、閾値決定部55により、xがXnと等しいか否かが判断されステップT16、x=Xnであった場合ステップT16のYesルート、閾値決定部55により、xmaxの値が所定の閾値xに設定されステップT17、閾値決定部55による処理が終了する。すなわち、x=Xnであった場合、閾値決定部55により、カウンタ53のカウント値がとり得る範囲内の全ての値に所定の閾値xの値を設定し、キャッシュヒット率の比較が行なわれたと判断され、最終的にxmaxに設定されている値が、所定の閾値xに設定される。一方、ステップT16におけるxがXnと等しいか否かの判断において、x=Xnではなかった場合ステップT16のNoルート、閾値決定部55により、xに1が加算インクリメントされステップT18、ステップT13の処理に移行する。また、ステップT14におけるキャッシュヒット率の比較により、xがxmaxよりも大きくなかった場合ステップT14のNoルート、閾値決定部55により、ステップT15の処理をスキップされ、ステップT16の処理に移行する。上述のように、本第2変形例における閾値決定部55によっても、図7を用いて説明した場合と同様に、キャッシュヒット率を算出する処理及び所定の閾値を決定する処理が実行され、所定の閾値xが決定される。すなわち、本第2変形例における閾値決定部55によるキャッシュヒット率を算出する処理も、図7を用いて説明した場合と同様に、所定の閾値xを所定の時間毎に変化させ、変化させた所定の閾値xを切替部541に設定すべく出力されることにより行なわれる。そして、変化させた所定の閾値xに基づいて切替部541によりリプレース方式が切り替えられる状態において、処理部51から出力されるヒット/ミスの情報に基づいて、所定の閾値毎にキャッシュヒット率を算出することにより行なわれる。また、本第2変形例における閾値決定部55による所定の閾値xを決定する処理も、図7を用いて説明した場合と同様に、複数のキャッシュヒット率の中から最大のキャッシュヒット率を選択し、最大のキャッシュヒット率が算出されたときの所定の閾値xを、切替部541に設定すべき所定の閾値xとして決定することにより行なわれる。なお、上述したステップT11~ステップT18の処理も、図7に示すステップS11~ステップS22の処理と同様に、閾値決定部55により、キャッシュライン40毎に個別に所定の閾値を決定すべく、キャッシュライン40毎に独立して行なわれても良いし、キャッシュメモリ4全体で1つの所定の閾値を決定すべく行なわれても良い。また、キャッシュライン40毎に個別に所定の閾値が決定される場合、上述したステップT11~ステップT18の処理は、キャッシュライン40毎に並行して実施されても良いし、例えばキャッシュライン40-1から40-mまで1ラインずつ順に実施されても良い。なお、キャッシュライン40毎に個別に所定の閾値が決定される場合、閾値決定部55は、比較部511からヒット/ミスの情報とともに入力される、当該ヒット/ミスが発生したキャッシュライン40の情報に基づいて、ヒット/ミスの情報を集計するキャッシュライン40を特定することができる。また、上述したステップT11~ステップT18の処理は、情報処理装置1の起動時、所定のタイミング、または所定の間隔で、閾値決定部55により実行される。上述のように、本第2変形例としての閾値決定部55によれば、カウンタ53のカウント値がとり得る範囲内のうちの最小の値から最大の値まで、所定の閾値xがインクリメントされ、その都度キャッシュヒット率が計算される。そして、閾値決定部55により、最大のキャッシュヒット率及びそのときのxの値が、xmax及びxmaxとして記憶されるため、カウンタ53のカウント値がとり得る範囲内について、確実に、所定の閾値xを決定することができる。なお、ステップT11において所定の閾値xに設定する初期値を、カウンタ53のカウント値がとり得る範囲内の値のうちの、最大の値、つまり、本実施形態においては、n-1としても良い。なお、この場合、ステップT12において設定されるXnは、カウンタ53のカウント値がとり得る範囲内の値のうちの、最小の値、つまり、本実施形態においては、0とする。また、ステップT18においては、閾値決定部55により、xから1が減算デクリメントされる。このように、本第2変形例としてのキャッシュメモリ装置3のキャッシュ制御部5によれば、本実施形態及び第1実施形態と同様の効果が得られるほか、カウンタ53のカウント値がとり得る範囲内の値から、キャッシュヒット率が最大となる値を、所定の閾値xとして確実に決定することができる。例えば、ある所定の閾値x及びその前後の閾値についてのキャッシュヒット率が、ある所定の閾値xについて極大を示すものであった場合でも、所定の閾値として設定可能な範囲内において、他にキャッシュヒット率が最大となる所定の閾値が存在する場合がある。この場合でも、本第2変形例としての閾値決定部55によれば、極大値を所定の閾値xに決定せずに、所定の閾値として設定可能な範囲内を全て検証し、最大となる値を所定の閾値に決定することができる。従って、閾値決定部55により、最適な所定の閾値を決定することができ、キャッシュヒット率の向上を実現することができる。4その他以上、本発明の好ましい実施形態及び変形例について詳述したが、本発明は、かかる特定の実施形態及び変形例に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。例えば、図2~図4に示す切替部541は、リプレース対象WAY選択部54から分離して、カウンタ53とリプレース対象WAY選択部54との間に備えられても良い。また、本実施形態及び本変形例の一例としてのキャッシュメモリ装置3は、セットアソシアティブ方式を採用するものとして説明したが、これに限定されるものではなく、例えば、フルアソシアティブ方式を採用するものであっても良い。例えば、キャッシュメモリ装置3がフルアソシアティブ方式を採用する場合、複数のエントリキャッシュラインからリプレース対象のエントリを選択する処理に、上述の如きリプレース対象WAY選択部54による、リプレース対象のWAYを選択する処理を適用すれば良い。すなわち、本実施形態及び本変形例において説明した、1つのキャッシュラインにおける複数のWAYを、フルアソシアティブ方式のキャッシュメモリにおける複数のエントリに置き換えることにより、キャッシュメモリ装置3をフルアソシアティブ方式に適用することができる。なお、閾値決定部55としての機能を実現するためのプログラム閾値決定プログラムは、例えばフレキシブルディスク,CDCD-ROM,CD-R,CD-RW等,DVDDVD-ROM,DVD-RAM,DVD-R,DVDR,DVD-RW,DVDRW,HDDVD等,ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。また、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置記録媒体に記録しておき、その記憶装置から通信回線を介してコンピュータに提供するようにしても良い。閾値決定部55としての機能を実現する際には、内部記憶装置本実施形態ではメモリ6又はHDD等のI/O装置7に格納されたプログラムがコンピュータのマイクロプロセッサ本実施形態ではCPU2によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしても良い。また、閾値決定部55としての機能を実現する際には、外部設定ノードの記憶装置に格納されたプログラムがコンピュータのマイクロプロセッサ本実施形態では例えばシステムサービスプロセッサによって実行されても良い。なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。また、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、情報処理装置1がコンピュータとしての機能を有しているのである。"