JP2008071237A - ハードウェアモニタを用いた性能評価システム及び再構築可能な計算機システム - Google Patents
ハードウェアモニタを用いた性能評価システム及び再構築可能な計算機システム Download PDFInfo
- Publication number
- JP2008071237A JP2008071237A JP2006250645A JP2006250645A JP2008071237A JP 2008071237 A JP2008071237 A JP 2008071237A JP 2006250645 A JP2006250645 A JP 2006250645A JP 2006250645 A JP2006250645 A JP 2006250645A JP 2008071237 A JP2008071237 A JP 2008071237A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- memory access
- access request
- response time
- measurement result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/87—Monitoring of transactions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/88—Monitoring involving counting
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【解決手段】CPUとメモリ及びI/Oインターフェースを接続するコントローラとを備えた計算機システムにおいて、前記コントローラ6は、メモリに対するアクセス要求を受け付けると、当該メモリアクセス要求に対する応答時間を測定する応答時間測定部(SUB120)と、メモリアクセス要求の発行回数を測定する度数カウント部(インクリメンタ122)と、応答時間に対応する前記発行回数とを関連づけた測定結果を格納する測定結果記憶部(レジスタファイル118)と、測定結果の読み出し要求があったときには、前記測定結果記憶部に格納された測定結果を出力する測定結果制御部パフォーマンスモニタ制御ユニット105と、を備える。
【選択図】図2
Description
(スループット性能)=(CPU数×CPU周波数×定数)÷(CPUの実行ステップ数×CPI)
ここで、上記定数はスループットの値を単位時間当たり、あるいは単位秒あたりに変換する数を指す。CPIは、CPUの1命令あたりの実行サイクル数のことである。性能を改善するためには、CPU数、CPU周波数を大きくし、実行ステップ数やCPIを小さくすればよい。
CPI=CPI0+(L1キャッシュのミス率−L2キャッシュミス率)×(L2キャッシュのメモリレイテンシ)×Kc+(L2キャッシュのミス率)×(主記憶のメモリレイテンシ)×Km
但し、CPI0:1次キャッシュが無限の容量ある場合の1命令あたりの実行サイクル数
Kc、Km:メモリアクセスが多重実行される場合を考慮したときの定数値
前記の式から、CPU数やCPU周波数を向上すれば性能向上することが分かる。これらは、サーバ上に実装するCPU数と使用するCPU数によって決まる。CPUの実行ステップ数の削減は、コーディング上の工夫やコンパイラによるコードの最適化が従来から取り組まれてきた。
図1は、第1の実施形態を示し、本発明のハードウェアモニタを実装した計算機システムのブロック図である。
以下に、ノード2−1〜2−NのCPUによるメインメモリ5へのアクセス動作及び管理コンソール16から計算機システム1へのアクセスについて説明する。なお、以下の説明では、CPU3−1〜3−Mは同一の構成、動作であるので、CPU3−1のみについて説明し、他のCPUの説明は省略する。
複数のノード2−1〜2−Nをクロスバスイッチ14を介して接続し、ひとつの計算機システムとして構成する場合、メモリアクセス要求を発行したCPUと同じノードに搭載されているメインメモリ(以降、ローカルメモリと呼ぶ)のメモリレイテンシ(応答時間または遅延時間)と、メモリアクセス要求を発行したCPUと異なるノードに搭載されたメインメモリ(以降、リモートメモリと呼ぶ)のメモリレイテンシでは、ノード間の通信が存在しない分、ローカルメモリのメモリレイテンシのほうがリモートメモリのメモリレイテンシよりも短い。ローカルメモリとリモートメモリを物理メモリ空間上に配置する方法は、大きく分けて2種類存在する。
(インタリーブモードの平均メモリレイテンシ)={(ローカルメモリアクセスレイテンシ)+(リモートメモリアクセスレイテンシ)×(ノード数−1)}÷(ノード数)
ローカルメモリに比べてリモートアクセスのレイテンシが非常に大きい場合、平均メモリレイテンシは大きくなってしまうため、NUMAモードを使用するケースもある。この場合、OSならびにアプリケーションプログラムレベルで、メモリアクセスがローカルメモリ領域に収まるようにチューニングをする必要がある。ただし、物理メモリ空間で一部はインタリーブモードで、一部はNUMAモードにするケースも可能である。
以下に、ノードコントローラ6に配置されたパフォーマンスモニタ11の構成を、図2を用いて説明する。
上記図2に示したのパフォーマンスモニタ11の動作について、図面を用いて説明する。
ステップ0:パフォーマンスモニタ11の設定、並びに測定開始(図4)
ステップ1:メモリ要求トランザクションのトランザクションIDと到着時刻を登録する(図5(a)及び図6)。
ステップ2:メモリ要求トランザクションの応答である応答トランザクションのトランザクションIDと到着時刻を用いてレイテンシを計算し、その出現頻度をカウントする(図5(b)及び図7)。
ステップ3:測定の停止、並びに計測したメモリレイテンシの度数分布を管理コンソール16で読み出し、ヒストグラムを表示する(図10、図8)。
図3に示したステップ0の動作を図4のフローチャートで説明する。
図3のステップ1の概要を図5(a)を用いて説明する。トランザクション処理ユニット8からパフォーマンスモニタ11に発行されたメモリ要求トランザクションのトランザクションID210をCAM115に登録する(205)。図5(a)では、Tx0というトランザクションIDをエントリ番号#0に登録している。ところで、CAM115は、連想メモリとも呼ばれる特殊なメモリで、CAM115内部に格納された複数のデータと、外部からの参照データを平行して比較し、一致するデータが存在した場合、一致信号とそのデータが格納されているエントリのアドレスを出力するメモリである。
図3のステップ2の概要を図5(b)を用いて説明する。本実施形態の計算機システム1は、トランザクションIDは、メモリ要求トランザクションとその応答であるメモリ応答トランザクションで同じものが使用される仕様である。この性質を使ってメモリレイテンシを求める。
図3に示したステップ3の動作について主に図8を用いて説明する。
上述の説明では、CPU3−1〜3−Mからのメモリアクセス要求のメモリレイテンシのヒストグラムを作成する手段及び動作を説明した。このCPU3−1〜3−Mからのメモリアクセス要求の代わりに、I/Oにおいて、例えばDMA転送におけるメインメモリの読出し要求(DMAリードコマンド)を適用することで、DMA転送でのメモリアクセス特性を示すヒストグラムを作成が可能であり、DMA転送の性能検証に応用できる。例えば、I/Oインターフェース7のDMA制御部(図示省略)からメインメモリ5へのアクセス要求をノードコントローラ6が受け付けると、上記CPU3−1からのメモリアクセス要求と同様に、メモリレイテンシとアクセス頻度を対応付けて測定することができる。
上述の手段及び方法で得られるヒストグラムを用いてアプリケーションプログラムのメモリアクセス特性の調査を行う方法を説明する。このメモリアクセス特性の調査は、以下の2フェーズから構成される。
(1)事前検証フェーズ:基本ベンチマークを実行して基本特性データベースを作成する。
(2)実計測フェーズ:検証対象のアプリケーションの動作中のメモリレイテンシのヒストグラムを作成し、基本特性データベースと比較してメモリアクセス特性を推定する。
図10を用いて事前検証フェーズの処理について説明する。
次に、図12を用いて実計測フェーズの処理について説明する。
基本特性データベース506のヒストグラムと、実計測フェーズで作成したヒストグラムを比較する方法としては、様々な手法が考えられる。ここでは、その一例について説明する。
Hr(l)≒K1×H1(l)+K1×H2(l)+…+KN×HN(l)
ただし、Kiは0以上の実数
という式が成り立つ。基本特性データベース506の要素を増やすことで、より精度の高い近似ができると考えられる。
上述のアプリケーションのメモリアクセス特性を推定する方法を応用し、対象とする計算機システム1の複数のノード2−1〜2−Nを、一つのSMP(Symmetric Multiple Processor)サーバに構成変更できるようにしたサーバの構成変更支援システムについて以下に説明する。
図16は、図1に示した計算機システム1の構成を変更可能にしたもので、同一の部分には同一の符号を付して重複した説明を省略する。
システム管理者は、図17に示すようなSMPサーバを構成するノード数と物理メモリ空間の配置の違いを表すメモリアクセスモードの組み合わせで、予めベンチマークプログラムとパフォーマンスモニタで計測したメモリレイテンシのヒストグラムを調査する。このとき、メインメモリ(主記憶)5のレイテンシだけでなく、I/Oデバイスが発行したメインメモリ5からI/OデバイスへのDMAリードのレイテンシの影響を考慮する場合は、DMAによる主記憶リードのヒストグラムを採取する。以下ではメインメモリ5のレイテンシを考慮するケースのみを扱う。なお、以下の説明では図18のフローチャートを参照しながら説明する。
計算機システム500で、評価対象であるSMPサーバ502上でアプリケーションプログラム(実業務プログラムやベンチマークなど)を実行する(図18のステップ400)。
次に、管理サーバ505上で稼動する構成変更支援プログラムはSVP503を通して、前記アプリケーションプログラムが稼動中にSMPサーバ501を構成する各ノード501−1、…、501−kにパフォーマンスモニタ11の操作コマンドを送り、メモリレイテンシのヒストグラムを測定する。
次に、基本特性データベースのヒストグラムとステップ401で作成したヒストグラムを比較し、アプリケーションプログラムの特性を、上述の<メモリアクセス特性の解析方法>で図12、図13を使って説明した方法で、メモリアクセスのアクセスがローカルノードに集中しているかリモートノードに多く行っているのか、アクセスの頻度が高いか低いかなどを解析する。(図18のステップ402)。
上記図18のステップ400からステップ402までの処理で、管理サーバ505の表示装置(図示省略)には図15のメッセージが表示され、システムのメモリアクセス特性が表示される。図15の表示は、ステップ402の解析結果に基づいて、管理サーバ505の構成変更支援プログラムがローカルメモリとリモートメモリのアクセス頻度(図中Locality)と負荷の測定結果を集計したものである。この例では、ローカルメモリへのアクセス頻度が高く、また、負荷も高いことを示し、逆にリモートメモリのアクセス頻度は低く、かつ、負荷も低いことを示している。
図20で示した構成案を元に、システム管理者はサーバのノード数やメモリアクセスモードを変更する。
(1)SMPサーバ502のアプリケーションプログラムのシャットダウン及びOSのシャットダウン。
(2)管理サーバ505からSVP503(図1のSVP15)にブレードサーバ数の変更、メモリアクセスモードの設定コマンドを発行する。前記設定コマンドの入力でSVP503は、各ノードのBMC10を経由してノードコントローラ6のコンフィグレーションレジスタ(図示省略)に、SMPサーバ502を構成するノードを有効化、NUMA等の設定を行う。
(3)OSを再起動。アプリケーションプログラムを起動する。このとき、ノードの追加あるいは削除によりCPU数やメモリ量が変わっているので、アプリケーションプログラムのCPU数やメモリ量の設定を変更する。この変更はシステム管理者が手動でチューニングするか、あらかじめノード数などハードウェア構成ごとの設定パタンを用意して、自動的に設定を入れ替えるようにしてもよい。
図21は、第2の実施形態を示し、前記第1実施形態の計算機システム1のノード2−1〜2−Nに代わって、ブレードサーバ50−1〜50−Nとして、ブレードサーバ50−1〜50−Nにそれぞれ設けたノードコントローラ56で性能測定を行うようにしたものである。その他の構成は前記第1実施形態と同様である。
以下に、ブレードサーバ50−1〜50−NのCPU51−1〜51−Mによる通常のメモリアクセス動作及び管理コンソール65から計算機システム1Aへのアクセスについて説明する。なお、以下の説明では、CPU51−1〜51−Mは同一の構成、動作であるので、CPU51−1のみについて説明し、他のCPUの説明は省略する。
図22は、前記図21のブレードサーバ50−1〜50−Nからなる計算機システム1Aの構成を変更可能にした構成変更システムを示す。
システム管理者は、図17に示すようなSMPサーバを構成するブレードサーバ数と物理メモリ空間の配置の違いを表すメモリアクセスモードの組み合わせで、予めベンチマークプログラムとパフォーマンスモニタで計測したメモリレイテンシのヒストグラムを調査する。このとき、メインメモリ(主記憶)52のレイテンシだけでなく、I/Oデバイスが発行した主記憶からI/OデバイスへのDMAリードのレイテンシの影響を考慮する場合は、DMAによる主記憶リードのヒストグラムを採取する。以下ではメインメモリ52のレイテンシを考慮するケースのみを扱う。なお、以下の説明では前記第1実施形態に示した図18のフローチャートを参照しながら説明する。
評価対象であるSMPサーバ602上でアプリケーションプログラム(実業務プログラムやベンチマークなど)を実行する(図18のステップ400)。
次に、管理サーバ605上で稼動する構成変更支援プログラムはSVP603を通して、前記アプリケーションプログラムが稼動中にSMPサーバ602を構成する各ブレードサーバ601−1、…、601−kにパフォーマンスモニタ(図21のパフォーマンスモニタ59)の操作コマンドを送り、メモリレイテンシのヒストグラムを測定する。
次に、基本特性データベースのヒストグラムとステップ401で作成したヒストグラムを比較し、アプリケーションプログラムの特性を、前記第1実施形態の<メモリアクセス特性の解析方法>で図12、図13を使って説明した方法で、メモリアクセスのアクセスがローカルノードに集中しているかリモートノードに多く行っているのか、アクセスの頻度が高いか低いかなどを解析する。(図18のステップ402)。
図18のステップ400からステップ402までの処理で、管理コンソール605には前記第1実施形態と同様の図15のメッセージが表示され、システムのメモリアクセス特性が表示される。
図20で示した構成案を元に、システム管理者はサーバのブレードサーバ数やメモリアクセスモードを変更する。
(1)SMPサーバ602のアプリケーションプログラムのシャットダウン及びOSのシャットダウン。
(2)管理サーバ605からSVP603(図1のSVP15)にノード数変更、メモリアクセスモードの設定コマンドを発行する。前記設定コマンドの入力でSVP15は、各ノードのBMC10を経由してノードコントローラ6のコンフィグレーションレジスタ(図示無し)に、SMPサーバ602を構成するノードを有効化、NUMA等の設定を行う。
(3)OSを再起動。アプリケーションプログラムを起動する。このとき、ノードの追加あるいは削除によりCPU数やメモリ量が変わっているので、アプリケーションプログラムのCPU数やメモリ量の設定を変更する。この変更はシステム管理者が手動でチューニングするか、あらかじめノード数などハードウェア構成ごとの設定パタンを用意して、自動的に設定を入れ替えるようにしてもよい。一方、図19の変更案でクラスタ構成を推薦された場合、アプリケーションをクラスタ化に対応するように変更しなければならない。例えば、データベースマネージメントシステムの場合は、データベースのデータ分割や、接続するアプリケーションサーバやWebサーバ側の設定も変更する場合もある。
図23は第3の実施形態を示し、図2に示したパフォーマンスモニタ11が測定するレイテンシの範囲や間隔を任意に設定し、測定の自由度を向上させるものである。
(1)回路の概略
図23の回路の概略を説明する。レジスタファイル117の読み出しデータと、フリーランカウンタ119の出力は減算器120に入力される。減算器120の出力(=フリーランカウンタ119の値−レジスタファイル117の読み出しデータ)は、減算器704に出力されている。
(2)追加回路動作例
(2−1)計測レンジの変更
測定可能なレイテンシの観測範囲とシフト幅の関係を図24に示す。減算器120の出力であるメモリレイテンシのデータをシフタ710で右シフトすることで、計測可能なレイテンシの幅が変更できる。例えば、レジスタファイル701が128エントリある場合、0サイクルから127サイクルのレイテンシまで測定可能である。
(2−2)測定する範囲の変更
観測範囲の最小測定値が0サイクルではなく、特定のサイクル数(以降、ベースサイクル数と呼ぶ)から測定したいケースもある。この場合、ベースサイクル数を測定開始前にベースレジスタ705に設定しておき、減算器120の出力にもう一つの減算器704を接続してベースサイクル数とレイテンシの差分をとることで測定対象とするレイテンシのサイクル数を変更できる。例えば、ベースサイクル数(=ベースレジスタ705の値)を255と設定することで、0サイクルから255サイクルの測定範囲が255サイクルから511サイクルに測定する範囲変更できる。このとき、上記(2−1)で述べたように254サイクル以下のレイテンシの発生数を調査したい場合、ベースレジスタ705より小さいレイテンシを255サイクルの測定値としてカウントすることで対処ができる。これは、比較器705の追加とセレクタ710の選択判定を図25のようにすることで実現できる。
少なくとも1つのCPUと、前記CPUとメモリ及びI/Oインターフェースを接続するコントローラにおいて、
前記コントローラは、
前記メモリに対するアクセス要求を受け付けると、当該メモリアクセス要求に対する応答時間を測定する応答時間測定部と、
前記メモリアクセス要求の発行回数を測定する度数カウント部と、
前記応答時間に対応する前記発行回数とを関連づけた測定結果を格納する測定結果記憶部と、
前記測定結果の読み出し要求があったときには、前記測定結果記憶部に格納された測定結果を出力する測定結果制御部と、
を備えたことを特徴とするコントローラ。
前記コントローラは、
前記メモリに対するアクセス要求を受け付けると、当該メモリアクセス要求に対する応答時間を測定する応答時間測定部と、
前記メモリアクセス要求の発行回数を測定する度数カウント部と、
前記応答時間に対応する前記発行回数とを関連づけた測定結果を格納する測定結果記憶部と、
前記測定結果の読み出し要求があったときには、前記測定結果記憶部に格納された測定結果を出力する測定結果制御部と、
を備えたことを特徴とするコントローラ。
2−1〜2−N ノード
3−1〜3−M、51−1〜51−M CPU
5、52 メインメモリ
6、56 ノードコントローラ(チップセット)
8、57 トランザクション処理ユニット
9、58 トランザクション処理制御ユニット
11、59 パフォーマンスモニタ
16、65 管理コンソール
50−1〜50−N ブレードサーバ
105 パフォーマンスモニタ制御ユニット
106 メモリマップドレジスタ
107 イネーブルレジスタ
108 トランザクションタイプレジスタ
109 リードアドレスレジスタ
110 度数レジスタ
111 メモリアクセス要求トランザクションレジスタ
112 メモリアクセス応答トランザクションレジスタ
113、114 セレクタ
115 CAM
116 CAM書き込み制御ユニット
117、118 レジスタファイル
119 フリーランカウンタ
120 減算器
121 ANDゲート
122 インクリメンタ
Claims (17)
- 少なくとも1つのCPUと、前記CPUとメモリ及びI/Oインターフェースを接続するコントローラとを備えた計算機システムにおいて、
前記コントローラは、
前記メモリに対するアクセス要求を受け付けると、当該メモリアクセス要求に対する応答時間を測定する応答時間測定部と、
前記メモリアクセス要求の発行回数を測定する度数カウント部と、
前記応答時間に対応する前記発行回数とを関連づけた測定結果を格納する測定結果記憶部と、
前記測定結果の読み出し要求があったときには、前記測定結果記憶部に格納された測定結果を出力する測定結果制御部と、
を備えたことを特徴とする計算機システム。 - 前記メモリアクセス要求は、前記CPUが発行したメモリアクセス要求であることを特徴とする請求項1に記載の計算機システム。
- 前記I/Oインターフェースは、前記メモリに対してアクセスを行うDMA制御部を含み、
前記メモリアクセス要求は、前記I/Oインターフェースが発行したメモリアクセス要求であることを特徴とする請求項1に記載の計算機システム。 - 前記測定結果制御部は、測定結果の読み出し要求を送信する管理端末に接続され、前記読み出し要求を受け付けたときには、前記管理端末へ前記測定結果を送信することを特徴とする請求項1に記載の計算機システム。
- 前記応答時間測定部は、
前記応答時間の測定範囲を設定する測定範囲設定部と、
前記測定する応答時間の間隔を設定する測定間隔設定部と、
を備えたことを特徴とする請求項1に記載の計算機システム。 - 前記管理端末は、
前記測定結果制御部から取得した測定結果に基づいて、前記メモリアクセス要求の応答時間と、当該応答時間に対応するメモリアクセス要求の発行回数から、メモリアクセスの特性を推定することを特徴とする請求項4に記載の計算機システム。 - 前記計算機システムは、
少なくとも1つのCPUと、前記CPUとメモリ及びI/Oインターフェースを接続するコントローラとを含むノードを複数備え、前記複数のノードを相互に接続する通信部を有することを特徴とする請求項1に記載の計算機システム。 - 前記計算機システムは、前記複数のノードのうち、予め設定した複数のノードを組み合わせて一つの処理を実行する物理分割部を備えたことを特徴とする請求項6に記載の計算機システム。
- 少なくとも1つのCPUと、前記CPUとメモリ及びI/Oインターフェースを接続するコントローラとを備えた計算機と、
前記計算機に接続された管理端末と、を備えた計算機の性能評価システムにおいて、
前記コントローラは、
前記メモリに対するアクセス要求を受け付けると、当該メモリアクセス要求に対する応答時間を測定する応答時間測定部と、
前記メモリアクセス要求の発行回数を測定する度数カウント部と、
前記応答時間に対応する前記発行回数とを関連づけた測定結果を格納する測定結果記憶部と、
前記管理端末から測定結果の読み出し要求があったときには、前記測定結果記憶部に格納された測定結果を前記管理端末へ出力する測定結果制御部と、を備え、
前記管理端末は、
前記測定結果制御部から取得した測定結果から、前記メモリアクセス要求の応答時間と、当該応答時間に対応するメモリアクセス要求の発行回数から、メモリアクセスの特性を推定する性能推定部を備えたことを特徴とする計算機の性能評価システム。 - 前記メモリアクセス要求は、前記CPUが発行したメモリアクセス要求であることを特徴とする請求項9に記載の計算機の性能評価システム。
- 前記I/Oインターフェースは、前記メモリに対してアクセスを行うDMA制御部を含み、
前記メモリアクセス要求は、前記I/Oインターフェースが発行したメモリアクセス要求であることを特徴とする請求項9に記載の計算機の性能評価システム。 - 前記応答時間測定部は、
前記応答時間の測定範囲を設定する測定範囲設定部と、
前記測定する応答時間の間隔を設定する測定間隔設定部と、
を備え、
前記管理端末は、
前記測定範囲設定部に応答時間の測定範囲を送信し、前記測定間隔設定部に応答時間の測定間隔を送信する測定条件設定部を有することを特徴とする請求項9に記載の計算機の性能評価システム。 - 前記性能推定部は、
前記測定結果制御部から取得した測定結果から、前記メモリアクセス要求の応答時間と、当該応答時間に対応するメモリアクセス要求の発行回数から、メモリアクセス要求を行ったメモリの物理的な位置を推定することを特徴とする請求項9に記載の計算機の性能評価システム。 - 前記計算機は、
少なくとも1つのCPUと、前記CPUとメモリ及びI/Oインターフェースを接続するコントローラとを含むノードを複数備え、前記複数のノードを相互に接続する通信部と、前記複数のノードのうち、予め設定した複数のノードを組み合わせて一つの処理を実行する物理分割部と、を備え、
前記管理端末は、
前記性能推定部が推定したメモリアクセスの特性に基づいて、前記応答時間を短縮可能な前記計算機のノードの構成を出力する構成支援部を備えたことを特徴とする請求項9に記載の計算機の性能評価システム。 - 少なくとも1つのCPUと、前記CPUとメモリ及びI/Oインターフェースを接続するコントローラとを備えた計算機と、前記計算機に接続された管理端末で計算機の性能を評価する方法であって、
前記計算機でアプリケーションを実行させるステップと、
前記コントローラがメモリに対するアクセス要求を受け付けると、当該メモリアクセス要求に対する応答時間を測定するステップと、
前記コントローラがメモリアクセス要求の発行回数を測定するステップと、
前記応答時間に対応する前記発行回数とを関連づけた測定結果を格納するステップと、
前記アプリケーションの実行終了後に前記管理端末から測定結果の読み出し要求があったときには、前記格納された測定結果を前記管理端末へ送信するステップと、
前記管理端末は、コントローラから取得した測定結果から、前記メモリアクセス要求の応答時間と、当該応答時間に対応するメモリアクセス要求の発行回数から、前記アプリケーションのメモリアクセスの特性を推定するステップと、
を含むことを特徴とする計算機の性能評価方法。 - 前記メモリアクセスの特性を推定するステップは、
前記取得した測定結果から、前記メモリアクセス要求の応答時間と、当該応答時間に対応するメモリアクセス要求の発行回数から、メモリアクセス要求を行ったメモリの物理的な位置を推定することを特徴とする請求項15に記載の計算機の性能評価方法。 - 前記計算機は、
少なくとも1つのCPUと、前記CPUとメモリ及びI/Oインターフェースを接続するコントローラとを含むノードを複数備え、前記複数のノードを相互に接続する通信部と、前記複数のノードのうち、予め設定した複数のノードを組み合わせて一つの処理を実行する物理分割部と、を備え、
前記性能推定部が推定したメモリアクセスの特性に基づいて、前記応答時間を短縮可能な前記計算機のノードの構成を出力するステップを、さらに含むことを特徴とする請求項15に記載の計算機の性能評価方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006250645A JP4839164B2 (ja) | 2006-09-15 | 2006-09-15 | ハードウェアモニタを用いた性能評価システム及び再構築可能な計算機システム |
| US11/771,397 US7577770B2 (en) | 2006-09-15 | 2007-06-29 | System and method for performance monitoring and reconfiguring computer system with hardware monitor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006250645A JP4839164B2 (ja) | 2006-09-15 | 2006-09-15 | ハードウェアモニタを用いた性能評価システム及び再構築可能な計算機システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2008071237A true JP2008071237A (ja) | 2008-03-27 |
| JP4839164B2 JP4839164B2 (ja) | 2011-12-21 |
Family
ID=39190007
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006250645A Expired - Fee Related JP4839164B2 (ja) | 2006-09-15 | 2006-09-15 | ハードウェアモニタを用いた性能評価システム及び再構築可能な計算機システム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7577770B2 (ja) |
| JP (1) | JP4839164B2 (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010033496A (ja) * | 2008-07-31 | 2010-02-12 | Fujitsu Ltd | コンピュータシステム |
| CN104516799A (zh) * | 2013-09-27 | 2015-04-15 | 上海宝信软件股份有限公司 | 服务器性能测试方法 |
| JP2019511784A (ja) * | 2016-03-31 | 2019-04-25 | クアルコム,インコーポレイテッド | パフォーマンスカウンタおよびトレース論理を使用する性能解析 |
| WO2024158199A1 (ko) * | 2023-01-26 | 2024-08-02 | 삼성전자 주식회사 | 전자 장치 및 전자 장치의 성능 변화 감지 방법 |
Families Citing this family (79)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8631401B2 (en) * | 2007-07-24 | 2014-01-14 | Ca, Inc. | Capacity planning by transaction type |
| US7957948B2 (en) * | 2007-08-22 | 2011-06-07 | Hyperformit, Inc. | System and method for capacity planning for systems with multithreaded multicore multiprocessor resources |
| WO2009096161A1 (ja) * | 2008-01-29 | 2009-08-06 | Panasonic Corporation | プロセッサ性能解析装置、方法及びシミュレータ |
| US8261278B2 (en) * | 2008-02-01 | 2012-09-04 | Ca, Inc. | Automatic baselining of resource consumption for transactions |
| US8402468B2 (en) * | 2008-03-17 | 2013-03-19 | Ca, Inc. | Capacity planning based on resource utilization as a function of workload |
| US8744991B2 (en) * | 2008-04-28 | 2014-06-03 | Infosys Technologies Limited | Knowledge artifact analysis system and method |
| US8805822B2 (en) * | 2008-05-02 | 2014-08-12 | Oracle International Corporation | Knowledge base search utility |
| US20100125655A1 (en) * | 2008-11-19 | 2010-05-20 | Uri Elzur | Method and system for centralized logic for centrally managed machines |
| WO2011007599A1 (ja) * | 2009-07-17 | 2011-01-20 | 株式会社 東芝 | メモリ管理装置 |
| US9250687B1 (en) * | 2009-08-10 | 2016-02-02 | Ajoy Aswadhati | High performance flexible storage system architecture |
| KR101617377B1 (ko) * | 2009-11-06 | 2016-05-02 | 삼성전자주식회사 | 동적 전압 주파수 스케일링 방법 |
| KR101262846B1 (ko) * | 2009-12-15 | 2013-05-10 | 한국전자통신연구원 | 임베디드 단말 성능 측정 장치 및 방법 |
| US8819208B2 (en) | 2010-03-05 | 2014-08-26 | Solidfire, Inc. | Data deletion in a distributed data storage system |
| US8671267B2 (en) | 2010-06-24 | 2014-03-11 | International Business Machines Corporation | Monitoring processing time in a shared pipeline |
| US8850172B2 (en) * | 2010-11-15 | 2014-09-30 | Microsoft Corporation | Analyzing performance of computing devices in usage scenarios |
| US9323655B1 (en) * | 2011-06-30 | 2016-04-26 | Emc Corporation | Location of data among storage tiers |
| US9965381B1 (en) * | 2011-06-30 | 2018-05-08 | EMC IP Holding Company LLC | Indentifying data for placement in a storage system |
| US8626880B2 (en) * | 2011-07-06 | 2014-01-07 | Dell Products, Lp | Embedded configuration variance detector |
| JP5794010B2 (ja) * | 2011-07-19 | 2015-10-14 | 富士通株式会社 | 情報処理装置、制御プログラムおよび制御方法 |
| US9148495B2 (en) | 2011-07-26 | 2015-09-29 | International Business Machines Corporation | Dynamic runtime choosing of processing communication methods |
| US8959313B2 (en) | 2011-07-26 | 2015-02-17 | International Business Machines Corporation | Using predictive determinism within a streaming environment |
| US8990452B2 (en) * | 2011-07-26 | 2015-03-24 | International Business Machines Corporation | Dynamic reduction of stream backpressure |
| US8793459B2 (en) | 2011-10-31 | 2014-07-29 | International Business Machines Corporation | Implementing feedback directed NUMA mitigation tuning |
| US20130132128A1 (en) | 2011-11-17 | 2013-05-23 | Us Airways, Inc. | Overbooking, forecasting and optimization methods and systems |
| US9838269B2 (en) | 2011-12-27 | 2017-12-05 | Netapp, Inc. | Proportional quality of service based on client usage and system metrics |
| US9054992B2 (en) | 2011-12-27 | 2015-06-09 | Solidfire, Inc. | Quality of service policy sets |
| TWI480730B (zh) * | 2011-12-30 | 2015-04-11 | Ibm | 量測一資訊設備之效能的方法與裝置 |
| US9405553B2 (en) | 2012-01-30 | 2016-08-02 | International Business Machines Corporation | Processing element management in a streaming data system |
| GB2490390B (en) * | 2012-03-29 | 2014-01-29 | Renesas Mobile Corp | Method, apparatus and computer program for latency measurement |
| US9146775B2 (en) | 2012-04-26 | 2015-09-29 | International Business Machines Corporation | Operator graph changes in response to dynamic connections in stream computing applications |
| US9930081B2 (en) | 2012-11-13 | 2018-03-27 | International Business Machines Corporation | Streams optional execution paths depending upon data rates |
| US9727940B2 (en) | 2013-03-08 | 2017-08-08 | American Airlines, Inc. | Demand forecasting systems and methods utilizing unobscuring and unconstraining |
| US20140257881A1 (en) * | 2013-03-08 | 2014-09-11 | Us Airways, Inc. | Demand forecasting systems and methods utilizing fare adjustment |
| US11321721B2 (en) | 2013-03-08 | 2022-05-03 | American Airlines, Inc. | Demand forecasting systems and methods utilizing prime class remapping |
| US9813235B2 (en) * | 2013-03-11 | 2017-11-07 | Indian Institute of Technology Kharagpur | Resistance to cache timing attacks on block cipher encryption |
| US20140278615A1 (en) | 2013-03-15 | 2014-09-18 | Us Airways, Inc. | Misconnect management systems and methods |
| US10860352B2 (en) * | 2013-07-25 | 2020-12-08 | Hewlett Packard Enterprise Development Lp | Host system and method for managing data consumption rate in a virtual data processing environment |
| GB2517195A (en) * | 2013-08-15 | 2015-02-18 | Ibm | Computer system productivity monitoring |
| CN103442087B (zh) * | 2013-09-12 | 2016-09-14 | 重庆大学 | 一种基于响应时间趋势分析的Web服务系统访问量控制装置和方法 |
| US9465709B2 (en) * | 2013-11-22 | 2016-10-11 | Netapp, Inc. | System and method for providing performance sampling in a computing system |
| US9625971B2 (en) * | 2014-01-10 | 2017-04-18 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and method of adaptive voltage frequency scaling |
| US10755207B1 (en) | 2014-01-17 | 2020-08-25 | American Airlines, Inc. | Demand class remapping for airline seat bookings |
| US10748087B2 (en) | 2014-01-17 | 2020-08-18 | American Airlines, Inc. | Determining even-spaced quantiles for network optimization |
| US20150244795A1 (en) | 2014-02-21 | 2015-08-27 | Solidfire, Inc. | Data syncing in a distributed system |
| US9798728B2 (en) | 2014-07-24 | 2017-10-24 | Netapp, Inc. | System performing data deduplication using a dense tree data structure |
| US9671960B2 (en) | 2014-09-12 | 2017-06-06 | Netapp, Inc. | Rate matching technique for balancing segment cleaning and I/O workload |
| US10133511B2 (en) | 2014-09-12 | 2018-11-20 | Netapp, Inc | Optimized segment cleaning technique |
| JP6428784B2 (ja) * | 2014-10-07 | 2018-11-28 | 日本電気株式会社 | 測定装置、測定システム、測定方法、および、プログラム |
| US9836229B2 (en) | 2014-11-18 | 2017-12-05 | Netapp, Inc. | N-way merge technique for updating volume metadata in a storage I/O stack |
| US10459414B2 (en) | 2014-11-28 | 2019-10-29 | Mitsubishi Electric Corporation | Communication device, communication adaptor, communication system, communication parameter response method, and program |
| US10452538B2 (en) | 2015-01-21 | 2019-10-22 | Red Hat, Inc. | Determining task scores reflective of memory access statistics in NUMA systems |
| WO2016118162A1 (en) * | 2015-01-23 | 2016-07-28 | Hewlett Packard Enterprise Development Lp | Non-uniform memory access aware monitoring |
| US9720601B2 (en) * | 2015-02-11 | 2017-08-01 | Netapp, Inc. | Load balancing technique for a storage array |
| US9658937B2 (en) | 2015-03-17 | 2017-05-23 | Qualcomm Incorporated | Optimization of hardware monitoring for computing devices |
| US9762460B2 (en) | 2015-03-24 | 2017-09-12 | Netapp, Inc. | Providing continuous context for operational information of a storage system |
| US9710317B2 (en) | 2015-03-30 | 2017-07-18 | Netapp, Inc. | Methods to identify, handle and recover from suspect SSDS in a clustered flash array |
| US9740566B2 (en) | 2015-07-31 | 2017-08-22 | Netapp, Inc. | Snapshot creation workflow |
| US10929022B2 (en) | 2016-04-25 | 2021-02-23 | Netapp. Inc. | Space savings reporting for storage system supporting snapshot and clones |
| US10402227B1 (en) * | 2016-08-31 | 2019-09-03 | Amazon Technologies, Inc. | Task-level optimization with compute environments |
| US10642763B2 (en) | 2016-09-20 | 2020-05-05 | Netapp, Inc. | Quality of service policy sets |
| US10521112B2 (en) * | 2017-03-17 | 2019-12-31 | International Business Machines Corporation | Layered clustered scale-out storage system |
| KR101879416B1 (ko) * | 2017-06-12 | 2018-07-18 | 고려대학교 산학협력단 | 이상 금융거래 탐지 방법 및 그 전자 장치 |
| US10360214B2 (en) * | 2017-10-19 | 2019-07-23 | Pure Storage, Inc. | Ensuring reproducibility in an artificial intelligence infrastructure |
| US10579492B2 (en) * | 2017-12-29 | 2020-03-03 | Intel Corporation | Device, system and method for identifying a source of latency in pipeline circuitry |
| US10649688B1 (en) * | 2018-11-01 | 2020-05-12 | Intel Corporation | Precise longitudinal monitoring of memory operations |
| US11184446B2 (en) | 2018-12-05 | 2021-11-23 | Micron Technology, Inc. | Methods and apparatus for incentivizing participation in fog networks |
| US11030038B2 (en) * | 2019-02-12 | 2021-06-08 | Microsoft Technology Licensing, Llc | Fault prediction and detection using time-based distributed data |
| US11256778B2 (en) * | 2019-02-14 | 2022-02-22 | Micron Technology, Inc. | Methods and apparatus for checking the results of characterized memory searches |
| US11327551B2 (en) | 2019-02-14 | 2022-05-10 | Micron Technology, Inc. | Methods and apparatus for characterizing memory devices |
| US11150165B2 (en) * | 2019-03-01 | 2021-10-19 | Dell Products, L.P. | System and method for configuration drift detection and remediation |
| US12118056B2 (en) | 2019-05-03 | 2024-10-15 | Micron Technology, Inc. | Methods and apparatus for performing matrix transformations within a memory array |
| US10867655B1 (en) | 2019-07-08 | 2020-12-15 | Micron Technology, Inc. | Methods and apparatus for dynamically adjusting performance of partitioned memory |
| US11449577B2 (en) | 2019-11-20 | 2022-09-20 | Micron Technology, Inc. | Methods and apparatus for performing video processing matrix operations within a memory array |
| US11853385B2 (en) | 2019-12-05 | 2023-12-26 | Micron Technology, Inc. | Methods and apparatus for performing diversity matrix operations within a memory array |
| CN113050874A (zh) * | 2019-12-26 | 2021-06-29 | 华为技术有限公司 | 一种内存设置方法以及装置 |
| US11550762B2 (en) | 2021-02-24 | 2023-01-10 | Sap Se | Implementation of data access metrics for automated physical database design |
| US11875057B2 (en) * | 2021-07-20 | 2024-01-16 | Nvidia Corporation | Shared structure for a logic analyzer and programmable state machine |
| US20240232032A1 (en) * | 2023-01-09 | 2024-07-11 | Western Digital Technologies, Inc. | Stream temperature interleave monitor |
| US20250138985A1 (en) * | 2023-11-01 | 2025-05-01 | Sap Se | Predicting hardware safety margin |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09101906A (ja) * | 1995-10-09 | 1997-04-15 | Hitachi Ltd | 並列計算機の性能測定方法 |
| JPH10275099A (ja) * | 1997-03-13 | 1998-10-13 | Internatl Business Mach Corp <Ibm> | データ処理システムにおけるパフォーマンス監視 |
| JPH11272499A (ja) * | 1998-03-23 | 1999-10-08 | Nec Corp | 性能測定回路を備えた並列プロセッサシステムと、プログラムの性能測定方法 |
| WO2005041056A2 (en) * | 2003-10-27 | 2005-05-06 | Koninklijke Philips Electronics N.V. | Integrated circuit comprising a measurement unit for measuring utilization of a communication bus connecting its building blocks |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5872972A (en) * | 1996-07-05 | 1999-02-16 | Ncr Corporation | Method for load balancing a per processor affinity scheduler wherein processes are strictly affinitized to processors and the migration of a process from an affinitized processor to another available processor is limited |
| US6092180A (en) | 1997-11-26 | 2000-07-18 | Digital Equipment Corporation | Method for measuring latencies by randomly selected sampling of the instructions while the instruction are executed |
-
2006
- 2006-09-15 JP JP2006250645A patent/JP4839164B2/ja not_active Expired - Fee Related
-
2007
- 2007-06-29 US US11/771,397 patent/US7577770B2/en not_active Expired - Fee Related
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09101906A (ja) * | 1995-10-09 | 1997-04-15 | Hitachi Ltd | 並列計算機の性能測定方法 |
| JPH10275099A (ja) * | 1997-03-13 | 1998-10-13 | Internatl Business Mach Corp <Ibm> | データ処理システムにおけるパフォーマンス監視 |
| JPH11272499A (ja) * | 1998-03-23 | 1999-10-08 | Nec Corp | 性能測定回路を備えた並列プロセッサシステムと、プログラムの性能測定方法 |
| WO2005041056A2 (en) * | 2003-10-27 | 2005-05-06 | Koninklijke Philips Electronics N.V. | Integrated circuit comprising a measurement unit for measuring utilization of a communication bus connecting its building blocks |
| JP2007514214A (ja) * | 2003-10-27 | 2007-05-31 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 使用率を計測するための計測ユニットを備える集積回路 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010033496A (ja) * | 2008-07-31 | 2010-02-12 | Fujitsu Ltd | コンピュータシステム |
| CN104516799A (zh) * | 2013-09-27 | 2015-04-15 | 上海宝信软件股份有限公司 | 服务器性能测试方法 |
| JP2019511784A (ja) * | 2016-03-31 | 2019-04-25 | クアルコム,インコーポレイテッド | パフォーマンスカウンタおよびトレース論理を使用する性能解析 |
| WO2024158199A1 (ko) * | 2023-01-26 | 2024-08-02 | 삼성전자 주식회사 | 전자 장치 및 전자 장치의 성능 변화 감지 방법 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20080071939A1 (en) | 2008-03-20 |
| JP4839164B2 (ja) | 2011-12-21 |
| US7577770B2 (en) | 2009-08-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4839164B2 (ja) | ハードウェアモニタを用いた性能評価システム及び再構築可能な計算機システム | |
| Martin et al. | Using destination-set prediction to improve the latency/bandwidth tradeoff in shared-memory multiprocessors | |
| CN110865968B (zh) | 多核处理装置及其内核之间数据传输方法 | |
| US7992051B2 (en) | Method, apparatus, and computer program product in a processor for dynamically during runtime allocating memory for in-memory hardware tracing | |
| Bobba et al. | Performance pathologies in hardware transactional memory | |
| US9684600B2 (en) | Dynamic process/object scoped memory affinity adjuster | |
| US7913123B2 (en) | Concurrently sharing a memory controller among a tracing process and non-tracing processes using a programmable variable number of shared memory write buffers | |
| US7844860B2 (en) | Apparatus and computer program product in a processor for performing in-memory tracing using existing communication paths | |
| Thakkar et al. | Performance of an OLTP application on Symmetry multiprocessor system | |
| Lupon et al. | A dynamically adaptable hardware transactional memory | |
| US20160140052A1 (en) | System and Method for Efficient Cache Utility Curve Construction and Cache Allocation | |
| Tse et al. | CPU cache prefetching: Timing evaluation of hardware implementations | |
| Yu et al. | Virtual shuffling for efficient data movement in mapreduce | |
| JPH11316711A (ja) | メモリシステムトランザクションの特性の統計値を推定する方法 | |
| Peng et al. | Memory performance and scalability of Intel's and AMD's dual-core processors: a case study | |
| Nussbaum et al. | Statistical simulation of symmetric multiprocessor systems | |
| Brown et al. | Fast thread migration via cache working set prediction | |
| Awan et al. | Node architecture implications for in-memory data analytics on scale-in clusters | |
| Chafi et al. | TAPE: A transactional application profiling environment | |
| Kundu et al. | A case for shared instruction cache on chip multiprocessors running oltp | |
| Zhao et al. | SEL-TM: Selective eager-lazy management for improved concurrency in transactional memory | |
| KR101924466B1 (ko) | 하둡 기반 시스템을 위한 캐시 인지 작업 스케줄링 장치 및 방법 | |
| He et al. | Numa-aware contention scheduling on multicore systems | |
| CN114356732A (zh) | 一种基于numa架构的应用系统性能优化方法及装置 | |
| US20080005726A1 (en) | Methods and systems for modifying software applications to implement memory allocation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081110 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101105 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110705 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110905 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110927 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111003 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141007 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |