DL580 G7 は CPU (E7 4870) で低いパフォーマンスしか発揮しません

DL580 G7 は CPU (E7 4870) で低いパフォーマンスしか発揮しません

私は DL580 G7 を所有しており、4 つの E7 4870 と 128 GB の RAM が搭載されています (カートリッジ 8 つ、各カートリッジに 8 GB x 2)。オペレーティングシステムは Ubuntu 18.04 です。PCIe16 には TITAN X が搭載されており、必須の p410i がインストールされていますが、他の周辺機器はありません。このシステムをベンチマークすると、本来の性能の約 50% しか得られません。たとえば、これは参照ベンチマークDL580G7 と、やや性能の低い CPU (E7 4850) と、その他の設定は同様です。

しかし、私のシステムでは、同じベンチマークでパフォーマンスの半分しか出せません (CPU では約 980、マルチコア パフォーマンスでは 20,000 です)。これは正しくないようです。

ベンチマークでは 80 個のコアすべてと 128 GB の RAM が表示されているため、ハードウェアは正しく認識されています。

私はすでに HP の低レイテンシ チューニング チェックリストを実行し、それに応じて BIOS を変更しました。ILO3 の電力設定はすべて最大パフォーマンスになっています。

Ubuntu は、80 コアすべてで「パフォーマンス」ガバナーに設定されています。
システムに高いストレスをかけても (CPU 使用率 100% で 80 コアすべてで数時間計算するなど)、CPU の熱はほとんど変化せず (40 度のまま)、ファンはまったく回転しません (40% のまま)。ILO3 に表示される総電力消費量は 650 ワットまで上がりますが、ストレス状態では 1KW に近い値になると思います。これには少し困惑しています。

すでにさまざまな BIOS バージョンを試しました。元の BIOS は 2013 年 7 月 1 日のもので、他のユーザーにもパフォーマンスの問題を引き起こしています (インターネット上にはそのような報告があります)。そのため、2012 年 12 月 3 日にダウングレードしましたが、問題は解決していません。

また、このマシンのパフォーマンスを以前のマシン (i5 4460 搭載) と比較すると、アプリケーション (大量のベクトルを追加するなど、IO をあまり使用しないもの) のシングル コア パフォーマンスが 4 分の 1 に低下していることがわかりました。これはベンチマークの結果と一致していますが、シングル コア パフォーマンスが 2 分の 1 低下するのは予想どおりです。心配なのは CPU パフォーマンスだけです。私が見る限り、RAID は問題なく動作しており、IO は予想どおりです (ただし、CPU パフォーマンスの低下により影響を受ける可能性もあります)。

ストレス期間中に実行するとcat /proc/cpuinfo、CPU が 2.2Ghz で動作していることがわかります。

今のところ、別のオペレーティング システムをテストしていません。マシンを再起動する機会が得られたら、すぐにテストするつもりです。

答え1

BIOS の電源管理設定を確認します。設定が OS 制御に設定されていることを確認します。デフォルトの HPE BIOS 電源管理設定では、電力使用量は良好ですが、パフォーマンスは低下します。

通常、この設定は、「電源管理 > HP 電源レギュレータ > OS 制御モード」にあります。

HPE BIOS スクリーンショット

答え2

Server Fault でこのような質問を見るのは懐かしいですが、同時に、これは一般的なリクエストではありません。

サーバーのアーキテクチャは古いです。間違った方向に進む原因となるような仮定を立てている可能性があります。

私のおすすめ:

HPの低レイテンシチューニングガイドで推奨されている機能だけに頼るべきではありません。これは、決定論と予測可能なリソース利用が目標であるアルゴリズム取引などの特殊なアプリケーション向けです。リアルタイムのパフォーマンス特性と低レイテンシは必ずしももっと早く

CPU の機能を調べて、そこから逆算して作業を進めます...

インテル Xeon E7-4870
2011 年に開始され、2015 年にサポート終了となりました。

これはターボブースト対応CPUです。最大ターボ周波数は2.80GHzです。「HPスタティックハイパフォーマンスモード」などの固定設定を使用する場合、実際にはターボブーストが無効になりますこのような状況では、お使いの Linux で OS コントロール モードを使用する方がよいでしょう。(VMware システムにもこれをお勧めします)

OS 内で、 をインストールできるかどうかを確認しpowertopますturbostat

計算実行中に 1 つまたは両方を監視します。

CPUの温度や消費電力に注目しているなんて驚きです。サーバーの動作の指標としてそれを使ったことはありません。Ubuntu (HP ProLiant ハードウェアでは通常サポートされていません) を使用すると、OS と ILO 管理プロセッサ間の相互作用が失われます。これは、ProLiant 機器の付加価値の 1 つです。ベアメタル システムでは、ハードウェア監視とヘルス統合のため、RHEL/CentOS のような OS を使用するようにしています。

また、最新の BIOS リビジョンに戻してください。HP システム ファームウェアをダウングレードする理由はほとんどありません。ILO3 ファームウェアが最新であることも確認してください。

答え3

XEON E7-4870 CPU には 10 個の物理コアが含まれています。(https://ark.intel.com/products/53579/Intel-Xeon-Processor-E7-4870-30M-Cache-2-40-GHz-6-40-GT-s-Intel-QPI-) このサーバー/CPU 構成には、記載されている 80 コアではなく、40 コアしか含まれていません。コアとスレッドを混同している可能性はありませんか? さらに、この CPU は、4 つのアクティブ コアでのみ最高クロック レート 2.8 GHz を達成できます。つまり、合計 16 コア @ 2.8 GHz に対して 40 コア @ 2.4 GHz になります。

DL580 G7には、考慮する必要があるメモリ構成があります。このシステムで実現可能な最高のメモリ帯域幅(最適化された半球モード)https://support.hpe.com/hpsc/doc/public/display?docId=c02283239#N100AB) には 64 個のクアッドランク DIMM が必要です。

私の回答が遅すぎることは承知していますが、将来検索する人の役に立つかもしれません。また、私にはコメントの評判がありません。

答え4

いろいろなことがうまくいかなかったのですが、昨夜ようやく解決策を見つけました。ROM をダウングレードし、電源レギュレータを OS 制御に設定するという組み合わせでうまくいきました。** 当初、この (中古の) サーバーには 07/01/2013 の不具合のある BIOS がインストールされていました ([https://blog.netnerds.net/2014/02/solved-degraded-performance-on-hp-dl580-g7-on-bios-v-7012013/]) になってしまい、ROM の電力調整設定を変更しても効果がありませんでした。** システムのパフォーマンスが 50% しか発揮されていなかったにもかかわらず、「cat /proc/cpuinfo」を実行すると、コアあたり 2.2GHz の速度が返されました (最大値の 2.4 よりわずかに低いですが、50% からは程遠い値です)。この結果は、turbostat などの他のツールが報告したものと一致していました。実に奇妙で、この事実が私の混乱を増大させました。 * Linux 起動時に c-state を無効にしてみましたが、効果はありませんでした (良くも悪くもありませんでした)。 * 最終的に、シングル コアで 2100、マルチコアの geekbench で 36,000 になりました。ハイパースレッディングを無効にした場合、これはほぼ正しい値です。辛抱強く調整すれば、マルチコアの geekbench で 40,000 を超えることも可能だと思いますが、当面は満足しています。

本当に腹立たしかったのは、すべての CPU ツールがコア速度を少なくとも 2.2GHz と報告しているのに、私のシステムが非常に遅いという事実です。これは 07/01/2013-ROM の奇妙なバグに違いないと思います。ROM/ILO ファームウェアを最新のものにアップグレードするのが最善であることには同意しますが、まだ真剣に試す時間がありません。

関連情報