音声合成ソフトVOICEVOXで実行環境によって音声合成のスピードがどのくらい変わるのか調べてみました。比較対象はCPU、CPU内蔵GPU、外部GPU、クラウド(さくらのAI)です。

ベンチマーク方法

今回のテストには VOICEVOX ベンチマーク VoivoBench を使用しました。このプログラムはJavaScriptで書かれていて、HTMLファイルをブラウザで開くだけで使えます。VOICEVOXのAPIにアクセスして音声データが返ってくるまでの時間を測定して、10回の平均を求めています。

音声合成したテキスト (1) ショートバージョン
『ボクの名前はずんだもんなのだ。おいしいずんだ餅が食べたいのだ。』

音声合成したテキスト (2) フルバージョン
『ボクの名前はずんだもんなのだ。おいしいずんだ餅が食べたいのだ。ずんだ餅のさらなる普及を目指して頑張ってるのだ。』

テスト対象

実行環境は全てWindows 11です。
・CPUによる音声合成
・CPUに内蔵されたGPUによる音声合成
・外部GPUによる音声合成
・クラウドサービス さくらのAI Engineによる音声合成

ベンチマーク結果

単位はミリ秒です。数字が小さいほど高速です。ショートは短いテキストの音声合成したテキスト (1) ショートバージョンの結果で、フルはテキストのフルバージョンの結果です。

種類型番ショートフル
CPUAMD Ryzen 9 7950X524909
CPURyzen Embedded R25143,5306,190
CPURyzen 5 3500U3,8305,914
CPUIntel Core Ultra 5 2251,0501,847
内蔵GPU(Ryzen Embedded R2514)2,758動作せず
内蔵GPU(Ryzen 5 3500U)動作せず動作せず
内蔵GPU(Intel Core Ultra 5 225)2,4454,058
外部GPURTX 4090 24GB5592
外部GPURTX-5060 8GB115118
クラウドさくらのAI Engine149200

今回のテストを行った理由は、CPUより内蔵GPUの方が早いんじゃないか?? という疑問がきっかけだったのですが、この結果を見ると内蔵GPUはたいしたことはありませんね。特に非力なPCの内蔵GPUでは、長いテキストだとエラーで止まってしまったり、画面が乱れたりと不安定な動作になりました。

CPUでの音声合成はCPUの能力がそのまま結果に繋がっているようです。スレッド数は指定しておらず、デフォルト動作での結果です。また非力なCPUでは他の処理なども影響して結果が安定しなかったので、値は参考程度にしてください。

最後のさくらのAI Engineは従量課金制のクラウドサービスで、自前でサーバーを建てなくてもVOICEVOXが利用できる便利なサービスです。今回の結果を見るとRTX-5060より遅いですが、実用上は問題なく快適に使用できるスピードだと思います。

さくらのAI Engineの活用事例の記事も書いてるので、興味がある方はこちらも参考にしてみてくださいね。
さくらのAI Engineを使って、会話音声をずんだもん語に変換するマイクを作ってみた


余談

NUCでベンチマークをしようと思ってこのようなM.2スロットから接続するOCuLinkを使用してみました。

右側のコネクタはマザーボードに繋げる24ピンコネクタですが、その左にあるコネクタが不明です。基板にはCPU 4Pと書いてあるので、あぁ、あのCPUの電源コネクタか。なんか数が合わないけど、ちゃんと刺さったからOKでしょ。と思って電源を入れたら…

ん?

うわぁああああああ、火花が噴き出てきた!!!

電源から花火のように火花が噴き出してきましたw あーあ、高い電源だったのに壊れちゃった。テスターで導通を測ったら、2のピンの12VとGNDが逆でした。

× 刺さったからヨシ
〇 ピンの数が合わない時点でやめるべき

電源を壊してしまったので買い直しました。たぶん壊した電源の 1/10 くらいの安っい玄人志向のやつ。グラボが壊れなかったのが不幸中の幸いでした。