2026-07-20


Dell Pro Max with GB10 2台をつなげて運用する
TSUKUMOのマルチGPUパソコンWA9J-X211/XTにUbuntu Server 22.04とCOEIROINK Engineを導入する
さて、この怪物マシンのGPUを早速音声合成に使おうとCOEIROINK Engineの導入を試みるも、CPUがARM64であるためそのままでは全く動かない。
COEIROINKはVOICEVOXの派生ブランチであって、つくよみちゃんという音声モデルを使用できる唯一のエンジンである。しかし数年前で開発は止まってしまっている。VOICEVOX本体は今でもメンテされておりARM64にもDockerで簡単に導入できるが、COEIROINKで作られたモデルを再生することはできない。COEIROINKを再生できるのはこの数年前で止まっているブランチしかないので、エラーをつぶしながら無理矢理GB10で実行できた貴重なメモ!
1、リポジトリのクローンとGPU版ブランチのセット
git clone https://github.com/shirowanisan/voicevox_engine.git cd voicevox_engine/ git switch -c coeiroink-1.6.0-gpu --track origin/c-1.6.0+v-0.12.3+gpu
このブランチじゃないと動かない。
2、音声モデルつくよみちゃんの取得と設置
リポジトリに音声モデルは含まれていないので、つくよみちゃん(れいせい)を取得する。つくよみちゃんは2026年7月現在でも全音声モデルの中で最もクオリティが高い完成されたモデルだと当方は思っている。
https://coeiroink.com/download
から、COEIROINKソフト本体をダウンロードする。Macの場合、アプリケーションフォルダにコピーしたあと、
/Applications/COEIROINKv2.app/Contents/MacOS/speaker_info/tsukuyomichan-2.0.0
があるので、speaker_infoフォルダごと取得し、さきのvoicevox_engineリポジトリフォルダに放り込んでおく。
3、Dockerを導入する
下準備
sudo apt-get update
sudo apt-get install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
cat /etc/apt/sources.list.d/docker.list
本体インストール
sudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
確認と自動起動、Hello World dockerの確認
sudo systemctl status docker --no-pager sudo systemctl enable --now docker sudo docker version sudo docker compose version sudo docker run --rm hello-world sudo usermod -aG docker "$USER" #sudoなしでdockerできるようにする
4、DockerでGB10のGPUを使えるようにする
NVIDIA Cotainer Toolkitが必要。
dpkg -l | grep nvidia-container
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://#' \
| sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
sudo apt install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
sudo cat /etc/docker/daemon.json
{
"runtimes": {
"nvidia": {
"args": [],
"path": "nvidia-container-runtime"
}
}
}s
コンテナからGB10が見えるか確認
docker run --rm --gpus all \\ ubuntu:24.04 \ nvidia-smi Unable to find image 'ubuntu:24.04' locally 24.04: Pulling from library/ubuntu 4b987da45db4: Pull complete Digest: sha256:4fbb8e6a8395de5a7550b33509421a2bafbc0aab6c06ba2cef9ebffbc7092d90 Status: Downloaded newer image for ubuntu:24.04 Sat Jul 18 08:21:42 2026 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 580.159.03 Driver Version: 580.159.03 CUDA Version: 13.0 | +-----------------------------------------+------------------------+----------------------+ | 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 NVIDIA GB10 On | 0000000F:01:00.0 Off | N/A | | N/A 44C P8 4W / N/A | Not Supported | 0% Default | | | | N/A | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | No running processes found | +-----------------------------------------------------------------------------------------+ /usr/share/keyrings$ docker run --rm --gpus all \ nvcr.io/nvidia/cuda:13.0.0-base-ubuntu24.04 \ nvidia-smi Unable to find image 'nvcr.io/nvidia/cuda:13.0.0-base-ubuntu24.04' locally 13.0.0-base-ubuntu24.04: Pulling from nvidia/cuda e3bd89a9dac5: Pull complete 7388693f29f9: Pull complete 2ab05901de2a: Pull complete 652943dea480: Pull complete 13e8f87efde8: Pull complete Digest: sha256:6e43a6b02e5f16e4a715953be8b29c40acbe84aed11a61357ef0fc899967fbd9 Status: Downloaded newer image for nvcr.io/nvidia/cuda:13.0.0-base-ubuntu24.04 Sat Jul 18 08:22:20 2026 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 580.159.03 Driver Version: 580.159.03 CUDA Version: 13.0 | +-----------------------------------------+------------------------+----------------------+ | 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 NVIDIA GB10 On | 0000000F:01:00.0 Off | N/A | | N/A 44C P8 4W / N/A | Not Supported | 0% Default | | | | N/A | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | No running processes found | +-----------------------------------------------------------------------------------------+
ここでホストと同じように、
NVIDIA GB10
Driver Version: 580.159.03
CUDA Version: 13.0
となっているので、Docker側からGPUが見えていることを確認。
Pytorchの対応確認
docker pull nvcr.io/nvidia/pytorch:26.06-py3
docker run --rm -it \
--gpus all \
nvcr.io/nvidia/pytorch:26.06-py3 \
python -c '
import platform
import torch
print("arch:", platform.machine())
print("torch:", torch.__version__)
print("cuda build:", torch.version.cuda)
print("cuda available:", torch.cuda.is_available())
if torch.cuda.is_available():
print("device:", torch.cuda.get_device_name(0))
print("capability:", torch.cuda.get_device_capability(0))
x = torch.randn(2048, 2048, device="cuda")
y = x @ x
print("test:", y.shape, y.device)
'
arch: aarch64
torch: 2.13.0a0+8145d630e8.nv26.06
cuda build: 13.3
cuda available: True
device: NVIDIA GB10
capability: (12, 1)
test: torch.Size([2048, 2048]) cuda:0
5、新しくDockerfile.gb10を作成する
ツールの下準備は整ったので、既存のDockerfileを使わず新しく以下のように作成する。
voicevox_engine/Dockerfile.gb10
https://github.com/servernote/voicevox_engine/blob/main/Dockerfile.gb10
6、coeiroink.pyのコードを修正する
今回コード内のx86バイナリが使えない=CoreWrapperが使えない=--load-all-modelsが効かない、ので、起動時に全モデルをロードするように手動修正する必要がある。これをしないと、異なるspeakerが来るたびにモデルの再ロードが行われパフォーマンスが低下するため。
voicevox_engine/voicevox_engine/dev/synthesis_engine/coeiroink.py
7、不要ファイル防止のため.dockerignoreを作成する
voicevox_engine/.dockerignore
| Shell | .dockerignore | GitHub Source |
.git .gitignore __pycache__ *.pyc *.pyo *.original venv .venv dist build
8、Dockerをビルドする
いよいよビルド。念の為キャッシュをoffにして実行
cd voicevox_engine docker build --no-cache --progress=plain -f Dockerfile.gb10 -t mycoeiroink-gb10 .
9、対話モードで実行してみる
ビルドが通ったら実行
docker run --rm -it --name mycoeiroink-gb10 --gpus all --ipc=host --ulimit memlock=-1 --ulimit stack=67108864 -p 50031:50031 mycoeiroink-gb10 NVIDIA Release 26.06 (build 337426144) PyTorch Version 2.13.0a0+8145d63 NOTE: CUDA Forward Compatibility mode ENABLED. Using CUDA 13.3 driver version 610.43.02 with kernel driver version 580.159.03. See https://docs.nvidia.com/deploy/cuda-compatibility/ for details. INFO: Started server process [1] INFO:uvicorn.error:Started server process [1] INFO: Waiting for application startup. INFO:uvicorn.error:Waiting for application startup. INFO: Application startup complete. INFO:uvicorn.error:Application startup complete. INFO: Uvicorn running on http://0.0.0.0:50031 (Press CTRL+C to quit) INFO:uvicorn.error:Uvicorn running on http://0.0.0.0:50031 (Press CTRL+C to quit)
うまいこといった!!GPUの使用状況を確認する。
nvidia-smi Sat Jul 18 19:58:35 2026 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 580.159.03 Driver Version: 580.159.03 CUDA Version: 13.0 | +-----------------------------------------+------------------------+----------------------+ | 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 NVIDIA GB10 On | 0000000F:01:00.0 Off | N/A | | N/A 46C P0 10W / N/A | Not Supported | 0% Default | | | | N/A | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | 0 N/A N/A 871938 C python 890MiB | +-----------------------------------------------------------------------------------------+
ちゃんと当該プロセスがGPUのメモリをロードしている。
10、COEIROINK APIをテストする
話者モデルの確認
curl -s http://127.0.0.1:50031/speakers | jq .
[
{
"name": "つくよみちゃん",
"speaker_uuid": "3c37646f-3881-5374-2a83-149267990abc",
"styles": [
{
"name": "れいせい",
"id": 0
},
{
"name": "おしとやか",
"id": 5
},
{
"name": "げんき",
"id": 6
}
],
"version": "1.0.0"
}
]
まずはAPIが反応。ダウンロードしたCOEIROINKソフトから持ってきたvoicevox_engine/speaker_info/tsukuyomichan-2.0.0がちゃんとコピーされていれば上記のように出るはず。
(ただしソフトに同梱されているのは0:れいせいのみ、ほかの2つは必要なら別途ダウンロード)
クエリ生成関数
curl -s \ -X POST \ "http://127.0.0.1:50031/audio_query?speaker=0" \ --get \ --data-urlencode "text=こんにちは。GB10で音声合成しています。" \ > query.json
カレントにsynthesis関数に渡すquery.jsonができるので、すかさずこれを指定し音声合成
curl -s \ -H "Content-Type: application/json" \ -X POST \ -d @query.json \ "http://127.0.0.1:50031/synthesis?speaker=0" \ > test.wav
test.wavを確認すれば、つくよみちゃん(れいせい)の声で読み上げてくれているのがわかる。やったぜ!!!
初回のみ7秒ほどかかってしまって、以降は瞬時に終わるので何か内部で初期化に時間がかかってるっぽいが・・--load_all_modelsでも変わらずこれだけは最後まで原因がわからなかったが実用には支障ないでしょう。多分。
11、サーバーとしてシステムに常駐させる
docker run -d \ --name mycoeiroink-gb10 \ --restart unless-stopped \ --gpus all \ --ipc=host \ --ulimit memlock=-1 \ --ulimit stack=67108864 \ -p 50031:50031 \ mycoeiroink-gb10
ログ確認、停止、再起動、削除
docker logs -f mycoeiroink-gb10 docker stop mycoeiroink-gb10 docker start mycoeiroink-gb10 docker rm mycoeiroink-gb10
※本記事内容の無断転載を禁じます。
ご連絡は以下アドレスまでお願いします★
Dell Pro Max with GB10でCOEIROINK Engineを実行する
Dell Pro Max with GB10 2台をつなげて運用する
macOSのシステムデータの中身を見て不要なファイルを削除する
オンライン事業所年金情報サービスでダウンロードしたXMLを表示する
キーボードで直接入力したテキストを音声合成しOBS Studioで配信する
マイクで喋った日本語をテキスト変換+音声合成しOBS Studioで配信する
マイクで喋った日本語をテキスト変換してOBS Studioにリアルタイムで表示する【3】
マイクで喋った日本語をテキスト変換してOBS Studioにリアルタイムで表示する【2】
マイクで喋った日本語をテキスト変換してOBS Studioにリアルタイムで表示する【1】
Googleファミリーリンクで子供の端末の現在地がエラーで取得できない場合
【ひかり電話+VoIPアダプタ】LANしか通ってない環境でアナログ電話とFAXを使う
VirtualBoxの仮想マシンをWindows起動時に自動起動し終了時に自動サスペンドする
size_tとssize_tを使い分けてSegmentation Faultを予防する
CORESERVER v1 CORE-MINIプランでownCloudをインストールする
LinuxからWindowsの共有フォルダをマウントする
【Apache】サーバーに同時接続可能なクライアント数を調整する
VirtualBoxの仮想マシンが突然ネットワークにつながらなくなった場合
Intel Macbook2020にBootCampで入れたWindows11 Pro 23H2のBluetoothを復活させる