Debian 11 で NVIDIA A16 グラフィック カードを搭載した PowerEdge R7525 サーバーを使用しています。しかし、他のサーバーに比べて GPU パフォーマンスが約 50% 低いです。BIOS に「4G 以上のデコード」オプションがないことが原因だと思います。NVIDIA によると、このサーバーは最大 3 つの A16 GPU ユニットを処理できるはずです。この GPU のパワーをフルに引き出す回避策や何かアドバイスをいただけませんか?
事前にどうもありがとうございました
答え1
(私は Dell で働いています) - 具体的には、最適化を多く行っています。
少し方向がずれていると思います。「4G を超えるデコード」は、BIOS PCIe メモリ列挙が 32 ビットに制限されていたときに残された機能ですが、これはもう当てはまらず、かなり長い間そうでした。アドレス指定はネイティブ 64 ビットになりました。
しかし、他のサーバーに比べて GPU パフォーマンスが約 50% 低くなります。
これが何を意味しているのかよく分かりません。深読みしすぎかもしれませんが、この発言から、これが最適化への最初の取り組みであるのではないかと考えます。その場合、素晴らしいですね! 複雑ですが魅力的な世界です。GPU のパフォーマンスはさまざまな方法で測定できるため、この発言だけでは問題が何であるかを絞り込むことはできません。
パフォーマンスが低下する理由については、非常に複雑な質問であり、これについては本が一冊書けるほどです。特に AMD ベースのサーバーでよく見られる間違いをいくつか挙げます。
- PCIeレーン/プロセッサのアライメントを考慮していない。GPUに対して実行しているプロセスが、離れたプロセッサではなく、GPUのPCIeレーンを持つプロセッサに割り当てられていることを確認してください。
- ワークロードに対してコアごとの NUMA を適切に設定できない (これは R7525 などの AMD システムに特有の問題です)
- 他の場所でのボトルネックを考慮していない。たとえば、GPU のパフォーマンスが低いと感じた人がいたが、実際にはソフトウェアの一部がストレージ IO に依存していたというケースがありました。
- 当たり前かもしれませんが、BIOSプロファイルをパフォーマンスに設定してみてください。省電力に設定すると、望まないときにダウンクロックが発生する可能性があります。
- メモリ転送の不整合
最適化はワークロードに非常に依存します。初めて行う場合は、データがどのように流れ、どこでボトルネックになる可能性があるかを正確に理解することに時間を集中してください。場違いと思われる点を特定してください。例: GPU のパフォーマンスが低いと思われる場合、GPU の使用率はどのくらいですか? 100% ですか? 100% に近い場合は、ソフトウェアの問題である可能性が高くなります。100% でない場合は、なぜですか? データの供給速度が十分ではありませんか? カードのパワーが不足していますか? サーバーが過熱していますか? など。