Google Colabのローカルランタイムで、MYCOEIROINKの学習を実行している画面

MYCOEIROINKローカルランタイム学習で気をつけること

基本的にはこちらの記事のとおりに進めていけば問題ないのですが……。私がつまずいた点について詳しく書いていきます。

白痴ーさんのnote記事

白痴ーさんが参考にしたと思しき記事

要約

最重要仮想メモリをシステム管理サイズにする
次点CUDA をインストールするときは「カスタム」で
必須ではないけどやってみよう「colab-runtime」フォルダーを WSL2 上に作る

仮想メモリをシステム管理サイズにする

ローカルランタイムの動作には仮想メモリの仕組みが上手く働く必要があります。

もしあなたが Windows 仮想メモリ設定で「すべてのドライブのページング ファイルのサイズを自動的に管理する」のチェックを外していて、Cドライブのページングファイルを「カスタムサイズ」や「ページング ファイルなし」にしていた場合は、設定の見直しをしてください。

Windowsの「仮想メモリ」設定画面。Cドライブのページングファイルのサイズは「システム管理」になっていて、「システム管理サイズ」が選ばれている

良い例。利用状況に応じて仮想メモリが設定されます。

Windowsの「仮想メモリ」設定画面。Cドライブのサイズが「4982 - 4982」の固定になっていて、「カスタムサイズ」の初期サイズ・最大サイズがどちらも4982 MB

良くない例。仮想メモリが追加で割り当てられなくなります。

仮想メモリを上手く割り当てられなかったときに出るエラーは下記のとおり。これを VRAM に関わるエラーだと勘違いした私は6日間足踏みしました。要注意です。

RuntimeError: CUDA out of memory.

Google Colabのローカルランタイムで出たエラーの画面。最終行に「RuntimeError: CUDA out of memory」とあり、GPUの総容量16.00 GiBに対して空きは7.61 GiBと表示されている

CUDA をインストールするときは「カスタム」で

CUDA のインストール時に、MYCOE学習と互換性のないドライバーが自動で当たってしまうことがあります。インストールの際は「カスタム」を選んで CUDA のコンポーネントのみを選択しましょう。

NVIDIA CUDA 12.4のインストーラー。「カスタム インストール オプション」の画面で、「CUDA」だけにチェックが入り、GeForce Experience・PhysX・Display Driver・HD Audioは外れている

ドライバーからインストールし直す際には DDU(Display Driver Uninstaller)の実行も忘れずに。

「colab-runtime」フォルダーを WSL2 上に作る

Google Colab のローカルランタイムを Windows で動かす際には「Docker Desktop」を WSL2 と連携して行います。

WSL2 で実行するプログラムのファイルに Windows 上のドライブを介すると、読み書きが遅くなってしまいます。

白痴ーさんの記事にある「3, 4, 5, 」のやり方を変えて「colab-runtime」フォルダーを WSL2 の Ubuntu 上に作って実行してみましょう。

※必須ではありません。

前準備, Ubuntu を最新状態にする

WSL2 にある Ubuntu ターミナルで下記のコマンドを実行し、Ubuntu をアップデートします。久しぶりに Ubuntu を動かす際にも必ず実行しておきましょう。

※コマンドの意味が分からない方は、何をしているのか事前に調べてください。

sudo apt update && sudo apt upgrade -y && sudo apt full-upgrade -y && sudo apt autoremove -y && sudo apt autoclean -y

3’, Google ドライブの代わりとなるフォルダーを準備

下記のコマンドでフォルダーを作り、白痴ーさんの記事と同じようにやっていきます。

mkdir ~/colab-runtime

4’, 起動ファイルの準備

docker-compose.yml の作成と編集は下記のように行います。例として私の愛用する nano エディタを使っていますが、各々のお好きなエディタを使ってくださいね!

nano ~/colab-runtime/docker-compose.yml

5’, 起動ファイルを起動するバッチを作成

起動ファイルを起動するバッチは、Ubuntu に分かる形式で作成します。まず下記のコマンドでファイル編集を開始します。

nano ~/colab-runtime/run.sh

ファイル内に下記の内容をペーストして保存します。

#!/bin/bash
docker-compose up -d

最後に下記のコマンドで実行権限を付与します。他のファイルやフォルダーについても、権限や所有ユーザー・グループの見直しは適宜行ってください。

chmod 755 ~/colab-runtime/run.sh

下記のコマンドでバッチファイルを実行すると Google Colab ローカルランタイム用の Docker イメージが作成され、コンテナが起動します。

bash ~/colab-runtime/run.sh

残りの手順はこちらの記事と同じです。

実行結果

無事に動作するとこんな感じになります。

Google Colabの学習画面。ローカルランタイムに接続中で、学習スタートのセルが実行中。右のリソース欄はシステムRAM 7.3/15.6 GB、GPU RAM 12.1/16.0 GB

Ubuntuのターミナルで実行したnvidia-smiの結果。NVIDIA GeForce RTX 4060 Ti、GPU使用率91%、温度64℃、メモリ使用量12384MiB / 16380MiB、ドライバー551.52、CUDA 12.4

Googleドライブの学習結果フォルダー(MYCOEIROINK_WORK/exp/tts_mycoe_model)をエクスプローラーで開いた画面。37〜46エポックのpthファイル、checkpoint.pth、config.yaml、latest.pthなど19項目が並んでいる

あとがき:私のローカルマシン環境

最後に私のローカルマシン環境を載せて終わります。

OSWindows 11 Pro 23H2 Build 22631.3737
CPUAMD Ryzen 5 5600
MBMSI B550 TOMAHAWK
Precision Boost Overdrive 無効
Core Performance Boost 無効
Resizable BAR 有効
AMD SVM 有効
BIOSAMI BIOS 7C91vAG
RAMDDR4-2133 16GB x2 (Corsair CMG32GX4M2D3600C18)
AMP (XMP) 無効
システムストレージNVMe 1TB (WD Blue SN570 NVMe WDS100T3B0C-EC)
ビデオカードPalit GeForce RTX 4060 Ti JetStream 16GB
NVIDIA-SMI 550.40.07 Driver Version: 551.52 CUDA Version: 12.4
MYCOEIROINK作成コードベータ版 v.0.4.12
Docker Desktop4.30.0 (149282)
WSL2Ubuntu 22.04.4 LTS