cGPUは、Alibaba Cloudによって開発されたGPUメモリおよびコンピューティング電力分離モジュールです。 複数のコンテナが単一のGPUを共有する場合、各コンテナで使用されるメモリとコンピューティングリソースが互いに干渉しないようにします。 このトピックでは、cGPUを使用する際のよくある質問 (FAQ) に対する回答を示します。
始める前に
開始する前に、次の項目に注意してください。
クラスター内のGPU高速化ノードに
ack.node.gpu.schedule=cgpu
、ack.node.gpu.schedule=core_mem
、またはcgpu=true
のラベルがある場合、cGPUを使用するノードで分離機能が有効になっていることを示します。ack-ai-installerバージョンとcGPUバージョンのマッピングについては、ack-ai-installerのリリースノートを参照してください。
cGPUの詳細については、「NVIDIAの公式ドキュメント」をご参照ください。
よくある質問
cGPUを使用するとLinuxカーネルパニック
が発生する場合はどうすればよいですか?
cGPUバージョン1.5.7をインストールすると、cGPUカーネルドライバーでデッドロックが発生し、並行プロセスが相互にロックし、Linuxカーネルパニックが発生する可能性があります。 この問題を防ぐには、cGPUバージョン1.5.10以降をインストールまたは更新することを推奨します。 更新方法の詳細については、「ノードのcGPUバージョンの更新」をご参照ください。
もし私は何をすべきかNVMLの初期化に失敗しました
実行時にエラーが発生するnvidia-smi
cGPUポッドで?
7月2023日以降にリリースされたドライバーバージョンでcGPUバージョン1.5.2以前をインストールした場合、cGPUとGPUドライバーバージョンの間で非互換性の問題が発生する可能性があります。 GPUドライバーのリリース日を確認するには、Linux AMD64 Display driver Archiveで確認してください。 各ACKクラスタータイプでサポートされているデフォルトのGPUドライバーバージョンのリストについては、「ACKでサポートされているNVIDIAドライバーバージョン」をご参照ください。
ポッドがGPUスケジューリングリソースの共有を要求し、そのステータスがRunningになったら、ポッドでnvidia-smi
コマンドを実行して、次の出力が返されるかどうかを確認できます。
Failed to initialize NVML: GPU access blocked by operating system
この出力が返された場合は、AIスイートを最新バージョンに更新して問題を解決します。 詳細については、「GPU共有コンポーネントの更新」をご参照ください。
cGPUポッドのコンテナを作成するときに失敗またはタイムアウトが発生した場合はどうすればよいですか?
1.0.10より前のバージョンのcGPUをインストールし、NVIDIA Toolkitバージョン1.11以降を使用すると、コンテナの作成に失敗したり、タイムアウトが発生する可能性があります。
この問題を解決するには、AIスイートを最新バージョンに更新します。 詳細については、「GPU共有コンポーネントの更新」をご参照ください。