nvidia-1050TiではOpenMythosは動作しない

1.概要

nvidia-1050Tiが利用できる環境があるので、Dockerを利用したOpenMythosの学習環境ができないか試しました。しかし、nvidia-1050Tiのハードウェア上の理由でCUDA-12.6がサポートされず、動作させることができません。ハードウェアに制約があり、最新のドライバーが提供されないこともわかりました。また、nvidia関連を除外したcpuでの動作環境で試験をすると、OpneMythosを導入できません。OpenMythosはnvidiaが必須でした。その内容を記述します。

2.詳細

今回作業をした環境は以下の通りです。
HW環境:i3-7100, nvidia-1050Ti
SW環境:LinuxMint 22.3

手順は、nvidia-1660super環境と同じことをしました。
異なる点はnvidia-driverがnvidia-driver-535となった点です。
インストールは順調に完了したのですが、torchでcudaが利用できません。
調べた結果、nvidia-1050Tiの問題とわかりました。
OpenMythosはGPUなしでも動作しません。環境構築に注意が必要です。
実行手順を記載します。

(1) nouveauの無効化
/etc/modprobe.d/blacklist-nouveau.conf作成
# nvidia(nouveau)
blacklist nouveau
options nouveau modeset=0
適用します
$ sudo update-initramfs -u

(2) nvidia driver設定
$ ubuntu-drivers devices
$ sudo apt -y install nvidia-driver-535

(3) nvidia Container Toolkit導入
参考資料(Installing the NVIDIA Container Toolkit)を参照願います
$ curl -fsSL 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/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
$ sudo apt-get update
$ export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.19.1-1
  sudo apt-get install -y \
      nvidia-container-toolkit=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      nvidia-container-toolkit-base=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      libnvidia-container-tools=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      libnvidia-container1=${NVIDIA_CONTAINER_TOOLKIT_VERSION}

(4) 再起動して確認します
$ nvidia-smi
Driver Version: 535.309.01  CUDA Version: 12.2
と表示されます。cuda 12.6はサポートされません。
$ nvidia-container-cli info

(5) dockerとdocker compose導入
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu noble stable"
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/docker.gpg
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
$ sudo gpasswd -a $USER docker
$ docker --version
$ docker compose version

(6) Dockerfile作成
FROM nvidia/cuda:12.6.0-devel-ubuntu24.04
ENV PYTHONUNBUFFERED=1 \
    DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
    python3 \
    python3-pip \
    git \
    && rm -rf /var/lib/apt/lists/*
RUN pip3 install --no-cache-dir --break-system-packages \
    torch \
    torchvision \
    torchaudio \
    open-mythos \
    swarms
WORKDIR /home/ubuntu
RUN chown ubuntu:ubuntu /home/ubuntu
USER ubuntu
CMD ["sleep", "infinity"]

(7) docker-compose.yml作成
services:
  openmythos:
    container_name: openmythos
    build:
      context: .
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
    volumes:
      - .:/home/ubuntu
    tty: true
    stdin_open: true

(8) 起動
$ docker compose up -d

(9) login
$ docker compose exec --user ubuntu openmythos bash

(10) Usage実行
参考資料(OpenMythosのサンプルプログラムを動かしました)を参照願います。
$ python3 openmythos_usage.py

ここまで何の問題もなく、導入は完了したのですが、cudaを利用することができません。

(11) cudaの確認
$ python3
Python 3.12.3 (main, Mar 23 2026, 19:04:32) [GCC 13.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.cuda.is_available()
/usr/local/lib/python3.12/dist-packages/torch/cuda/__init__.py:187: UserWarning: CUDA initialization: The NVIDIA driver on your system is too old (found version 12060). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver. (Triggered internally at /pytorch/c10/cuda/CUDAFunctions.cpp:119.)
  return torch._C._cuda_getDeviceCount() > 0
False

ここで初めてFalseになり、cudaを使えないことがわかりました。

3.所見

上記結果を踏まえて、nvidia-driver, nvidia-container-toolkitを削除した環境で試したのですが、OpenMythosはGPUを必要とするようでinstallできません。cpuで利用するためにnvidia-driver, nvidia-container-toolkitの導入が必要でした。



コメント

このブログの人気の投稿

miniPCのBMAXでWindows11のsecure boot設定漏れでトラブル発生

LinuxMint 21.3にWinBoat導入を試してみました

LinuxMint-22.3にWine 11.6をサクッと入れてみました