Azureの仮想マシンでTensorFlowがGPUを使用できなくなる

康太郎 久保 0 評価のポイント
2025-05-09T01:31:16.73+00:00

仮想マシン上で、TensorFlowを動かしています。

順調に動作していたのですが、突然処理が遅くなりました。

調べてみると、それまでGPUを使用して推論していたのが、CPUを使用して推論しているようでした。

GPUを使用しなくなったきっかけは特にありません。数分おきにTensorFlowを使って同じ処理を繰り返していたですが、突然この症状が起きるようになりました。

環境は以下の通りです。

OS: Linux (ubuntu 22.04)

サイズ: Standard NC4as T4 v3 (4 vcpu 数、28 GiB メモリ)

Docker: nvidia/cuda:11.8.0-cudnn8-devel-ubuntu22.04 をベースに python==3.11.8 の環境を構築し、tensorflow==2.14.1 等をインストールしている。

補足情報

・VM のホストマシン上で、nvidia-smi を実行し、GPU を認識している事を確認しています。

・コンテナは --gpus all を使って起動しています。(VM の GPU をコンテナで使えるようにする)

・同様にコンテナ上で、nvidia-smi を実行し、GPU を認識しています。

・コンテナ上で、TensorFlow の python プログラムで、GPU を使った推論をさせている。

・コンテナの再起動や VM の再起動を行っても状況が改善しません。

Azure
Azure
Microsoft が管理する世界のデータ センター ネットワークを介してアプリケーションとサービスを構築、配置、および管理するインフラストラクチャおよびクラウド コンピューティング プラットフォーム。
655 件の質問
{count} 件の投票

5 件の回答

並べ替え方法: 最も役に立つ
  1. 康太郎 久保 0 評価のポイント
    2025-05-12T12:27:06.09+00:00

    早速の回答ありがとうございます。

    コンテナにログインして試そうとしましたが、コンテナがエラーで落ちていました。再起動を試みましたが同じエラーが発生してコンテナを起動する事ができません。

    sudo docker logs で取得したログは以下の通りです。

    2025-05-12 12:16:35.752086: E tensorflow/compiler/xla/stream_executor/cuda/cuda_dnn.cc:9342] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered

    2025-05-12 12:16:35.752165: E tensorflow/compiler/xla/stream_executor/cuda/cuda_fft.cc:609] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered

    2025-05-12 12:16:35.794719: E tensorflow/compiler/xla/stream_executor/cuda/cuda_blas.cc:1518] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered

    2025-05-12 12:16:36.899597: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.

    To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.

    2025-05-12 12:16:39.926163: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT

    2025-05-12 12:16:43.184678: W tensorflow/core/common_runtime/gpu/gpu_bfc_allocator.cc:47] Overriding orig_value setting because the TF_FORCE_GPU_ALLOW_GROWTH environment variable is set. Original config value was 0.

    2025-05-12 12:16:43.186363: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1886] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 14793 MB memory: -> device: 0, name: Tesla T4, pci bus id: 0001:00:00.0, compute capability: 7.5

    Loading weights...

    • Serving Flask app 'server_predict'
    • Debug mode: on

    2025-05-12 12:16:46,775 [INFO ] WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.

    2025-05-12 12:16:46,775 [INFO ] Press CTRL+C to quit

    2025-05-12 12:16:46,776 [INFO ] * Restarting with stat

    2025-05-12 12:16:47.356671: E tensorflow/compiler/xla/stream_executor/cuda/cuda_dnn.cc:9342] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered

    2025-05-12 12:16:47.356726: E tensorflow/compiler/xla/stream_executor/cuda/cuda_fft.cc:609] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered

    2025-05-12 12:16:47.356764: E tensorflow/compiler/xla/stream_executor/cuda/cuda_blas.cc:1518] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered

    2025-05-12 12:16:47.364267: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.

    To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.

    2025-05-12 12:16:48.403606: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT

    2025-05-12 12:16:49.199626: W tensorflow/compiler/xla/stream_executor/cuda/cuda_driver.cc:371] A non-primary context 0x573fe5b2a3c0 for device 0 exists before initializing the StreamExecutor. The primary context is now 0. We haven't verified StreamExecutor works with that.

    Traceback (most recent call last):

    File "/deploy/server_predict.py", line 111, in <module>

    Loading weights...

    model = tf.keras.models.load_model(WeightPath, compile=False)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "/root/pyenv/versions/3.11.8/lib/python3.11/site-packages/keras/src/saving/saving_api.py", line 262, in load_model

    return legacy_sm_saving_lib.load_model(

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "/root/pyenv/versions/3.11.8/lib/python3.11/site-packages/keras/src/utils/traceback_utils.py", line 70, in error_handler

    raise e.with_traceback(filtered_tb) from None

    File "/root/pyenv/versions/3.11.8/lib/python3.11/site-packages/tensorflow/python/eager/context.py", line 598, in ensure_initialized

    context_handle = pywrap_tfe.TFE_NewContext(opts)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    RuntimeError: Bad StatusOr access: INTERNAL: failed initializing StreamExecutor for CUDA device ordinal 0: INTERNAL: failed call to cuDevicePrimaryCtxRetain: CUDA_ERROR_NOT_PERMITTED: operation not permitted


  2. 康太郎 久保 0 評価のポイント
    2025-05-14T04:59:27.25+00:00

    ご回答ありがとうございます。

    ひとまずDocker ランタイムの状態の確認まで行いました。期待通りではなさそうです。

    ご指定の通り、NVIDIA Docker を再インストールを実行した方が良いでしょうか?

    $ nvidia-smi

    Wed May 14 04:51:07 2025

    +---------------------------------------------------------------------------------------+

    | NVIDIA-SMI 535.230.02 Driver Version: 535.230.02 CUDA Version: 12.2 |

    |-----------------------------------------+----------------------+----------------------+

    | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |

    | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |

    | | | MIG M. |

    |=========================================+======================+======================|

    | 0 Tesla T4 Off | 00000001:00:00.0 Off | Off |

    | N/A 31C P8 10W / 70W | 2MiB / 16384MiB | 0% Default |

    | | | N/A |

    +-----------------------------------------+----------------------+----------------------+

    +---------------------------------------------------------------------------------------+

    | Processes: |

    | GPU GI CI PID Type Process name GPU Memory |

    | ID ID Usage |

    |=======================================================================================|

    | No running processes found |

    +---------------------------------------------------------------------------------------+

    $ sudo docker info | grep Runtime

    Runtimes: io.containerd.runc.v2 runc

    Default Runtime: runc

    $ sudo docker info

    Client: Docker Engine - Community

    Version: 28.0.4

    Context: default

    Debug Mode: false

    Plugins:

    buildx: Docker Buildx (Docker Inc.)

    Version:  v0.22.0
    
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
    

    compose: Docker Compose (Docker Inc.)

    Version:  v2.34.0
    
    Path:     /usr/libexec/docker/cli-plugins/docker-compose
    

    Server:

    Containers: 3

    Running: 3

    Paused: 0

    Stopped: 0

    Images: 6

    Server Version: 28.0.4

    Storage Driver: overlay2

    Backing Filesystem: extfs

    Supports d_type: true

    Using metacopy: false

    Native Overlay Diff: false

    userxattr: false

    Logging Driver: json-file

    Cgroup Driver: systemd

    Cgroup Version: 2

    Plugins:

    Volume: local

    Network: bridge host ipvlan macvlan null overlay

    Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog

    Swarm: inactive

    Runtimes: io.containerd.runc.v2 runc

    Default Runtime: runc

    Init Binary: docker-init

    containerd version: 05044ec0a9a75232cad458027ca83437aae3f4da

    runc version: v1.2.5-0-g59923ef

    init version: de40ad0

    Security Options:

    apparmor

    seccomp

    Profile: builtin

    cgroupns

    Kernel Version: 6.8.0-1028-azure

    Operating System: Ubuntu 22.04.5 LTS

    OSType: linux

    Architecture: x86_64

    CPUs: 4

    Total Memory: 27.36GiB

    Name: FarmingSupportAIServer11

    ID: 19216b32-92a0-4582-835d-af7d0b099d23

    Docker Root Dir: /var/lib/docker

    Debug Mode: false

    Experimental: false

    Insecure Registries:

    ::1/128

    127.0.0.0/8

    Live Restore Enabled: false

    0 件のコメント コメントはありません

  3. Arko 4,150 評価のポイント Microsoft 外部スタッフ モデレーター
    2025-05-14T06:45:25.05+00:00

    久保 康太郎さん、こんにちは。

    ご返信ありがとうございます。ご提供いただいた情報を確認したところ、問題の原因がはっきりしました。

    現在のDocker環境では、NVIDIAランタイムが有効になっていないため、TensorFlowがGPUを使用できない状態になっています。nvidia-smiの結果を見る限り、ホスト側のGPU(Tesla T4)は正しく認識されており、ハードウェアやドライバには問題ありません。

    ただし、以下の出力に注目してください-

    Default Runtime: runc
    

    本来であればここは

    Default Runtime: nvidia
    

    と表示されている必要があります。つまり、Dockerの設定でNVIDIAランタイムが使われていないため、コンテナ内でCUDAの初期化に失敗し、TensorFlowがGPUを使用できていないのです。

    この問題を解決するには、NVIDIA Docker関連ツールを再インストールし、NVIDIAランタイムをDockerのデフォルトとして設定する必要があります。

    以下の手順を実施してください。

    古いNVIDIA Docker関連パッケージのアンインストール-

    sudo apt-get remove -y nvidia-docker2
    sudo apt-get purge -y nvidia-container-toolkit
    

    NVIDIA Container Toolkitの再インストール(CUDA 12.2対応)

    distribution=$(. /etc/os-release; echo $ID$VERSION_ID)
    curl -s -L https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
    curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
      sed 's#deb #deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] #' | \
      sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
    sudo apt-get update
    sudo apt-get install -y nvidia-container-toolkit
    

    DockerにNVIDIAランタイムを適用-

    sudo nvidia-ctk runtime configure --runtime=docker
    

    適用後に設定ファイルが正しく更新されているか確認します-

    cat /etc/docker/daemon.json
    

    以下のような内容が表示されていれば問題ありません-

    {
      "runtimes": {
        "nvidia": {
          "path": "nvidia-container-runtime",
          "runtimeArgs": []
        }
      },
      "default-runtime": "nvidia"
    }
    

    Dockerの再起動-

    sudo systemctl restart docker
    

    NVIDIAランタイムが有効になったか確認-

    sudo docker info | grep -i runtime
    

    次のように表示されていれば正しく設定されています

    Runtimes: nvidia runc
    Default Runtime: nvidia
    

    この設定が完了すれば、以下のようにしてコンテナを起動することで、TensorFlowが正常にGPUを使用できるようになります

    docker run --rm -it --gpus all tf-gpu-fix
    

    まとめると、現時点ではDockerが標準ランタイムとしてNVIDIAを使用していないため、GPUが使えない状態になっています。NVIDIA Docker関連のツールを再インストールし、default-runtimenvidia に変更することで、この問題は解決できます。

    ここであなたのご質問を解決できたことを願っています。 QnAフォーラムで同様の質問を持つ誰かが参照できるよう、 この回答を承認していただけるとありがたいです。 ありがとうございます。

    0 件のコメント コメントはありません

  4. 康太郎 久保 0 評価のポイント
    2025-05-17T04:39:57.91+00:00

    回答ありがとうございます。
    頂いた手順通りに実行しましたが、期待した結果になっていないようです。

    <確認結果>
    $ cat /etc/docker/daemon.json

    {
    "runtimes": {
    "nvidia": {
    "args": [],
    "path": "nvidia-container-runtime" } }
    }

    $ sudo systemctl restart docker

    $ sudo docker info | grep -i runtime

    Runtimes: io.containerd.runc.v2 nvidia runc

    Default Runtime: runc

    <実施内容>
    $ sudo apt-get remove -y nvidia-docker2

    Reading package lists... Done

    Building dependency tree... Done

    Reading state information... Done

    Package 'nvidia-docker2' is not installed, so not removed

    The following packages were automatically installed and are no longer required:

    linux-azure-6.5-cloud-tools-6.5.0-1021 linux-azure-6.5-cloud-tools-6.5.0-1022 linux-azure-6.5-cloud-tools-6.5.0-1024 linux-azure-6.5-headers-6.5.0-1021 linux-azure-6.5-headers-6.5.0-1022 linux-azure-6.5-headers-6.5.0-1024

    linux-azure-6.5-tools-6.5.0-1021 linux-azure-6.5-tools-6.5.0-1022 linux-azure-6.5-tools-6.5.0-1024 linux-azure-6.8-cloud-tools-6.8.0-1021 linux-azure-6.8-cloud-tools-6.8.0-1025 linux-azure-6.8-headers-6.8.0-1021

    linux-azure-6.8-headers-6.8.0-1025 linux-azure-6.8-tools-6.8.0-1021 linux-azure-6.8-tools-6.8.0-1025 linux-cloud-tools-6.5.0-1021-azure linux-cloud-tools-6.5.0-1022-azure linux-cloud-tools-6.5.0-1024-azure

    linux-cloud-tools-6.8.0-1021-azure linux-cloud-tools-6.8.0-1025-azure linux-headers-6.5.0-1021-azure linux-headers-6.5.0-1022-azure linux-headers-6.5.0-1024-azure linux-headers-6.8.0-1021-azure

    linux-headers-6.8.0-1025-azure linux-image-6.5.0-1021-azure linux-image-6.5.0-1022-azure linux-image-6.5.0-1024-azure linux-image-6.8.0-1021-azure linux-image-6.8.0-1025-azure linux-modules-6.5.0-1021-azure

    linux-modules-6.5.0-1022-azure linux-modules-6.5.0-1024-azure linux-modules-6.8.0-1021-azure linux-modules-6.8.0-1025-azure linux-modules-nvidia-535-6.5.0-1022-azure linux-modules-nvidia-535-6.5.0-1024-azure

    linux-modules-nvidia-535-6.8.0-1021-azure linux-modules-nvidia-535-6.8.0-1025-azure linux-objects-nvidia-535-6.5.0-1022-azure linux-objects-nvidia-535-6.5.0-1024-azure linux-objects-nvidia-535-6.8.0-1021-azure

    linux-objects-nvidia-535-6.8.0-1025-azure linux-signatures-nvidia-6.5.0-1022-azure linux-signatures-nvidia-6.5.0-1024-azure linux-signatures-nvidia-6.8.0-1021-azure linux-signatures-nvidia-6.8.0-1025-azure

    linux-tools-6.5.0-1021-azure linux-tools-6.5.0-1022-azure linux-tools-6.5.0-1024-azure linux-tools-6.8.0-1021-azure linux-tools-6.8.0-1025-azure nvidia-firmware-535-535.171.04 nvidia-firmware-535-535.183.01

    Use 'sudo apt autoremove' to remove them.

    0 upgraded, 0 newly installed, 0 to remove and 24 not upgraded.

    $ sudo apt-get purge -y nvidia-container-toolkit

    Reading package lists... Done

    Building dependency tree... Done

    Reading state information... Done

    The following packages were automatically installed and are no longer required:

    libnvidia-container-tools libnvidia-container1 linux-azure-6.5-cloud-tools-6.5.0-1021 linux-azure-6.5-cloud-tools-6.5.0-1022 linux-azure-6.5-cloud-tools-6.5.0-1024 linux-azure-6.5-headers-6.5.0-1021

    linux-azure-6.5-headers-6.5.0-1022 linux-azure-6.5-headers-6.5.0-1024 linux-azure-6.5-tools-6.5.0-1021 linux-azure-6.5-tools-6.5.0-1022 linux-azure-6.5-tools-6.5.0-1024 linux-azure-6.8-cloud-tools-6.8.0-1021

    linux-azure-6.8-cloud-tools-6.8.0-1025 linux-azure-6.8-headers-6.8.0-1021 linux-azure-6.8-headers-6.8.0-1025 linux-azure-6.8-tools-6.8.0-1021 linux-azure-6.8-tools-6.8.0-1025 linux-cloud-tools-6.5.0-1021-azure

    linux-cloud-tools-6.5.0-1022-azure linux-cloud-tools-6.5.0-1024-azure linux-cloud-tools-6.8.0-1021-azure linux-cloud-tools-6.8.0-1025-azure linux-headers-6.5.0-1021-azure linux-headers-6.5.0-1022-azure

    linux-headers-6.5.0-1024-azure linux-headers-6.8.0-1021-azure linux-headers-6.8.0-1025-azure linux-image-6.5.0-1021-azure linux-image-6.5.0-1022-azure linux-image-6.5.0-1024-azure linux-image-6.8.0-1021-azure

    linux-image-6.8.0-1025-azure linux-modules-6.5.0-1021-azure linux-modules-6.5.0-1022-azure linux-modules-6.5.0-1024-azure linux-modules-6.8.0-1021-azure linux-modules-6.8.0-1025-azure

    linux-modules-nvidia-535-6.5.0-1022-azure linux-modules-nvidia-535-6.5.0-1024-azure linux-modules-nvidia-535-6.8.0-1021-azure linux-modules-nvidia-535-6.8.0-1025-azure linux-objects-nvidia-535-6.5.0-1022-azure

    linux-objects-nvidia-535-6.5.0-1024-azure linux-objects-nvidia-535-6.8.0-1021-azure linux-objects-nvidia-535-6.8.0-1025-azure linux-signatures-nvidia-6.5.0-1022-azure linux-signatures-nvidia-6.5.0-1024-azure

    linux-signatures-nvidia-6.8.0-1021-azure linux-signatures-nvidia-6.8.0-1025-azure linux-tools-6.5.0-1021-azure linux-tools-6.5.0-1022-azure linux-tools-6.5.0-1024-azure linux-tools-6.8.0-1021-azure

    linux-tools-6.8.0-1025-azure nvidia-container-toolkit-base nvidia-firmware-535-535.171.04 nvidia-firmware-535-535.183.01

    Use 'sudo apt autoremove' to remove them.

    The following packages will be REMOVED:

    nvidia-container-toolkit*

    0 upgraded, 0 newly installed, 1 to remove and 23 not upgraded.

    After this operation, 4156 kB disk space will be freed.

    (Reading database ... 242424 files and directories currently installed.)

    Removing nvidia-container-toolkit (1.17.5-1) ...

    (Reading database ... 242419 files and directories currently installed.)

    Purging configuration files for nvidia-container-toolkit (1.17.5-1) ...

    $ distribution=$(. /etc/os-release; echo $ID$VERSION_ID)

    $ echo $distribution

    ubuntu22.04

    $ curl -s -L https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg

    File '/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg' exists. Overwrite? (y/N) y

    $ curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \

    sed 's#deb #deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] #' | \

    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

    deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://nvidia.github.io/libnvidia-container/stable/deb/$(ARCH) /

    deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://nvidia.github.io/libnvidia-container/stable/ubuntu18.04/$(ARCH) /

    #deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://nvidia.github.io/libnvidia-container/experimental/deb/$(ARCH) /

    #deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://nvidia.github.io/libnvidia-container/experimental/ubuntu18.04/$(ARCH) /

    $ sudo apt-get update

    Hit:1 https://nvidia.github.io/libnvidia-container/stable/deb/amd64 InRelease

    Get:2 https://nvidia.github.io/libnvidia-container/stable/ubuntu18.04/amd64 InRelease [1484 B]

    Hit:3 https://download.docker.com/linux/ubuntu jammy InRelease

    Get:4 https://nvidia.github.io/libnvidia-container/stable/ubuntu18.04/amd64 Packages [29.2 kB]

    Hit:5 http://azure.archive.ubuntu.com/ubuntu jammy InRelease

    Get:6 http://azure.archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]

    Get:7 http://azure.archive.ubuntu.com/ubuntu jammy-backports InRelease [127 kB]

    Get:8 http://azure.archive.ubuntu.com/ubuntu jammy-security InRelease [129 kB]

    Fetched 415 kB in 1s (807 kB/s)

    Reading package lists... Done

    $ sudo apt-get install -y nvidia-container-toolkit

    Reading package lists... Done

    Building dependency tree... Done

    Reading state information... Done

    The following packages were automatically installed and are no longer required:

    linux-azure-6.5-cloud-tools-6.5.0-1021 linux-azure-6.5-cloud-tools-6.5.0-1022 linux-azure-6.5-cloud-tools-6.5.0-1024 linux-azure-6.5-headers-6.5.0-1021 linux-azure-6.5-headers-6.5.0-1022 linux-azure-6.5-headers-6.5.0-1024

    linux-azure-6.5-tools-6.5.0-1021 linux-azure-6.5-tools-6.5.0-1022 linux-azure-6.5-tools-6.5.0-1024 linux-azure-6.8-cloud-tools-6.8.0-1021 linux-azure-6.8-cloud-tools-6.8.0-1025 linux-azure-6.8-headers-6.8.0-1021

    linux-azure-6.8-headers-6.8.0-1025 linux-azure-6.8-tools-6.8.0-1021 linux-azure-6.8-tools-6.8.0-1025 linux-cloud-tools-6.5.0-1021-azure linux-cloud-tools-6.5.0-1022-azure linux-cloud-tools-6.5.0-1024-azure

    linux-cloud-tools-6.8.0-1021-azure linux-cloud-tools-6.8.0-1025-azure linux-headers-6.5.0-1021-azure linux-headers-6.5.0-1022-azure linux-headers-6.5.0-1024-azure linux-headers-6.8.0-1021-azure

    linux-headers-6.8.0-1025-azure linux-image-6.5.0-1021-azure linux-image-6.5.0-1022-azure linux-image-6.5.0-1024-azure linux-image-6.8.0-1021-azure linux-image-6.8.0-1025-azure linux-modules-6.5.0-1021-azure

    linux-modules-6.5.0-1022-azure linux-modules-6.5.0-1024-azure linux-modules-6.8.0-1021-azure linux-modules-6.8.0-1025-azure linux-modules-nvidia-535-6.5.0-1022-azure linux-modules-nvidia-535-6.5.0-1024-azure

    linux-modules-nvidia-535-6.8.0-1021-azure linux-modules-nvidia-535-6.8.0-1025-azure linux-objects-nvidia-535-6.5.0-1022-azure linux-objects-nvidia-535-6.5.0-1024-azure linux-objects-nvidia-535-6.8.0-1021-azure

    linux-objects-nvidia-535-6.8.0-1025-azure linux-signatures-nvidia-6.5.0-1022-azure linux-signatures-nvidia-6.5.0-1024-azure linux-signatures-nvidia-6.8.0-1021-azure linux-signatures-nvidia-6.8.0-1025-azure

    linux-tools-6.5.0-1021-azure linux-tools-6.5.0-1022-azure linux-tools-6.5.0-1024-azure linux-tools-6.8.0-1021-azure linux-tools-6.8.0-1025-azure nvidia-firmware-535-535.171.04 nvidia-firmware-535-535.183.01

    Use 'sudo apt autoremove' to remove them.

    The following additional packages will be installed:

    libnvidia-container-tools libnvidia-container1 nvidia-container-toolkit-base

    The following NEW packages will be installed:

    nvidia-container-toolkit

    The following packages will be upgraded:

    libnvidia-container-tools libnvidia-container1 nvidia-container-toolkit-base

    3 upgraded, 1 newly installed, 0 to remove and 20 not upgraded.

    Need to get 5927 kB of archives.

    After this operation, 4464 kB of additional disk space will be used.

    Get:1 https://nvidia.github.io/libnvidia-container/stable/deb/amd64 libnvidia-container1 1.17.7-1 [925 kB]

    Get:2 https://nvidia.github.io/libnvidia-container/stable/deb/amd64 libnvidia-container-tools 1.17.7-1 [20.8 kB]

    Get:3 https://nvidia.github.io/libnvidia-container/stable/deb/amd64 nvidia-container-toolkit-base 1.17.7-1 [3792 kB]

    Get:4 https://nvidia.github.io/libnvidia-container/stable/deb/amd64 nvidia-container-toolkit 1.17.7-1 [1190 kB]

    Fetched 5927 kB in 0s (61.9 MB/s)

    (Reading database ... 242420 files and directories currently installed.)

    Preparing to unpack .../libnvidia-container1_1.17.7-1_amd64.deb ...

    Unpacking libnvidia-container1:amd64 (1.17.7-1) over (1.17.5-1) ...

    Preparing to unpack .../libnvidia-container-tools_1.17.7-1_amd64.deb ...

    Unpacking libnvidia-container-tools (1.17.7-1) over (1.17.5-1) ...

    Preparing to unpack .../nvidia-container-toolkit-base_1.17.7-1_amd64.deb ...

    Unpacking nvidia-container-toolkit-base (1.17.7-1) over (1.17.5-1) ...

    Selecting previously unselected package nvidia-container-toolkit.

    Preparing to unpack .../nvidia-container-toolkit_1.17.7-1_amd64.deb ...

    Unpacking nvidia-container-toolkit (1.17.7-1) ...

    Setting up nvidia-container-toolkit-base (1.17.7-1) ...

    Setting up libnvidia-container1:amd64 (1.17.7-1) ...

    Setting up libnvidia-container-tools (1.17.7-1) ...

    Setting up nvidia-container-toolkit (1.17.7-1) ...

    Processing triggers for libc-bin (2.35-0ubuntu3.9) ...

    Scanning processes...

    Scanning linux images...

    Running kernel seems to be up-to-date.

    No services need to be restarted.

    No containers need to be restarted.

    No user sessions are running outdated binaries.

    No VM guests are running outdated hypervisor (qemu) binaries on this host.

    $ sudo nvidia-ctk runtime configure --runtime=docker

    INFO[0000] Config file does not exist; using empty config

    INFO[0000] Wrote updated config to /etc/docker/daemon.json

    INFO[0000] It is recommended that docker daemon be restarted.

    0 件のコメント コメントはありません

  5. 康太郎 久保 0 評価のポイント
    2025-05-23T01:11:10.48+00:00

    上記の"default-runtime": "nvidia"が表示されない件について、以下のように設定する事で解決しました。今後TensorFlowが期待通りに動作するか確認します。

    ~$ sudo nvidia-ctk runtime configure --runtime=docker --set-as-default

    INFO[0000] Loading config from /etc/docker/daemon.json

    INFO[0000] Wrote updated config to /etc/docker/daemon.json

    INFO[0000] It is recommended that docker daemon be restarted.

    ~$ cat /etc/docker/daemon.json

    {

    "default-runtime": "nvidia",
    
    "runtimes": {
    
        "nvidia": {
    
            "args": [],
    
            "path": "nvidia-container-runtime"
    
        }
    
    }
    

    }

    ~$ sudo systemctl restart docker

    ~$ sudo docker info | grep -i runtime

    Runtimes: io.containerd.runc.v2 nvidia runc

    Default Runtime: nvidia


お客様の回答

回答は、質問作成者が [承諾された回答] としてマークできます。これは、ユーザーが回答が作成者の問題を解決したことを知るのに役立ちます。