-
Notifications
You must be signed in to change notification settings - Fork 203
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
12世代CPUで実行するとEコアが使われてパフォーマンスが落ちる? #1147
Comments
|
本 Issue は直近 180 日間で活動がありません。今後の方針について VOICEVOX チームによる再検討がおこなわれる予定です。 |
こんにちは。私はGPU(グラボ?)がついていないノートパソコンでVOICEVOXを実行しています。 私が動作させているVOICEVOXエンジンのバージョンは 0.19.1 で、CPU版を使用しております。 以下が私のノートパソコンのスペックです。 この情報がお役に立てれば幸いです。 |
@FanaticPond3462 コメントありがとうございます!!! 調べさせていただいたところ、お使いのCPUではPコアが4、Eコアが8つとのことでした! もしターミナル周りの知識をお持ちでしたら、run.exe実行時に以下の引数を指定して実行お願いできませんか 🙇 これで16スレッドのうち12スレッド使われるようになり、かつPコアがより多く使われるのであれば実行速度が最高1.5倍早くなるのではと思ってます! もし前者だった場合は12世代CPUを使っている方の使い勝手をより上げられるのではないかなと! |
下記ツールがどれぐらい信憑性があるかわかりませんが、 |
コア指定ツールというものがあるのですね! CPU Affinityプロパティとはプロセスに対してコア番号で使用するコアを指定できるというものらしいです。 カニエルボーさんの解説記事によりますと以下のコマンドで1と2、6と7のコアだけを使用するようにできるそうです コアがPコアかEコアか判断できたら役に立ちそうです! |
@FanaticPond3462 詳しい調査本当にありがとうございます!!!
!?!?!?!?!?!!?!!?!? 頂いたタスクマネージャーのスクショ2枚を見比べると、なんか下8つがPコアのスレッドな気がちょっとしますね!! もしそうなら、スレッド数12で動かしたものは下8つの稼働率が若干下がっているので、もしかしたらPコアの使用率が下がったから遅くなってる気がしますね!! @nmori さんの指定ツール、及び @FanaticPond3462 さんのコア指定方法もご教示ありがとうございます!!! ただもしかしたら @FanaticPond3462 さんの結果を見るに、Pコアの数だけのスレッド数で起動すれば、勝手にPコアだけ使ってくれるんじゃないかという気もしますね!!! あるいはジャストアイディアだけど、いろんなスレッド数で実際に回してみて一番早かったものを選ぶという手もありそう。 |
不具合の内容
バージョン0.18.0からエンジンでの合成速度が下がったという報告を2件見かけました。
https://twitter.com/Denshirangeman/status/1772073540683956407
https://twitter.com/ONeeeeeChang/status/1772755110747414904
Discordで議論した仮説として、12世代CPUは省電力コアがあるため説が出ました。
パフォーマンスが出るPコア8個と低電力なEコア4個構成な場合、Pコアは論理コア数が2つずつ、Eコアは1つずつなので合計20スレッドになります。
そして今までは物理コア数(この場合12)の並列数だったのが、0.18.0から論理コア数の半分(この場合10)になっています。
この影響でPコアの使用数が下がったことで処理速度が遅くなったのではという仮説です。
可能ならVOICEVOXがPコアを優先的に使ったり、なにか他の方法で実行速度を上げられると嬉しそうです。
現象・ログ
「Core i7の第12世代CPUにメモリ32GB、RTX3060Tiのデスクトップ環境で今までは1セリフ3秒くらいの処理だったのですが、0.18.0だと10秒ちょっとくらいかかる感じです。」
とのことです。
再現手順
不明。12世代CPUで音声合成すればわかりそう?
タスクマネージャでCPUの使用率を見るとかなり情報が増えそうなのでできる人がいれば。
期待動作
処理速度が速いこと。
その他
Pコアを優先的に使う方法はわかりませんでした。
勝手にPコアとEコアを振り分けてくれるはずで、流石に重い処理なのでPコアに割り当ててほしい感じがしますが、ゲームをやっている場合とかだとこっちがEコアに行きがちなのかもしれない・・・?
抜本的な解決策になってませんが、cpu_num_threadsを論理コアの半分ではなく4分の3とかにすればマシになるかも。
The text was updated successfully, but these errors were encountered: