(57)【要約】【課題】処理装置の試験を効率的に行なう。【解決手段】情報処理装置の負荷状態を示す負荷状態情報と負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定する決定部１０４と、複数の演算コアのうち、決定された演算コア数と同数の演算コアに演算命令を実行させる演算処理部１０５と、演算コアによる演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう異常検証部１０４とを備える。【選択図】図２
2018169696.tif 000002
【特許請求の範囲】
【請求項１】
複数の演算コアを有する処理装置を備える情報処理装置であって、
当該情報処理装置の負荷状態を示す負荷状態情報と前記負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定する決定部と、
前記複数の演算コアのうち、前記決定された演算コア数と同数の演算コアに演算命令を実行させる演算処理部と、
前記演算コアによる前記演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう異常検証部と
を備えることを特徴とする、情報処理装置。
【請求項２】
前記決定部が、前記参照情報を参照して、複数の前記負荷状態のうち一の負荷状態に対応する前記演算コア数を決定し、
前記演算処理部が、前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させる
ことを特徴とする、請求項１記載の情報処理装置。
【請求項３】
前記決定部が、前記参照情報を参照して、複数の前記負荷状態のうち第１の負荷状態に対応する第１の演算コア数と、複数前記負荷状態のうち第２の負荷状態に対応する第２の演算コア数とをそれぞれ決定し、
前記演算処理部が、前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる
ことを特徴とする、請求項１または２記載の情報処理装置。
【請求項４】
前記演算処理部が、前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させた後、前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる
ことを特徴とする、請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記複数の演算コアのうち１以上の各数の演算コアに演算命令を実行させた状態で当該情報処理装置の各負荷状態を表す負荷状態情報を収集し、
収集した各負荷状態を複数のレベルに分類し、
前記レベルと前記演算コア数と前記負荷状態情報とを対応付けることにより、前記参照情報を作成する作成部
を備えることを特徴とする、請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
複数の演算命令候補のそれぞれを演算コアに実行させ、前記複数の演算命令候補の中から消費電力の最も大きい演算命令を選定する命令選定部を備え、
前記演算処理部が、選定された前記演算命令を前記演算コアに実行させる
ことを特徴とする、請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
複数の演算コアを有する処理装置を備える情報処理装置において、
当該情報処理装置の負荷状態を示す負荷状態情報と前記負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定し、
前記複数の演算コアのうち、前記決定された演算コア数と同数の演算コアに演算命令を実行させ、
前記演算コアによる前記演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう
処理をコンピュータに実行させる、試験プログラム。
【請求項８】
複数の演算コアを有する処理装置を備える情報処理装置において、
当該情報処理装置の負荷状態を示す負荷状態情報と前記負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定する処理と、
前記複数の演算コアのうち、前記決定された演算コア数と同数の演算コアに演算命令を実行させる処理と、
前記演算コアによる前記演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう処理と
を備える、試験方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置，試験プログラムおよび試験方法に関する。
【背景技術】
【０００２】
近年、ＣＰＵ（Central Processing Unit）のプロセスルールの詳細化とマルチコア化によるコア数増とに伴い、ＣＰＵ省電力機能も進化している。しかしながら、このようなＣＰＵにおいて、消費電力や発熱の増大が懸念されており、ＣＰＵ省電力機能に関する試験が必要となっている。
【０００３】
ＣＰＵ省電力機能を有するＣＰＵの高周波数帯を試験する場合に、ＣＰＵコアに演算命令を実施させてビジー率を上げることで試験を実現することが知られている。また、一方で、対象ＣＰＵを動作させないことで低周波帯の試験を実現できることも知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００９−５２６３３６号公報
【特許文献２】国際公開第２０１２／１０８０５８号
【特許文献３】特開２００６−３４４１６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＣＰＵにおける高周波数帯での急激な周波数変動や、高周波数帯継続によるＣＰＵ温度異常、ＣＰＵにおける異常検出に伴って行なわれる強制的なリブート等の問題を解消すべく、ＣＰＵを高周波数帯における所定の周波数で動作させる試験が必要とされている。
【０００６】
従来のＣＰＵの試験方法においては、例えば、全ＣＰＵコアで浮動小数点演算を実行することで、ＣＰＵ使用率１００％の状態で動作させるが、周波数帯については考慮していないので高周波数帯の最大には達していない場合がある。
【０００７】
また、ＣＰＵを１コアだけを動作（１コアでバインドともいう）させた状態でＣＰＵ試験を行なうことで、高周波数帯の最大域に到達させることができるが、ＣＰＵ周波数が最高値（ＭＡＸ値）で一定となってしまう。従って、高周波数帯における最大域以外の周波数での試験や、急激な周波数変動を狙って試験することはできない。
【０００８】
また、特定のＣＰＵコアを動作させるために、手動で対象ＣＰＵコアを切り替える必要があるので、ＣＰＵコア数が多いと煩雑である。
【０００９】
各周波数の試験を行なうためには、対象装置毎にＣＰＵの周波数等の仕様を調査して動作ＣＰＵの数やスレッド数を変更することや、ＣＰＵを動作させながら調整する等の作業が必要となり煩雑である。
【００１０】
近年においては、ＣＰＵに多数のＣＰＵコアが備えられる傾向にあり、手操作により全ＣＰＵコアで全周波数帯の試験を行なうのは困難となってきている。また、ＣＰＵ周波数に起因する障害検出が困難であることにより、情報処理装置の品質も低下するおそれがある。
【００１１】
１つの側面では、本発明は、処理装置を効率的に試験できるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
このため、この情報処理装置は、複数の演算コアを有する処理装置を備える情報処理装置であって、当該情報処理装置の負荷状態を示す負荷状態情報と前記負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定する決定部と、前記複数の演算コアのうち、前記決定された演算コア数と同数の演算コアに演算命令を実行させる演算処理部と、前記演算コアによる前記演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう異常検証部とを備える。
【発明の効果】
【００１３】
一実施形態によれば、処理装置を効率的に試験できる。
【図面の簡単な説明】
【００１４】
【図１】実施形態の一例としてのコンピュータのハードウェア構成を模式的に示す図である。
【図２】実施形態の一例としてのコンピュータの機能構成を示す図である。
【図３】実施形態の一例としてのコンピュータにおけるＣＰＵ周波数を説明するための図である。
【図４】実施形態の一例としてのコンピュータにおいて用いられるＣＰＵ演算命令テーブルを例示する図である。
【図５】実施形態の一例としてのコンピュータにおけるレベル対応テーブルを例示する図である。
【図６】実施形態の一例としてのコンピュータにおける周波数帯対応テーブルを例示する図である。
【図７】実施形態の一例としてのコンピュータにおける周波数マトリクスを例示する図である。
【図８】実施形態の一例としてのコンピュータにおける試験実行部により生成されるＣＰＵ周波数変動を例示する図である。
【図９】実施形態の一例としてのコンピュータにおける処理を説明するためのフローチャートである。
【図１０】実施形態の一例としてのコンピュータにおける処理を説明するためのフローチャートである。
【図１１】実施形態の一例としてのコンピュータにおける処理を説明するためのフローチャートである。
【図１２】実施形態の一例としてのコンピュータにおける処理を説明するためのフローチャートである。
【図１３】実施形態の一例としてのコンピュータにおける処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本情報処理装置，試験プログラムおよび試験方法に係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。又、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００１６】
（Ａ）構成
図１は実施形態の一例としてのコンピュータ１０のハードウェア構成を模式的に示す図、図２はその機能構成を示す図である。
【００１７】
まず、図１を参照しながら、本実施形態のＣＰＵ負荷試験機能を実現するコンピュータ（情報処理装置）１０のハードウェア構成について説明する。
【００１８】
コンピュータ１０は、例えばサーバコンピュータとして用いられ、例えば、ＣＰＵ１１，メモリ１２，ＨＤＤ（Hard Disk Drive）１３およびハードウェア管理機能部１４を構成要素として有する。これらの構成要素１１〜１４は、例えば図示しないバスを介して相互に通信可能に構成される。
【００１９】
メモリ（記憶部）１２は、コンピュータ１０の主記憶装置として使用される。メモリ１２には、ＣＰＵ１１に実行させるＯＳ（Operating System）プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ１２には、ＣＰＵ１１による処理に必要な各種データが格納される。アプリケーションプログラムには、コンピュータ１０によって本実施形態のＣＰＵ負荷試験機能を実現するためにＣＰＵ１１によって実行される試験プログラムが含まれてもよい。
【００２０】
ＨＤＤ（記憶部）１３は、内蔵したディスクに対して、磁気的にデータの書き込み及び読み出しを行なう。ＨＤＤ１３は、コンピュータ１０の補助記憶装置として使用される。ＨＤＤ１３には、ＯＳプログラム，アプリケーションプログラム、及び各種データが格納される。なお、補助記憶装置としては、ストレージクラスメモリ（ＳＣＭ：Storage Class Memory）や、フラッシュメモリ等の半導体記憶装置（ＳＳＤ：Solid State Drive）を使用することもできる。
【００２１】
ハードウェア管理機能部１４は、本コンピュータ１０の管理するための機能装置であり、例えば、温度センサや消費電流センサである。温度センサはＣＰＵ１１の近傍に配置され、ＣＰＵ１１の温度の測定に用いられる。消費電流センサは、本コンピュータ１０における消費電力を測定するために用いられ、この消費電流センサによる検出値（消費電流）に電源電圧を乗算することで、本コンピュータ１０の消費電力を算出することができる。
【００２２】
ＣＰＵ（処理装置）１１は、コンピュータ１０全体を制御するものでありプログラムを実行することにより種々の機能を実現する。
【００２３】
ＣＰＵ１１は、複数（本実施形態では、０〜ｎのｎ＋１個）のＣＰＵコア（以下、単にコアという場合がある）を有するマルチコアＣＰＵである。なお、ＣＰＵコアを特定する番号をコアＩＤという場合がある。
【００２４】
ＣＰＵコアにおいては、演算負荷に応じて動作周波数（ＣＰＵ周波数）を変動させる機能を備えている。以下、ＣＰＵ周波数を単に周波数という場合がある。ＣＰＵコアにおいては、演算負荷が高くなるほど動作周波数が高くなり、演算負荷が低い場合に動作周波数が低くなる。このような、負荷に応じて動作周波数の変動を行なう機能は既知の技術で実現でき、例えば、インテル社のターボブーストテクノロジーをサポートすることにより実現される。なお、周波数の最大値は動作するＣＰＵコア数に応じて変化する。
【００２５】
図３は実施形態の一例としてのコンピュータ１０におけるＣＰＵ周波数を説明するための図である。
【００２６】
この図３に示すように、本コンピュータ１０においては、ＣＰＵ１１の動作周波数（ＣＰＵ周波数）を、０〜４の５段階のレベル（負荷レベル）に区分する。ＣＰＵ１１のアイドル時の周波数をレベル０とし、最大周波数（ＭＡＸ）をレベル４とし、周波数の値が高くなるにつれてレベルが０，１，２，３，４と高くなるものとする。各レベル間の周波数差は均等であってもよく、また、不均等であってもよい。なお、各段階（レベル）の周波数基準値はコンピュータ１０から取得可能とする。
【００２７】
また、ＣＰＵ１１が、試験プログラムを実行することにより、図２に示すＣＰＵ負荷試験機能を実現する。
【００２８】
ＣＰＵ負荷試験機能は、ＣＰＵ１１が備える複数のＣＰＵコアを所定の周波数で動作させることで負荷をかけ、異常状態を加速させ異常箇所の発見を容易にする。
【００２９】
ＣＰＵ負荷試験機能は、図２に示すように、制御部１０１，命令選定部１０２，周波数取得部１０３，試験実行部１０４，演算処理部１０５および測定処理部１０６としての機能を備える。
【００３０】
なお、これらの制御部１０１，命令選定部１０２，周波数取得部１０３，試験実行部１０４，演算処理部１０５および測定処理部１０６としての機能を実現するためのプログラム（試験プログラム）は、例えばフレキシブルディスク，ＣＤ（ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ等），ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−Ｒ，ＤＶＤ＋Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋ＲＷ，ＨＤ  ＤＶＤ等），ブルーレイディスク，磁気ディスク，光ディスク，光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
【００３１】
制御部１０１，命令選定部１０２，周波数取得部１０３，試験実行部１０４，演算処理部１０５および測定処理部１０６としての機能を実現する際には、内部記憶装置（本実施形態ではメモリ１２）に格納されたプログラムがコンピュータのマイクロプロセッサ（本実施形態ではＣＰＵ１１）によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
【００３２】
本実施形態においては、ＣＰＵ１１が試験プログラムを実行することで、この試験プログラムの実行モジュールが、ＣＰＵ１１を構成する複数のＣＰＵコアの１つ以上で実行され、このＣＰＵ１１に備えられた複数のＣＰＵコアの試験を行なう。なお、試験プログラム自体の動作負荷は低いものであり、ＣＰＵコアの試験を行なうことで試験プログラムの動作に影響が出ることはない。
【００３３】
試験プログラムを実行するＣＰＵを第１のＣＰＵ（処理装置）といい、試験対象のＣＰＵ１１を第２のＣＰＵという場合に、第２のＣＰＵは、第１のＣＰＵと同じであってもよく、また異なるものであってもよい。
【００３４】
制御部１０１は、ＣＰＵ周波数変動試験にかかる全体的な制御を行なう。制御部１０１は、例えば、命令選定部１０２，周波数取得部１０３，試験実行部１０４，演算処理部１０５および測定処理部１０６を、それぞれ所定のタイミングで実行させる。また、制御部１０１は、周波数取得部１０２，試験実行部１０４，演算処理部１０５および測定処理部１０６の各部の間におけるデータの授受を管理する。
【００３５】
演算処理部１０５は、ＣＰＵコアにＣＰＵ演算命令を実行させる。具体的には、演算処理部１０５は、ＣＰＵ演算命令（特定ＣＰＵ演算命令）が設定されたスレッドをＣＰＵコアに実施（実行）させることで、各ＣＰＵコアに演算処理を行なわせる。
【００３６】
測定処理部１０６は、本コンピュータ１０における各種情報を測定する。測定処理部１０６は、例えば、ハードウェア管理機能部１４の温度センサにより、ＣＰＵ１１（ＣＰＵコア）の温度を測定する。
【００３７】
また、測定処理部１０６は、タイマとしての機能を備え、後述する試験実行部１０４や演算処理部１０５によって行なわれる各処理が実行されてからの経過時間を測定する。さらに、測定処理部１０６は、ＣＰＵコア（ＣＰＵ１１）が動作する周波数を測定する機能を備える。
【００３８】
測定処理部１０６としてのこれらの機能は、既知の手法で実現することができ、その詳細な説明は省略する。
【００３９】
命令選定部１０２は、ＣＰＵ１１が実行する際の消費電力の大きいＣＰＵ演算命令を選定する。
【００４０】
図４は実施形態の一例としてのコンピュータ１０において用いられるＣＰＵ演算命令テーブル２０１を例示する図である。
【００４１】
この図４に例示するＣＰＵ演算命令テーブル２０１は、本コンピュータ１０で実行可能なＣＰＵ演算命令を、そのＣＰＵ演算命令を実行する際に要する消費電力と対応付けて示す。ＣＰＵ演算命令としては、浮動小数点演算命令を用いることが望ましい。
【００４２】
また、ＣＰＵ演算命令テーブル２０１においては、ＣＰＵ演算命令をその種類や機能等に応じてグループ（ＣＰＵ演算命令グループ）毎にグルーピングしている。図４に例示するＣＰＵ演算命令テーブル２０１においては、演算命令グループとして、AVX，AVX2およびSSEが登録されている。
【００４３】
なお、ＣＰＵ演算命令テーブル２０１において、“No.”はＣＰＵ演算命令を特定する識別番号であり、当該ＣＰＵ演算命令テーブル２０１の先頭から順に連番として設定されている。
【００４４】
命令選定部１０２は、ＣＰＵ１１に実行させた場合における消費電力の高いＣＰＵ演算命令を選定（特定，抽出）する。
【００４５】
命令選定部１０２は、ＣＰＵ演算命令テーブル２０１に登録された各ＣＰＵ演算命令を演算処理部１０５を介してＣＰＵ１１に実行させる。また、命令選定部１０２は、測定処理部１０６を介して、ＣＰＵ演算命令を実行中の消費電力を測定させて、その測定結果をＣＰＵ演算命令テーブル２０１に登録する。
【００４６】
命令選定部１０２は、ＣＰＵ演算命令テーブル２０１に登録された複数のＣＰＵ演算命令グループについて、各ＣＰＵ演算命令グループにおける一のＣＰＵ演算命令を選択し、演算処理部１０５を介してＣＰＵコアに実行させる。以下、ＣＰＵ演算命令グループから選択される一のＣＰＵ演算命令を代表ＣＰＵ演算命令という場合がある。代表ＣＰＵ演算命令は、ＣＰＵ演算命令グループ毎に予め決めておくことが望ましい。また、ＣＰＵ演算命令テーブル２０１の各ＣＰＵ演算命令グループにおいて先頭に登録されているＣＰＵ演算命令を代表ＣＰＵ演算命令としてもよい。
【００４７】
また、以下、命令選定部１０２が演算処理部１０５を介してＣＰＵコアにＣＰＵ演算命令を実行させることを、単に、命令選定部１０２がＣＰＵコアにＣＰＵ演算命令を実行させると表現する場合がある。同様に、以下、命令選定部１０２が測定処理部１０６を介して消費電力を測定させることを、単に、命令選定部１０２が消費電力を測定させると表現する場合がある。
【００４８】
命令選定部１０２は、消費電力が最も高い代表ＣＰＵ演算命令を備えるＣＰＵ演算命令グループを選定する。以下、消費電力が最も高い代表ＣＰＵ演算命令を備えるＣＰＵ演算命令グループを抽出ＣＰＵ演算命令グループという場合がある。
【００４９】
命令選定部１０２は、この代表ＣＰＵ演算グループ内に含まれる全てのＣＰＵ演算命令をＣＰＵコアに実行させ、消費電力が最も高いＣＰＵ演算命令を抽出する。
【００５０】
複数のＣＰＵ演算命令グループの代表ＣＰＵ演算命令の消費電力に基づいて抽出ＣＰＵ演算命令グループを選定し、この抽出ＣＰＵ演算命令グループについてのみ全てのＣＰＵ演算命令の消費電力を測定することで、ＣＰＵ演算命令の選定に要する時間を短縮することができる。
【００５１】
命令選定部１０２は、具体的には、例えば、以下に示す処理Ａ１〜Ａ９を行なうことでＣＰＵ演算命令を選定する。
【００５２】
処理Ａ１：命令選定部１０２は、ＣＰＵ演算命令テーブル２０１における一のＣＰＵ演算命令グループ（例えば、AVX2）について、一のＣＰＵ演算命令（代表ＣＰＵ演算命令；例えばAAA1）を選択する。
【００５３】
処理Ａ２：命令選定部１０２は、ＣＰＵ１１のＣＰＵコアと同数（ＣＰＵコア数分）のスレッドを起動する。
【００５４】
処理Ａ３：命令選定部１０２は、起動した各スレッドで、処理Ａ１において選択した代表ＣＰＵ演算命令をそれぞれ繰り返し実行させる。
【００５５】
処理Ａ４：命令選定部１０２は、スレッド実行中の消費電力を測定させ、ＣＰＵ演算命令テーブル２０１において、測定した消費電力を、選択した代表ＣＰＵ演算命令に対応付けて登録する。
【００５６】
処理Ａ５：命令選定部１０２は、ＣＰＵ演算命令テーブル２０１における次のＣＰＵ演算命令グループから一のＣＰＵ演算命令（代表ＣＰＵ演算命令；例えば、BBB1）を選択する。
【００５７】
処理Ａ６：上記処理Ａ２〜Ａ５を、ＣＰＵ演算命令グループの数分、繰り返し行なう。
【００５８】
処理Ａ７：命令選定部１０２は、消費電力が大きい代表ＣＰＵ演算命令を備えるＣＰＵ演算命令グループを抽出ＣＰＵ演算命令グループとして特定する。
【００５９】
処理Ａ８：命令選定部１０２は、ＣＰＵ演算命令テーブル２０１において、処理Ａ７において特定した抽出ＣＰＵ演算命令グループにおける、消費電力の測定が行なわれていないＣＰＵ演算命令を一つ選択する。
【００６０】
命令選定部１０２は、例えば、ＣＰＵ演算命令テーブル２０１における抽出ＣＰＵ演算命令グループの先頭から順番に消費電力の測定が行なわれていないＣＰＵ演算命令を選択する。
【００６１】
処理Ａ９：命令選定部１０２は、上記処理Ａ２〜Ａ４と同様の手法で消費電力測定を行ない、最も消費電力が大きいＣＰＵ演算命令を抽出する。
【００６２】
以上のように、命令選定部１０２は、先ず、抽出ＣＰＵ演算命令グループの選定を行ない、次に、この選定した抽出ＣＰＵ演算命令グループの中で最も消費電力が大きいＣＰＵ演算命令を選定する。
【００６３】
以下、命令選定部１０２により最も消費電力が大きいＣＰＵ演算命令として選定されたＣＰＵ演算命令を、特定ＣＰＵ演算命令という場合がある。
【００６４】
なお、命令選定部１０２による特定ＣＰＵ演算命令の選定方法は、上述した処理Ａ１〜Ａ９による方法に限定されるものではなく、種々変形して実施することができる。また、上記実施形態においては、命令選定部１０２は、ＣＰＵ演算命令を選定しているがこれに限定されるものではない。例えば、命令選定部１０２は、ＣＰＵ演算命令以外の命令を選定してもよい。
【００６５】
周波数取得部１０３は、後述する試験実行部１０４による負荷試験に用いられるレベル対応テーブル２０２（図５参照）を作成する。レベル対応テーブル２０２は、ＣＰＵ１１を所望する負荷レベルで動作させるための参照情報として試験実行部１０４に用いられる。
【００６６】
図５は実施形態の一例としてのコンピュータ１０におけるレベル対応テーブル２０２を例示する図である。
【００６７】
レベル対応テーブル２０２は、図５に示すように、レベル（段階）に対して、ＣＰＵコア数，周波数値，実行時間および温度を対応付けて構成されている。ＣＰＵコア数は、対応するレベルでのＣＰＵ１１の負荷状態（周波数値）を実現するために実行させるべきＣＰＵコアの数を示す。以下、レベル対応テーブル２０２において、特定のレベルの負荷状態を実現するためのＣＰＵコア数を実現ＣＰＵコア数という場合がある。
【００６８】
周波数値，実行時間および温度は、対応するレベルでのＣＰＵ１１の動作時に測定された測定結果である。これらの周波数値，実行時間および温度やレベルは、ＣＰＵ１１の負荷状態を表す。
【００６９】
後述する試験実行部１０４は、このレベル対応テーブル２０２を参照して、ＣＰＵ１１の負荷試験に用いるＣＰＵコア数を決定する。従って、レベル対応テーブル２０２は、本コンピュータ１０（ＣＰＵ１１）の負荷状態を示す負荷状態情報（レベル，周波数値）と、この負荷状態を実現するためのコア数とを対応付けた参照情報に相当する。
【００７０】
周波数取得部１０３は、レベル対応テーブル２０２を作成するに際して、先ず、周波数帯対応テーブル２０３（図６参照）を作成し、この周波数帯対応テーブル２０３を用いてレベル対応テーブル２０２を作成する。
【００７１】
図６は実施形態の一例としてのコンピュータ１０における周波数帯対応テーブル２０３を例示する図である。
【００７２】
図６に例示する周波数帯対応テーブル２０３は、ＣＰＵコア数に対して、周波数値，実行時間，温度およびレベル（段階）を対応付けて構成されている。
【００７３】
周波数取得部１０３は、命令選定部１０２によって選定された特定ＣＰＵ演算命令を、演算処理部１０５を介して所定数（ＣＰＵコア数）のＣＰＵコアで実行させ、その実行中に、測定処理部１０６に周波数，温度および実行時間を測定させる。
【００７４】
以下、周波数取得部１０３が演算処理部１０５を介してＣＰＵコアにＣＰＵ演算命令を実行させることを、単に、周波数取得部１０３がＣＰＵコアにＣＰＵ演算命令を実行させると表現する場合がある。同様に、以下、周波数取得部１０３が測定処理部１０６に周波数，温度および実行時間を測定させることを、単に、周波数取得部１０３が周波数，温度および実行時間を測定させると表現する場合がある。
【００７５】
周波数取得部１０３は、測定対象のＣＰＵコア数と同数のスレッドを起動し、起動した各スレッドで、特定ＣＰＵ演算命令を繰り返し実施（実行）させる。例えば、ＣＰＵコア数=１について測定を行なう場合には、周波数取得部１０３は、１つのＣＰＵコアだけを実行させるスレッドを起動し、このスレッドで特定ＣＰＵ演算命令を繰り返し実施させる。
【００７６】
なお、以下、特定のＣＰＵコアにスレッドを実行させることをＣＰＵコアにバインドすると表現する場合がある。
【００７７】
周波数取得部１０３は、周波数帯対応テーブル２０３に登録された各ＣＰＵコア数のそれぞれについて、スレッドのバインド，バインドしたスレッドでの特定ＣＰＵ演算命令の実施，周波数，温度および実行時間の測定、および周波数帯対応テーブル２０３への記録の各処理を行なう。
【００７８】
周波数取得部１０３は、ＣＰＵ演算命令の実行中に測定したこれらの情報を、周波数帯対応テーブル２０３における、スレッドをバインドしたＣＰＵコア数に対応付けて記録する。
【００７９】
なお、周波数帯対応テーブル２０３において、実行時間は、特定ＣＰＵ演算命令を所定回数（例えば100億回）、繰り返して実行するのにかかった時間である。
【００８０】
レベル値は、周波数に応じて設定される値であり、高い周波数には高いレベル値が、低い周波数には低いレベル値が設定される。レベル値には整数を用いることが望ましい。以下、レベル値＝１のレベルをレベル１と表す。同様に、レベル値=２，３，４の各レベルを、それぞれレベル２，レベル３，レベル４と表す。
【００８１】
例えば、周波数取得部１０３は、測定した周波数を、前回の測定結果の周波数と比較する。比較の結果、所定閾値以上高い場合（高周波数）には、レベル値を１加算（インクリメント）し、所定閾値以上低い場合（低周波数）には、レベル値を１減算（デクリメント）する。
【００８２】
なお、所定閾値としては、例えば、ベースクロックの周波数（例えば、100MHz）であってもよく、種々変形して実施することができる。所定閾値の値を大きくすることでレベルの数が少なくなり、所定閾値の値を小さくすることでレベルの数が多くなる。
【００８３】
周波数取得部１０３は、作成した周波数帯対応テーブル２０３に基づき、レベル対応テーブル２０２を作成する。
【００８４】
周波数取得部１０３は、周波数帯対応テーブル２０３を参照して、レベル毎に対応するＣＰＵコア数を取得し、レベル対応テーブル２０２における対応するレベルに関連付けて登録する。なお、周波数帯対応テーブル２０３において、同一レベルに対して複数種類のＣＰＵコア数が登録されている場合には、ＣＰＵコア数が多い方を採用してレベルに対して設定する。
【００８５】
例えば、図６に例示する周波数帯対応テーブル２０３において、ＣＰＵコア数=１とＣＰＵコア数=２とにそれぞれレベル４が設定されている。このような場合には、ＣＰＵコア数=１とＣＰＵコア数=２とが比較され、レベル４に対して、多い方であるＣＰＵコア数=２が採用される。すなわち、レベル対応テーブル２０２にレベル４に対してＣＰＵ数=２が設定される。
【００８６】
また、周波数取得部１０３は、ＣＰＵコア数を設定したレベルについて、選択したＣＰＵコア数に対応する周波数値，実行時間および温度を周波数帯対応テーブル２０３から抽出し、レベル対応テーブル２０２に登録する。
【００８７】
このようにして、周波数取得部１０３は、周波数帯対応テーブル２０３に登録された情報からレベル対応テーブル２０２を作成する。
【００８８】
試験実行部１０４は、レベル対応テーブル２０２を参照してＣＰＵコアの負荷試験を行なう。
【００８９】
試験実行部１０４は、レベル対応テーブル２０２を参照して、演算処理部１０５を介して指定する特定のレベル（ＣＰＵ周波数帯，周波数）で動作させて、固定したＣＰＵ周波数帯でＣＰＵコアを動作させ、その検証を行なう。すなわち、試験実行部１０４は、レベル対応テーブル２０２を参照して、ＣＰＵ負荷試験における演算コア数（実現コア数）を決定する決定部として機能する。また、試験実行部１０４は、演算コアによるＣＰＵ演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう異常検証部としても機能する。
【００９０】
以下、試験実行部１０４が演算処理部１０５を介してＣＰＵコアにＣＰＵ演算命令を実行させることを、単に、試験実行部１０４がＣＰＵコアにＣＰＵ演算命令を実行させると表現する場合がある。
【００９１】
［固定周波数試験］
試験実行部１０４は、以下の処理Ｂ１〜Ｂ１０により、固定したＣＰＵ周波数帯での動作試験（固定周波数試験）を行なう。以下に示す例においては、試験実行部１０４が、周波数帯としてレベル３での動作検証を行なう場合について説明する。
【００９２】
処理Ｂ１：試験実行部１０４は、試験としてＣＰＵ１１にかける周波数帯（段階，レベル）を選択する。本例においては、レベル３を選択する。
【００９３】
処理Ｂ２：試験実行部１０４は、レベル対応テーブル２０２からレベル３に対応するＣＰＵコア数を取得する。以下、特定のレベル（本例ではレベル３）を実現するためのＣＰＵコア数を実現ＣＰＵコア数という場合がある。
【００９４】
図５に例示するレベル対応テーブル２０２においては、レベル３を実現するための実現ＣＰＵコア数=４である。
【００９５】
処理Ｂ３：試験実行部１０４は、処理Ｂ２において取得（決定）したＣＰＵコア数（実現ＣＰＵコア数）分のＣＰＵコアを選択する。本例においては、実現ＣＰＵコア数＝４であるので、ＣＰＵ１１に備えられたｎ＋１個のＣＰＵコアのうち、例えばＣＰＵコア０〜３の４つが選択される。
【００９６】
処理Ｂ４：試験実行部１０４は、処理Ｂ３において選択したＣＰＵコアでバインドしたスレッドを生成する。
【００９７】
処理Ｂ５：試験実行部１０４は、処理Ｂ４において生成したスレッドをそれぞれ起動し、各ＣＰＵコア（本例においてはＣＰＵコア０〜３）のそれぞれに、命令選定部１０２によって選定された特定ＣＰＵ演算命令を実施（実行）させる。
【００９８】
処理Ｂ６：試験実行部１０４は、スレッドによる特定ＣＰＵ演算命令の実行中において、測定処理部１０６に周波数，ＣＰＵ温度および実行時間を測定させる。
【００９９】
処理Ｂ７：各ＣＰＵコアに実行させていたスレッドを終了させる。
【０１００】
処理Ｂ８：試験実行部１０４は、処理Ｂ６において測定された各値（測定値；測定情報）が正しいものであるかを確認することで異常の有無の判定（異常判定）を行なう。
【０１０１】
具体的には、試験実行部１０４は、各測定値を、レベル対応テーブル２０２における試験対象のレベル（本例ではレベル３）の各値（期待値）と比較する。測定値が期待値に近い（所定の範囲内に収まっている）場合に、測定値が正しいものであると判断する。
【０１０２】
すなわち、試験実行部１０４は、演算コアによるＣＰＵ演算命令の実行中に測定された測定情報に基づいて、本コンピュータ１０の異常判定を行なう異常検証部として機能する。
【０１０３】
また、試験実行部１０４は、測定値が期待値から乖離している（所定値以上離れている）ことや、性能低下（実行時間の増加）を検出した場合には、異常が発生している旨の通知（アラーム）を出力させる。
【０１０４】
処理Ｂ９：試験実行部１０４は、ＣＰＵ１１に備えられたｎ＋１個のＣＰＵコアのうち、試験を行なっていないＣＰＵコアのうちから、上記処理Ｂ２において取得したＣＰＵコア数分のＣＰＵコアを選択して、上記処理Ｂ３〜Ｂ８を繰り返し実行する。なお、未試験のＣＰＵコア数が実現ＣＰＵコア数に足りない場合には、不足する分を試験を実施済みのＣＰＵコアを用いることで補って試験を行なってもよい。
【０１０５】
処理Ｂ１０：全てのＣＰＵコアについて上記試験を実施して、試験を完了する。
【０１０６】
なお、上記処理Ｂ１〜Ｂ１０は、レベル対応テーブル２０２に登録された全レベルに対して実施する。
【０１０７】
［変動周波数試験］
また、試験実行部１０４は以下の処理Ｃ１〜Ｃ１１により、動的に変動させた周波数帯（周波数変動）での動作試験も行なう。試験実行部１０４は、レベル０を含む全てのレベルの中から２つのレベルを組み合わせることで、ＣＰＵコアの動作周波数を動的に変動させる。以下、ＣＰＵコアの動作周波数を動的に変動させることをＣＰＵ周波数変動もしくは単に周波数変動という場合がある。また、動的に変動するＣＰＵ周波数を変動ＣＰＵ周波数もしくは変動周波数という場合がある。
【０１０８】
試験実行部１０４は、本コンピュータ１０におけるレベル０〜４のうちから選択される２つのレベルの試験を組み合わせて実施することで、ＣＰＵ変動周波数を実現し、上述した固定した周波数帯とは異なる変動周波数についての試験（変動周波数試）を実施する。
【０１０９】
図７は実施形態の一例としてのコンピュータ１０における周波数マトリクス２０４を例示する図である。
【０１１０】
周波数マトリクス２０４は、レベルの組み合わせを示すマトリクスとして構成されている。
【０１１１】
試験実行部１０４は、図７に例示するような周波数マトリクス２０４を参照して、本コンピュータ１０におけるレベル０〜４のうちから選択される２つのレベルの試験を組み合わせて動的に周波数を変動させて試験を行なう。
【０１１２】
なお、以下、試験実行部１０４が選択した２つのレベルのうち、動作させるＣＰＵコア数が多い方を第１のレベルといい、そのＣＰＵコア数を第１のＣＰＵコア数という。また、試験実行部１０４が選択した２つのレベルのうち、動作させるＣＰＵコア数が少ない方を第２のレベルといい、そのＣＰＵコア数を第２のＣＰＵコア数という。
【０１１３】
試験実行部１０４は、第１のレベルでの特定ＣＰＵ演算命令の繰り返しの実行（第１の負荷状態）と、第２のレベルでの特定ＣＰＵ演算命令の繰り返しの実行（第２の負荷状態）とを交互に行なうことで、ＣＰＵ周波数を動的に変動させる。
【０１１４】
すなわち、試験実行部１０４は、第１のＣＰＵコア数を用いての特定ＣＰＵ演算命令の実行と、第２のコア数を用いての特定ＣＰＵ演算命令の実行とを交互に繰り返し行なうことでＣＰＵ周波数変動を生じさせ、ＣＰＵ負荷試験機能を実現する。
【０１１５】
以下に示す例においては、試験実行部１０４が、レベル１（第１のレベル）とレベル４（第２のレベル）とを選択する例について示す。
【０１１６】
試験実行部１０４は、以下の処理Ｃ１〜Ｃ１２により、ＣＰＵ周波数変動を伴う動作試験を行なう。
【０１１７】
処理Ｃ１：試験実行部１０４は、レベル０〜４のうちから２つのレベル（周波数）を選択する。
【０１１８】
処理Ｃ２：試験実行部１０４は、レベル対応テーブル２０２を参照して、選択する第１のレベルおよび第２のレベルに対応する周波数帯のＣＰＵコア数をそれぞれ抽出する。図５に例示するレベル対応テーブル２０２においては、レベル４のＣＰＵコア数＝２と、レベル１のＣＰＵコア数＝６とが抽出される。
【０１１９】
図５に例示するレベル対応テーブル２０２においては、レベル１のＣＰＵコア数=６であり、レベル４のＣＰＵコア数=２であるので、レベル１（2600MHz）が第１のレベル（第１の負荷状態）に相当し、レベル４（3200MHz）が第２のレベル（第２の負荷状態）に相当する。
【０１２０】
処理Ｃ３：試験実行部１０４は、処理Ｃ２において抽出した２つのＣＰＵコア数のうち、多い方のＣＰＵコア数と同数のスレッドを生成し、各ＣＰＵコアにバインドする。本例においては、６個のＣＰＵコアにバインドすべく６個のスレッドが生成される。
【０１２１】
処理Ｃ４：試験実行部１０４は、処理Ｃ３において生成した各スレッドのそれぞれで特定ＣＰＵ演算命令を実施させる。これにより、第１のコア数のＣＰＵコアが第１のレベル（周波数レベル）で動作する。なお、この第１のコア数のＣＰＵコアが第１のレベル（周波数レベル）で動作することによるＣＰＵ１１の負荷状態を第１の負荷状態という。
【０１２２】
試験実行部１０４は、演算処理部１０５に第１のコア数のＣＰＵコアに特定ＣＰＵ演算命令を実行させることでＣＰＵ１１を第１の負荷状態にする。
【０１２３】
処理Ｃ５：試験実行部１０４は、時間Ｔ１の経過待ちを行なう。以下、この時間Ｔ１を第１待ち時間Ｔ１という場合がある。試験実行部１０４は、第１のＣＰＵコア数での特定ＣＰＵ演算命令の実施を第１待ち時間Ｔ１の間行なう。
【０１２４】
第１待ち時間Ｔ１は、試験実行部１０４による試験が開始されてからの経過時間に応じて変化させる。第１待ち時間Ｔ１の初期値は0msecである。後述の如く、第１待ち時間Ｔ１は、所定時間が経過する毎に、例えば、10msecだけ延長（Ｔ１=Ｔ１＋10msec）される。また、第１待ち時間Ｔ１の最大値を、例えば、1000msecとする。
【０１２５】
処理Ｃ６：試験実行部１０４は、スレッドを実行中の複数（第１のＣＰＵコア数）のＣＰＵコアにおいて、処理Ｃ２において抽出した２つのＣＰＵコア数の差分（第１のＣＰＵコア数−第２のＣＰＵコア数）と同数のスレッドの実行を一時的に停止させる。すなわち、試験実行部１０４は、スレッドを実行中の複数（第１のＣＰＵコア数）のＣＰＵコアのうち、（第１のＣＰＵコア数−第２のＣＰＵコア数）と同数のＣＰＵコアによるスレッドの実行を一時的に停止させる。本例においては、６−２＝４個のスレッドの実行を一時停止させる。
【０１２６】
これにより、第２のＣＰＵコア数と同数のＣＰＵコアによるスレッド（特定ＣＰＵ演算命令）の実施が行なわれ、第２のコア数のＣＰＵコアが第２のレベル（周波数レベル）で動作する。なお、この第２のコア数のＣＰＵコアが第２のレベル（周波数レベル）で動作することによるＣＰＵ１１の負荷状態を第２の負荷状態という。
【０１２７】
試験実行部１０４は、演算処理部１０５に第２のコア数のＣＰＵコアに特定ＣＰＵ演算命令を実行させることでＣＰＵ１１を第２の負荷状態にする。
【０１２８】
処理Ｃ７：試験実行部１０４は、時間Ｔ２の経過待ちを行なう。以下、この時間Ｔ２を第２待ち時間Ｔ２という場合がある。試験実行部１０４は、第２のＣＰＵコア数での特定ＣＰＵ演算命令の実施を第２待ち時間Ｔ２の間行なう。
【０１２９】
第２待ち時間Ｔ２も、第１待ち時間Ｔ１と同様に、試験実行部１０４による試験が開始されてからの経過時間に応じて変化させる。第２待ち時間Ｔ２の初期値は0msecである。後述の如く、第２待ち時間Ｔ２は、所定時間が経過する毎に、例えば、10msecだけ延長（Ｔ２=Ｔ２＋10msec）される。また、第２待ち時間Ｔ２の最大値を、例えば、1000msecとする。
【０１３０】
処理Ｃ８：試験実行部１０４は、処理Ｃ６において一時停止させたスレッドを再開させる。これにより、再度、第１のコア数のＣＰＵコアが第１のレベルで動作する。
【０１３１】
処理Ｃ９：上記処理Ｃ４〜Ｃ８を繰り返し行なう。これにより、第１のコア数のＣＰＵコアによる第１のレベルでの動作と、第２のコア数のＣＰＵコアによる第２のレベルでの動作とが、交互に（周期的に）行なわれる。
【０１３２】
すなわち、試験実行部１０４は、第１の負荷状態と第２の負荷状態とを交互に発生させる。
【０１３３】
処理Ｃ１０：処理Ｃ９における処理Ｃ５〜Ｃ８の繰り返しを一定時間（Ｔ３）行なうと、試験実行部１０４は、第１待ち時間Ｔ１および第２待ち時間Ｔ２を、それぞれ変更（＋10msec）する。時間Ｔ３は適宜変更して実施することができ、例えば、Ｔ３=1secであってもよい。
【０１３４】
処理Ｃ１１：上記処理Ｃ５〜Ｃ９を繰り返し行なう。試験実行部１０４は、例えば、第１待ち時間Ｔ１および第２待ち時間Ｔ２がそれぞれ1000msecとなるまで、処理Ｃ４〜Ｃ９を繰り返し行なう。
【０１３５】
上述した処理Ｃ４〜Ｃ９を繰り返し行なうことで、ＣＰＵ周波数変動が生成される。
確認することで異常の有無の判定（異常判定）を行なう。
【０１３６】
図８は実施形態の一例としてのコンピュータ１０における試験実行部１０４により生成されるＣＰＵ周波数変動を例示する図である。
【０１３７】
この図８に例示するＣＰＵ周波数変動は、レベル１（第１のレベル）による動作周波数2600MHzでの動作と、レベル４（第２のレベル）による動作周波数3200MHzでの動作とが交互に行なわれている。なお、第１のレベルでの動作継続時間が待ち時間Ｔ１であり、第２のレベルでの動作継続時間が待ち時間Ｔ２である。後述の如く、これらの待ち時間Ｔ１，Ｔ２は、それぞれ、時間経過に従って長くなる。
【０１３８】
処理Ｃ１２：試験実行部１０４は、処理Ｃ４〜Ｃ９におけるスレッド（特定ＣＰＵ演算命令）の実行中に、測定処理部１０６を介して、周波数，実行時間およびＣＰＵ温度を測定し、本コンピュータ１０の状態を確認する。
【０１３９】
試験実行部１０４は、測定処理部１０６を介して取得した周波数，実行時間およびＣＰＵ温度の各測定値（測定情報）を、レベル対応テーブル２０２における、第１および第２の各レベル（本例ではレベル１，４）の周波数、ＣＰＵ温度、実行時間の各値（期待値）と比較することで異常の有無の判定（異常判定）を行なう。
【０１４０】
すなわち、試験実行部１０４は、演算コアによるＣＰＵ演算命令の実行中に測定された測定情報に基づいて、本コンピュータ１０の異常判定を行なう異常検証部として機能する。
【０１４１】
試験実行部１０４は、測定値が期待値から乖離している（所定値以上離れている）ことや、性能低下（実行時間の増加）を検出した場合には、周波数マトリクス２０４における対応箇所に、異常傾向にあることを示す“ＮＧ”を登録する。一方、測定値が期待値に近い（所定の範囲内に収まっている）場合には、試験実行部１０４は、周波数マトリクス２０４における対応箇所に、正常であることを示す“ＯＫ”を登録する。図７に例示する周波数マトリクス２０４においては、その一部にのみ“ＯＫ”や“ＮＧ”が登録されている。
【０１４２】
試験実行部１０４は、周波数マトリクス２０４において、ＮＧが登録されたレベルの組み合わせに対して、例えば、集中試験を行なうことで、異常状態を加速させ障害を摘出する。
【０１４３】
（Ｂ）動作
上述の如く構成された実施形態の一例としてのコンピュータ１０における処理を、図９〜図１３に示すフローチャート（ステップＳ１〜Ｓ５０）に従って説明する。なお、図９および図１０は命令選定部１０２による処理を示すものであり、図９はステップＳ１〜Ｓ７の処理を示し、図１０はステップＳ８〜Ｓ１４の処理を示す。図１１は周波数取得部１０３の処理を示すフローチャートであり、ステップＳ１５〜Ｓ２３の処理を示す。図１２および図１３は試験実行部１０４による処理を示すものであり、図１２はステップＳ２４〜Ｓ３４の処理を示し、図１３はステップＳ３５〜Ｓ５０の処理を示す。
【０１４４】
制御部１０１からの指示に従って、命令選定部１０２が先ず、抽出ＣＰＵ演算命令グループの抽出（選択）処理を開始する。
【０１４５】
図９のステップＳ１において、命令選定部１０２は、ＣＰＵ演算命令テーブル２０１を参照し、その最初のＣＰＵ演算命令（代表ＣＰＵ演算命令）を選択する（図９の矢印Ｐ１参照）。
【０１４６】
図９のステップＳ２において、命令選定部１０２は、ＣＰＵ１１のＣＰＵコアと同数（ＣＰＵコア数分）のスレッドを起動する。そして、命令選定部１０２は、起動した各スレッドで、選択した代表ＣＰＵ演算命令をそれぞれ繰り返し実行させる（図９の矢印Ｐ２参照）。
【０１４７】
図９のステップＳ３において、命令選定部１０２は、測定処理部１０６を介してハードウェア実行中の消費電力を測定させる（図９の矢印Ｐ３参照）。ハードウェア管理機能部１４は、測定処理部１０６による指示（制御）に従ってＣＰＵ１１の消費電力を測定し、測定処理部１０６に応答する（図９の矢印Ｐ４，Ｐ５参照）。
【０１４８】
命令選定部１０２は、図９のステップＳ４において、測定した消費電力を、ＣＰＵ演算命令テーブル２０１に代表ＣＰＵ演算命令に対応付けて登録する（図９の矢印Ｐ６参照）。
【０１４９】
演算処理部１０５は、命令選定部１０２に対して、各ＣＰＵコアにおけるスレッドの実行完了を通知する（図９の矢印Ｐ７照）。
【０１５０】
図９のステップＳ５において、命令選定部１０２は、ＣＰＵコア数分のスレッドの実行完了を確認すると、図９のステップＳ６において、全てのＣＰＵ演算命令グループについて代表ＣＰＵ演算命令の実行時の消費電力の測定が終了したかを確認する。
【０１５１】
確認の結果、全ＣＰＵ演算命令グループについての代表ＣＰＵ演算命令の実行時の消費電力の測定が終了していない場合には（ステップＳ６のＮｏルート参照）、ステップＳ１に戻る。そして、代表ＣＰＵ演算命令の実行時の消費電力の測定が行われていないＣＰＵ演算命令グループについて、ステップＳ１以降の処理を行なう。
【０１５２】
全ＣＰＵ演算命令グループについての代表ＣＰＵ演算命令の実行時の消費電力の測定が終了している場合には（ステップＳ６のＹｅｓルート参照）、図９のステップＳ７に移行する。
【０１５３】
ステップＳ７においては、命令選定部１０２は、ＣＰＵ演算命令テーブル２０１を参照して（図９の矢印Ｐ８参照）、ＣＰＵ演算命令テーブル２０１に登録されている複数のＣＰＵ演算命令グループのうち、消費電力が最も多いＣＰＵ演算命令グループ（抽出ＣＰＵ演算命令グループ）を抽出（選択）する。すなわち、命令選定部１０２は、消費電力が最も大きい代表ＣＰＵ演算命令を備えるＣＰＵ演算命令グループを抽出ＣＰＵ演算命令グループとして選択する。
【０１５４】
次に、制御部１０１からの指示に従って、命令選定部１０２が、特定ＣＰＵ演算命令の選択処理を開始する。
【０１５５】
図１０のステップＳ８において、命令選定部１０２は、ＣＰＵ演算命令テーブル２０１を参照し（図１０の矢印Ｐ９参照）、抽出ＣＰＵ演算命令グループに登録されている複数のＣＰＵ演算命令の中から、一のＣＰＵ演算命令を選択する。
【０１５６】
図１０のステップＳ９において、命令選定部１０２は、ＣＰＵ１１のＣＰＵコアと同数（ＣＰＵコア数分）のスレッドを起動する。そして、命令選定部１０２は、起動した各スレッドで、選択したＣＰＵ演算命令をそれぞれ繰り返し実行させる（図１０の矢印Ｐ１０参照）。
【０１５７】
図１０のステップＳ１０において、命令選定部１０２は、測定処理部１０６を介してハードウェア実行中の消費電力を測定させる（図１０の矢印Ｐ１１参照）。ハードウェア管理機能部１４は、測定処理部１０６による指示（制御）に従ってＣＰＵ１１の消費電力を測定し、測定処理部１０６に応答する（図１０の矢印Ｐ１２，Ｐ１３参照）。
【０１５８】
命令選定部１０２は、図１０のステップＳ１１において、測定した消費電力を、ＣＰＵ演算命令テーブル２０１にＣＰＵ演算命令に対応付けて登録する（図１０の矢印Ｐ１４参照）。
【０１５９】
演算処理部１０５は、命令選定部１０２に対して、各ＣＰＵコアにおけるスレッドの実行完了を通知する（図１０の矢印Ｐ１５参照）。
【０１６０】
図１０のステップＳ１２において、命令選定部１０２は、ＣＰＵコア数分のスレッドの実行完了を確認すると、図１０のステップＳ１３において、抽出ＣＰＵ演算命令グループの全てのＣＰＵ演算命令についてＣＰＵ演算命令の実行時の消費電力の測定が終了したかを確認する。
【０１６１】
確認の結果、抽出ＣＰＵ演算命令グループの全てのＣＰＵ演算命令の実行時の消費電力の測定が終了していない場合には（ステップＳ１３のＮｏルート参照）、ステップＳ８に戻る。そして、抽出ＣＰＵ演算命令グループにおける、ＣＰＵ演算命令の実行時の消費電力の測定が行われていないＣＰＵ演算命令について、ステップＳ８以降の処理を行なう。
【０１６２】
抽出ＣＰＵ演算命令グループの全ＣＰＵ演算命令についてのＣＰＵ演算命令の実行時の消費電力の測定が終了している場合には（ステップＳ１３のＹｅｓルート参照）、図１０のステップＳ１４に移行する。
【０１６３】
ステップＳ１４においては、命令選定部１０２は、ＣＰＵ演算命令テーブル２０１を参照して（図１０の矢印Ｐ１６参照）、複数のＣＰＵ演算命令のうち、消費電力が最も多いＣＰＵ演算命令（特定ＣＰＵ演算命令）を抽出（選択）する。すなわち、命令選定部１０２は、消費電力が最も大きいＣＰＵ演算命令を特定ＣＰＵ演算命令として選択する。
【０１６４】
次に、制御部１０１からの指示に従って、周波数取得部１０３が、レベル対応テーブル２０２の作成処理を開始する。
【０１６５】
図１１のステップＳ１５において、周波数取得部１０３は、周波数帯対応テーブル２０３に、測定対象とするＣＰＵコア数を格納（登録）する（図１１の矢印Ｐ１７参照）。なお、測定対象とするＣＰＵコア数の初期値は１とする。
【０１６６】
図１１のステップＳ１６において、周波数取得部１０３は、測定対象のＣＰＵコア数分のＣＰＵコアにバインドしたスレッドを起動し、演算処理部１０５に、起動した各スレッドで、特定ＣＰＵ演算命令を繰り返し実施（実行）させる（図１１の矢印Ｐ１８参照）。
【０１６７】
周波数取得部１０３は、周波数帯対応テーブル２０３に登録された各ＣＰＵコア数のそれぞれについて、測定処理部１０６に、周波数，温度および実行時間の測定、および周波数帯対応テーブル２０３への記録の各処理を行なわせる（図１１の矢印Ｐ１９参照）。
【０１６８】
図１１のステップＳ１７において、測定処理部１０６は、周波数，温度および実行時間の測定、および周波数帯対応テーブル２０３への記録（図１１の矢印Ｐ２１ａ参照）の各処理を行なう。例えば、測定処理部１０６は、ハードウェア管理機能部１４等を介して、ＣＰＵ１１の温度測定を行なう（図１１の矢印Ｐ２０，２１参照）。
【０１６９】
演算処理部１０５は、周波数取得部１０３に対して、各ＣＰＵコアにおけるスレッドの実行完了を通知する（図１１の矢印Ｐ２２参照）。
【０１７０】
図１１のステップＳ１８において、周波数取得部１０３は、ＣＰＵコア数分のスレッドの実行完了を確認すると、図１１のステップＳ１９において、周波数帯対応テーブル２０３にＣＰＵ演算命令の実行時間を格納する（図１１の矢印Ｐ２３参照）。
【０１７１】
図１１のステップＳ２０において、周波数取得部１０３は、測定した周波数値に基づき周波数レベルの判定を行なう。
【０１７２】
例えば、周波数取得部１０３は、周波数帯対応テーブル２０３を参照して（図１１の矢印Ｐ２４参照）、測定した周波数を、前回の測定結果の周波数と比較する。比較の結果、所定閾値（例えばベースクロックの周波数）以上高い場合（高周波数）には、レベル値を１加算（インクリメント）し、所定閾値以上低い場合（低周波数）には、レベル値を１減算（デクリメント）する。これらの算出（更新）されたレベル値は、周波数帯対応テーブル２０３に登録される（図１１の矢印Ｐ２５参照）。
【０１７３】
図１１のステップＳ２１において、周波数取得部１０３は、周波数帯対応テーブル２０３における全てのＣＰＵコア数についてスレッドの実行や消費電力等の測定および周波数レベルの判定が終了したかを確認する。
【０１７４】
確認の結果、全ＣＰＵコア数について、スレッドの実行や消費電力等の測定および周波数レベルの判定が終了していない場合には（ステップＳ２１のＮｏルート参照）、図１１のステップＳ２２においてＣＰＵコア数に１を加算（インクリメント）する。その後、ステップＳ１５に戻る。そして、スレッドの実行や消費電力等の測定および周波数レベルの判定が行われていないＣＰＵコア数について、ステップＳ１６以降の処理を行なう。
【０１７５】
一方、確認の結果、全ＣＰＵコア数について、スレッドの実行や消費電力等の測定および周波数レベルの判定が終了している場合には（ステップＳ２１のＹｅｓルート参照）、図１１のステップＳ２３に移行する。
【０１７６】
周波数取得部１０３は、作成した周波数帯対応テーブル２０３に基づき、レベル対応テーブル２０２を作成する。
【０１７７】
ステップＳ２３において、周波数取得部１０３は、周波数帯対応テーブル２０３を参照して（図１１の矢印Ｐ２６参照）、レベル毎に対応するＣＰＵコア数を抽出し、レベル対応テーブル２０２における対応するレベルに関連付けて登録する（図１１の矢印Ｐ２７参照）。なお、周波数帯対応テーブル２０３において、同一レベルに対して複数種類のＣＰＵコア数が登録されている場合には、ＣＰＵコア数が多い方を採用してレベルに対して設定する。
【０１７８】
また、周波数取得部１０３は、ＣＰＵコア数を設定したレベルについて、選択したＣＰＵコア数に対応する周波数値，実行時間および温度を周波数帯対応テーブル２０３から抽出し、レベル対応テーブル２０２に登録する。
【０１７９】
このようにして、周波数取得部１０３は、周波数帯対応テーブル２０３に登録された情報からレベル対応テーブル２０２を作成する。
【０１８０】
制御部１０１からの指示に従って、試験実行部１０４が先ず、固定ＣＰＵ周波数帯でのＣＰＵコアの動作検証を行なう。
【０１８１】
図１２のステップＳ２４において、試験実行部１０４は、先ず、試験対象のレベル（試験対象レベル）を選択する。なお、レベルの初期値は０であるものとする。
【０１８２】
図１２のステップＳ２５において、試験実行部１０４は、レベル対応テーブル２０２から試験対象レベルに対応するＣＰＵコア数（実現ＣＰＵコア数）を取得する（図１２の矢印Ｐ２８参照）。
【０１８３】
図１２のステップＳ２６において、試験実行部１０４は、実現ＣＰＵコア数分のＣＰＵコアを選択する。なお、ＣＰＵコアは、例えば、コアＩＤの値が小さいものから順に選択され、初回においてはＣＰＵコア０から順番に選択される。
【０１８４】
試験実行部１０４は、選択したＣＰＵコアでバインドしたスレッドを生成し、これらのスレッドをそれぞれ起動して、各ＣＰＵコアのそれぞれに、命令選定部１０２によって選定された特定ＣＰＵ演算命令を実施（実行）させる（図１２の矢印Ｐ２９参照）。
【０１８５】
また、試験実行部１０４は、スレッドによる特定ＣＰＵ演算命令の実行中において、測定処理部１０６に周波数，ＣＰＵ温度および実行時間を測定させる（図１２の矢印Ｐ３０参照）。
【０１８６】
図１２のステップＳ２７において、測定処理部１０６は、周波数，温度および実行時間の測定を行なう。例えば、測定処理部１０６は、ハードウェア管理機能部１４等を介して、ＣＰＵ１１の温度測定を行なう（図１２の矢印Ｐ３１，Ｐ３２参照）。測定された各値は、例えば、メモリ１２やＨＤＤ１３の所定の記憶領域に記録される。
【０１８７】
演算処理部１０５は、試験実行部１０４に対して、各ＣＰＵコアにおけるスレッドの実行完了を通知する（図１２の矢印Ｐ３３参照）。
【０１８８】
図１２のステップＳ２８において、試験実行部１０４は、ＣＰＵコア数分のスレッドの実行完了を確認すると、図１２のステップＳ２９において、ＣＰＵ演算命令の実行時間をメモリ１２やＨＤＤ１３の所定の記憶領域に格納する。
【０１８９】
図１２のステップＳ３０において、試験実行部１０４は、測定された各値（測定値）が正しいものであるかを確認する。
【０１９０】
すなわち、試験実行部１０４は、レベル対応テーブル２０２における試験対象レベルの各値を取得し（図１２の矢印Ｐ３４参照）、これらの値を期待値として、各測定値と比較する。
【０１９１】
図１２のステップＳ３１において、試験実行部１０４は、ＣＰＵ１１に備えられた全てのＣＰＵコアについてステップＳ２６〜Ｓ３０の試験を行なったかを確認する。確認の結果、試験を行なっていないＣＰＵコアがある場合には（ステップＳ３１のＮｏルート参照）、図１２のステップＳ３２に移行する。ステップＳ３２においては、試験が行なわれていない次のＣＰＵコアを選択した後、ステップＳ２６に戻る。
【０１９２】
一方、ステップＳ３１における確認の結果、試験を行なっていないＣＰＵコアがない場合には（ステップＳ３１のＹｅｓルート参照）、図１２のステップＳ３３に移行する。
【０１９３】
ステップＳ３３においては、試験実行部１０４は、レベル対応テーブル２０２に登録された全レベルについてステップＳ２５〜Ｓ３２の試験を行なったかを確認する。確認の結果、試験を行なっていないレベルがある場合には（ステップＳ３３のＮｏルート参）、図１２のステップＳ３４に移行する。ステップＳ３４において、試験実行部１０４は、レベル値に１を加算（インクリメント）し、その後、ステップＳ２５に戻る。
【０１９４】
また、ステップＳ３３における確認の結果、全てのレベルについて試験を行なった場合には（ステップＳ３３のＹｅｓルート参照）、図１３のステップＳ３５に移行する。
【０１９５】
制御部１０１からの指示に従って、試験実行部１０４は、次に、ＣＰＵ周波数変動でのＣＰＵコアの動作検証を行なう。
【０１９６】
図１３のステップＳ３５において、試験実行部１０４は、先ず、試験対象のレベル（試験対象レベル）として、レベル０〜５のうち、２つのレベルを選択する。試験実行部１０４は、周波数マトリクス２０４に登録されたレベルの組み合わせの中から１つの組み合わせを選択する。
【０１９７】
図１３のステップＳ３６において、試験実行部１０４は、レベル対応テーブル２０２から試験対象レベルに対応する各ＣＰＵコア数（実現ＣＰＵコア数）を取得する（図１３の矢印Ｐ３５参照）。試験実行部１０４は、これらの２つのＣＰＵコア数のうち、値の大きい方、すなわちＣＰＵコア数が多い方の値を選択する。
【０１９８】
図１３のステップＳ３７において、試験実行部１０４は、ステップＳ３６において選択したＣＰＵコア数（実現ＣＰＵコア数）分のＣＰＵコアを選択する。なお、ＣＰＵコアは、例えば、コアＩＤの値が小さいものから順に選択され、初回においてはＣＰＵコア０から順番に選択される。
【０１９９】
試験実行部１０４は、選択したＣＰＵコア数分のＣＰＵコアにバインドしたスレッドを生成する。試験実行部１０４は、これらのスレッドをそれぞれバインドしたＣＰＵコアによって起動させて、各ＣＰＵコアのそれぞれに、命令選定部１０２によって選定された特定ＣＰＵ演算命令を実施（実行）させる（図１３の矢印Ｐ３６参照）。
【０２００】
また、試験実行部１０４は、スレッドによる特定ＣＰＵ演算命令の実行中において、測定処理部１０６に周波数，ＣＰＵ温度および実行時間を測定させる。
【０２０１】
図１３のステップＳ４６において、測定処理部１０６は、周波数，温度および実行時間の測定を行なう。例えば、測定処理部１０６は、ハードウェア管理機能部１４等を介して、ＣＰＵ１１の温度測定を行なう（図１３の矢印Ｐ３８，Ｐ３９参照）。測定された各値は、例えば、メモリ１２やＨＤＤ１３の所定の記憶領域に記録される。
【０２０２】
また、試験実行部１０４は、測定処理部１０６を介して取得した周波数，実行時間およびＣＰＵ温度の各測定値を、レベル対応テーブル２０２における、第１および第２の各レベル（例えばレベル１，４）の周波数、ＣＰＵ温度、実行時間の各値（期待値）と比較する。
【０２０３】
試験実行部１０４は、測定値が期待値から乖離している（所定値以上離れている）ことや、性能低下（実行時間の増加）を検出した場合には、周波数マトリクス２０４における対応箇所に、異常傾向にあることを示す“ＮＧ”を登録する。一方、測定値が期待値に近い（所定の範囲内に収まっている）場合には、試験実行部１０４は、周波数マトリクス２０４における対応箇所に、正常であることを示す“ＯＫ”を登録する（図１３のステップＳ４７；図１３の矢印Ｐ４０参照）。
【０２０４】
また、上述したステップＳ３６において、生成したスレッドをそれぞれバインドしたＣＰＵコアによって起動させた後、図１３のステップＳ３８において、試験実行部１０４は、所定時間（第１待ち時間Ｔ１）の経過待ちを行なう。
【０２０５】
第１待ち時間Ｔ１が経過すると、図１３のステップＳ３９において、試験実行部１０４は、スレッドを実行中の複数（第１のＣＰＵコア数）のＣＰＵコアにおいて、ステップＳ３５において抽出した２つのＣＰＵコア数の差分と同数のスレッドの実行を一時的に停止させる。これにより、第２のＣＰＵコア数と同数のＣＰＵコアによるスレッド（特定ＣＰＵ演算命令）の実施が行なわれる。
【０２０６】
次に、図１３のステップＳ４０において、試験実行部１０４は、所定時間（第２待ち時間Ｔ２）の経過待ちを行なう。
【０２０７】
第２待ち時間Ｔ２が経過すると、試験実行部１０４は、図１３のステップＳ４１において、上記ステップＳ３８で一時停止させたスレッドを再開させる。
【０２０８】
これらのステップＳ３８〜Ｓ４１の処理を、一定の時間Ｔ３が経過するまで繰り返し行なう（図１３のステップＳ４２）。これにより、第１のコア数のＣＰＵコアによる第１のレベルでの動作と、第２のコア数のＣＰＵコアによる第２のレベルでの動作とが、交互に（周期的に）行なわれる。
【０２０９】
そして、時間Ｔ３が経過すると、図１３のステップＳ４３に移行する。ステップＳ４３において、試験実行部１０４は、第１待ち時間Ｔ１および第２待ち時間Ｔ２を、それぞれ変更（＋10msec）する。
【０２１０】
試験実行部１０４は、ステップＳ３８〜Ｓ４３の処理を、例えば、第１待ち時間Ｔ１および第２待ち時間Ｔ２がそれぞれ1000msecとなるまで繰り返し行なう（図１３のステップＳ４４）。
【０２１１】
第１待ち時間Ｔ１および第２待ち時間Ｔ２がそれぞれ1000msecに到達すると、図１３のステップＳ４５において、試験実行部１０４は、演算処理部１０５に、各ＣＰＵコアにおけるスレッドの実行を終了させる（図１３の矢印Ｐ３７参照）。
【０２１２】
図１３のステップＳ４８において、試験実行部１０４は、周波数マトリクス２０４における全てのレベルの組み合わせについて、上記ステップＳ３６〜Ｓ４７の処理が行なわれたかを確認する。
【０２１３】
周波数マトリクス２０４における全てのレベルの組み合わせについて、上記ステップＳ３６〜Ｓ４７の処理が行なわれていない場合には（ステップＳ４８のＮｏルート参照）、図１３のステップＳ４９に移行する。
【０２１４】
ステップＳ４９において、試験実行部１０４は、周波数マトリクス２０４における試験をまだ実施していない次のレベルの組み合わせを選択して、ステップＳ３６に戻る。
【０２１５】
一方、周波数マトリクス２０４における全てのレベルの組み合わせについて、上記ステップＳ３６〜Ｓ４７の処理が行なわれている場合には（ステップＳ４８のＹｅｓルート参照）、図１３のステップＳ５０に移行する。
【０２１６】
ステップＳ５０において、試験実行部１０４は、周波数マトリクス２０４においてＮＧが登録された、すなわち、異常指摘が行なわれたレベルの組み合わせについて、更に集中的に試験を行なう。その後、処理を終了する。
【０２１７】
（Ｃ）効果
実施形態の一例としてのコンピュータ１０によれば、試験実行部１０４が、レベル対応テーブル２０２を参照して、所望するレベルに対応するＣＰＵコア数を取得し、このコア数にバインドしたスレッドにおいて特定ＣＰＵ演算命令を実行させる。
【０２１８】
これにより、所望する周波数でＣＰＵコアを動作させることができ、ＣＰＵ１１に対して効率的に負荷試験を行なうことができる。
【０２１９】
また、試験実行部１０４が、周波数マトリクス２０４を参照して２つのレベルの組み合わせを選択し、レベル対応テーブル２０２を参照して、これらの２つのレベルに対応するＣＰＵコア数をそれぞれ取得する。
【０２２０】
そして、試験実行部１０４が、これらのコア数にバインドしたスレッドにおいて特定ＣＰＵ演算命令を交互に実行させることで、所望する変動ＣＰＵ周波数でＣＰＵコアを動作させることができ、ＣＰＵ１１に対して効率的に負荷試験を行なうことができる。
【０２２１】
本コンピュータ１０においては、ＣＰＵ周波数に起因する障害検出を効率的に行なうことができる。
【０２２２】
試験実行部１０４が、ＣＰＵ周波数変動を生じさせることで、ＣＰＵ１１や電力関係の回路に対して、高負荷と低負荷とを効率的にかけることができ、これらのＣＰＵ１１や電力関係の回路の障害を効率的に見つけることができる。すなわち、試験効率を向上させることができる。
【０２２３】
変動周波数試験において、試験実行部１０４が、待ち時間Ｔ１，Ｔ２を変化させることで、一定の負荷をかけるだけでは検出されない障害を検出することができる。
【０２２４】
命令選定部１０２が消費電力が多いＣＰＵ演算命令（特定ＣＰＵ演算命令）を選択し、試験実行部１０４がこの特定ＣＰＵ演算命令をＣＰＵコアに実行させることでＣＰＵコアの負荷試験を行なう。消費電力が多いＣＰＵ演算命令を用いることで、ＣＰＵコアに負荷を与えることができ、効率的に負荷試験を行なうことができる。
【０２２５】
（Ｄ）その他
そして、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
【０２２６】
例えば、上述した実施形態においては、ＣＰＵ１１が試験プログラムを実行することで、この試験プログラムの実行モジュールがＣＰＵ１１を構成する複数のＣＰＵコアの１つ以上で実行され、このＣＰＵ１１を構成する複数のＣＰＵコアの試験を行なうが、これに限定されるものではない。
【０２２７】
コンピュータ１０が複数のＣＰＵを備え、これらの複数のＣＰＵのうちの一部のＣＰＵコアにおいて試験プログラムを実行し、他のＣＰＵのＣＰＵコアの試験を行なってもよい。また、コンピュータ１０が通信回線を介して他のコンピュータと通信可能に接続され、このコンピュータ１０において試験プログラムを実行することで、このコンピュータ１０に接続された他のコンピュータのＣＰＵのＣＰＵコアの試験を行なってもよい。
【０２２８】
また、上述した実施形態においては、試験実行部１０４が、試験の継続時間が時間Ｔ３を経過する毎に待ち時間Ｔ１，Ｔ２を、10msecずつ長くすることで変化させているが、これに限定されるものではない。例えば、待ち時間Ｔ１，Ｔ２を、10msec未満もしくは10msecより長い時間ずつ長くしてもよく、適宜変更して実施することができる。また、待ち時間Ｔ１，Ｔ２を時間Ｔ３が経過する毎に短くするように変化させてもよい。
【０２２９】
さらに、待ち時間Ｔ１，Ｔ２をランダムに変化させてもよい。また、待ち時間Ｔ１と待ち時間Ｔ２とを異なる長さとしてもよく、種々変更して実施することができる。
【０２３０】
また、上述した実施形態においては、試験実行部１０４が、固定周波数試験を行なった後に変動周波数試験を行なっているが、これに限定されるものではない。例えば、試験実行部１０４は、変動周波数試験を行なった後に固定周波数試験を行なってもよく、また、固定周波数試験のみもしくは変動周波数試験のみを行なってもよい。さらに、これらとともに既知の他の負荷試験と組み合わせて実施してもよい。
【０２３１】
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
【０２３２】
（Ｅ）付記
以上の実施形態に関し、更に以下の付記を開示する。
【０２３３】
（付記１）
複数の演算コアを有する処理装置を備える情報処理装置であって、
当該情報処理装置の負荷状態を示す負荷状態情報と前記負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定する決定部と、
前記複数の演算コアのうち、前記決定された演算コア数と同数の演算コアに演算命令を実行させる演算処理部と、
前記演算コアによる前記演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう異常検証部と
を備えることを特徴とする、情報処理装置。
【０２３４】
（付記２）
前記決定部が、前記参照情報を参照して、複数の前記負荷状態のうち一の負荷状態に対応する前記演算コア数を決定し、
前記演算処理部が、前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させる
ことを特徴とする、付記１記載の情報処理装置。
【０２３５】
（付記３）
前記決定部が、前記参照情報を参照して、複数の前記負荷状態のうち第１の負荷状態に対応する第１の演算コア数と、複数前記負荷状態のうち第２の負荷状態に対応する第２の演算コア数とをそれぞれ決定し、
前記演算処理部が、前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる
ことを特徴とする、付記１または２記載の情報処理装置。
【０２３６】
（付記４）
前記演算処理部が、前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させた後、前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる
ことを特徴とする、付記１〜３のいずれか１項に記載の情報処理装置。
【０２３７】
（付記５）
前記複数の演算コアのうち１以上の各数の演算コアに演算命令を実行させた状態で当該情報処理装置の各負荷状態を表す負荷状態情報を収集し、
収集した各負荷状態を複数のレベルに分類し、
前記レベルと前記演算コア数と前記負荷状態情報とを対応付けることにより、前記参照情報を作成する作成部
を備えることを特徴とする、付記１〜４のいずれか１項に記載の情報処理装置。
【０２３８】
（付記６）
複数の演算命令候補のそれぞれを演算コアに実行させ、前記複数の演算命令候補の中から消費電力の最も大きい演算命令を選定する命令選定部を備え、
前記演算処理部が、選定された前記演算命令を前記演算コアに実行させる
ことを特徴とする、付記１〜５のいずれか１項に記載の情報処理装置。
【０２３９】
（付記７）
複数の演算コアを有する処理装置を備える情報処理装置において、
当該情報処理装置の負荷状態を示す負荷状態情報と前記負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定し、
前記複数の演算コアのうち、前記決定された演算コア数と同数の演算コアに演算命令を実行させ、
前記演算コアによる前記演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう
処理をコンピュータに実行させる、試験プログラム。
【０２４０】
（付記８）
前記参照情報を参照して、複数の前記負荷状態のうち一の負荷状態に対応する前記演算コア数を決定し、
前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させる
処理を前記コンピュータに実行させる、付記７記載の試験プログラム。
【０２４１】
（付記９）
前記参照情報を参照して、複数の前記負荷状態のうち第１の負荷状態に対応する第１の演算コア数と、複数前記負荷状態のうち第２の負荷状態に対応する第２の演算コア数とをそれぞれ決定し、
前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる
処理を前記コンピュータに実行させる、付記７または８記載の試験プログラム。
【０２４２】
（付記１０）
前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させた後、前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる
処理を前記コンピュータに実行させる、付記７〜９のいずれか１項に記載の試験プログラム。
【０２４３】
（付記１１）
前記複数の演算コアのうち１以上の各数の演算コアに演算命令を実行させた状態で当該情報処理装置の各負荷状態を表す負荷状態情報を収集し、
収集した各負荷状態を複数のレベルに分類し、
前記レベルと前記演算コア数と前記負荷状態情報とを対応付けることにより、前記参照情報を作成する
処理を前記コンピュータに実行させる、付記７〜１０のいずれか１項に記載の試験プログラム。
【０２４４】
（付記１２）
複数の演算命令候補のそれぞれを演算コアに実行させ、前記複数の演算命令候補の中から消費電力の最も大きい演算命令を選定し、
選定された前記演算命令を前記演算コアに実行させる
処理を前記コンピュータに実行させる、付記７〜１１のいずれか１項に記載の試験プログラム。
【０２４５】
（付記１３）
複数の演算コアを有する処理装置を備える情報処理装置において、
当該情報処理装置の負荷状態を示す負荷状態情報と前記負荷状態を実現するための演算コア数とを対応付けた参照情報を参照して、演算コア数を決定する処理と、
前記複数の演算コアのうち、前記決定された演算コア数と同数の演算コアに演算命令を実行させる処理と、
前記演算コアによる前記演算命令の実行中に測定された測定情報に基づいて、異常判定を行なう処理と
を備える、試験方法。
【０２４６】
（付記１４）
前記参照情報を参照して、複数の前記負荷状態のうち一の負荷状態に対応する前記演算コア数を決定する処理と、
前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させる処理と
を備える、付記１３記載の試験方法。
【０２４７】
（付記１５）
前記参照情報を参照して、複数の前記負荷状態のうち第１の負荷状態に対応する第１の演算コア数と、複数前記負荷状態のうち第２の負荷状態に対応する第２の演算コア数とをそれぞれ決定する処理と、
前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる処理と
を備える、付記１３または１４記載の試験方法。
【０２４８】
（付記１６）
前記複数の演算コアのうち取得された前記演算コア数と同数の前記演算コアに前記演算命令を実行させて前記一の負荷状態を発生させた後、前記複数の演算コアのうち前記第１の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第１の負荷状態と、前記複数の演算コアのうち前記第２の演算コア数と同数の前記演算コアに前記演算命令を実行させて前記第２の負荷状態とを交互に発生させる処理
を備える、付記１３〜１５のいずれか１項に記載の試験方法。
【０２４９】
（付記１７）
前記複数の演算コアのうち１以上の各数の演算コアに演算命令を実行させた状態で当該情報処理装置の各負荷状態を表す負荷状態情報を収集する処理と、
収集した各負荷状態を複数のレベルに分類する処理と、
前記レベルと前記演算コア数と前記負荷状態情報とを対応付けることにより、前記参照情報を作成する処理と
を備える、付記１３〜１６のいずれか１項に記載の試験方法。
【０２５０】
（付記１８）
複数の演算命令候補のそれぞれを演算コアに実行させ、前記複数の演算命令候補の中から消費電力の最も大きい演算命令を選定する処理と、
選定された前記演算命令を前記演算コアに実行させる処理と
を備える、付記１３〜１７のいずれか１項に記載の試験方法。
【符号の説明】
【０２５１】
１０    コンピュータ（情報処理装置）
１１    ＣＰＵ
１２    メモリ
１３    ＨＤＤ
１４    ハードウェア管理機能部
１０１    制御部
１０２    命令選定部
１０３    周波数取得部
１０４    試験実行部
１０５    演算処理部
１０６    測定処理部
２０１    ＣＰＵ演算命令テーブル
２０２    レベル対応テーブル
２０３    周波数帯対応テーブル
２０４    周波数マトリクス
【図１】
2018169696.tif 000003
【図２】
2018169696.tif 000004
【図３】
2018169696.tif 000005
【図４】
2018169696.tif 000006
【図５】
2018169696.tif 000007
【図６】
2018169696.tif 000008
【図７】
2018169696.tif 000009
【図８】
2018169696.tif 000010
【図９】
2018169696.tif 000011
【図１０】
2018169696.tif 000012
【図１１】
2018169696.tif 000013
【図１２】
2018169696.tif 000014
【図１３】
2018169696.tif 000015