web-dev-qa-db-ja.com

パフォーマンスが大きく異なる2つの同一システム

同じハードウェア構成を持つ2つのDellR730システムを同時に購入しました。両方とも、同じイメージからイメージされたRHEL6.9を実行しています。 1月に撮影されました。私は月に一度リポジトリからパッケージを更新するので、一般的にシステム上のすべてが「ほぼ」同一であるはずです。 (つまり、一方のシステムで変更したソフトウェアまたは設定は、もう一方のシステムでも変更されますが、手動プロセスであるため、何かが見落とされる可能性があります)

一方のシステムのパフォーマンスがもう一方のシステムより2.5倍遅いことに気づきました。私がテストしているジョブは、シングルスレッドのCPUを集中的に使用します。一部のデータファイルを読み取りますが、iostatによるとディスクIO使用率は非常に低くなっています。上は、プロセスが常に100%で固定されていることを示していますが、システムには88のスレッドがあり、負荷の平均は約1です。メモリ使用率はごくわずかです。ネットワークを使用していません。 (使用するすべてのファイルはローカルです)1つは複雑なpythonスクリプト、もう1つはプロプライエタリソフトウェアプログラムで、どちらも一方のシステムで他方よりもはるかに低速で実行されます。

/ proc/cpuinfoは同じです。 BIOS設定は同じです。システム上の1人のユーザーのみ。システムがインターネットに接続されている速度が速いほど、スタンドアロンネットワーク上にあるシステムは遅くなります。

私の調査では、2つの違いしか見つかりませんでした。 1.高速のシステムはBIOSバージョン2.25を実行しています。低速のシステムはBIOSバージョン2.43を実行しています。2。低速のシステムは実行を監査しています。ただし、プロセス中の監査ログにはアクティビティがありません。

これをデバッグするのは難しいと思いますが、何を探すべきかについてのアイデアが不足しています。何が起こっているのかについてより多くの洞察を与えるために使用できる組み込みのソフトウェアツールはありますか?

1
eng3

エンタープライズハードウェア上のEL6システムに関する今日の私の推奨事項は次のとおりです。

  • 「高性能」または「動的」モードではなく、電源を「OS制御」モードに設定します。これにより、シングルスレッドプロセスが実際にターボブーストを少しうまく活用し、OSCPUガバナーに適切な制御を与えることができます。
  • ファームウェアを同じリビジョンにできない理由はありますか?
  • EL6の場合、 tuned-adm profileenterprise-storageまたはlatency-performanceに設定する必要があります。
  • 遅いシステムがインターネットに接続されていない場合は、DNSと / etc/hostsファイル定義 をチェックして、解像度の問題によって速度が低下していないことを確認してください。
  • システム間で/etc/sysctl.conf設定を調べて比較します。
  • run sosreport を実行して、両方のシステムの構成の要約を取得することができます。

もちろん、プロセスのプロファイルを作成することもできます... topperf toppidstatstrace

または、 Netdata を使用してサーバーをリアルタイムで確認し、すべてのシステムメトリックを相互に関連付けて、ボトルネックが存在する場所を確認します。

また、/ etc/profile.d/tzfix.shで次のことを行います 正当な理由で

# Set TZ variable to reduce stat("/etc/localtime" activity
# See: https://blog.packagecloud.io/eng/2017/02/21/set-environment-variable-save-thousands-of-system-calls/
#
export TZ=:/etc/localtime

始めるためのほんのいくつかのアイデア。

1
ewwhite

これはおそらく電源管理に関連しています。両方のサーバーをハイパフォーマンスモード(電源管理を無効)にして、パフォーマンステストをやり直してください。

0
shodanshok