-
Notifications
You must be signed in to change notification settings - Fork 121
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
CPUの使用スレッド数を指定できるようにする #63
Comments
環境変数で指定する方法と、initialize関数の引数で指定する方法があるかなと感じました! |
@AsPulse さんが VOICEVOX/voicevox_engine#282 (comment) で環境変数の使用を提案されていたのはengine起動時の話でしょうか? また VOICEVOX/voicevox_engine#282 (comment) で @aoirint さんが辞書形式での設定について話されていますが、これはinitialize関数実行時に /*
struct vv_config {
const char* root_dir_path = "";
bool use_gpu = false;
int num_threads = 0;
};
*/
vv_config config;
config.root_dir_path = "./model";
config.use_gpu = true;
config.num_threads = 4;
initialize(config); のようにするということでしょうか? |
はい、その通りです! また、Issueのタイトルで「環境変数で」と限定してしまっていたため、修正を致しました。 |
私はinitialize引数にデフォルト値を持たせた上で追加する方が合理的かなと思います。 デフォルト値を持たせれば、引数に関して、過去のバージョンとの互換性も保てるでしょうし、initialize引数とする方が良いと思いました。 |
core側での対応は終了したためcloseします |
内容
ONNX RuntimeがCPU使用率を50%に抑える設定になっているので、それを環境変数を用いて設定できるようにしたいです。
このコメントにて、「Coreは本来デスクトップ版VOICEVOXなどで使われるため、50%の使用制限は適正」とされていたようです。
Pros 良くなる点
合成専用サーバーや、アナウンスなどのリアルタイム性が求められる場面でCPUを効率よく使用することができるようになります。
Cons 悪くなる点
今の所特に思いついていません。
実現方法
にて、「解決にはCore側の修正が必要」と判断されました。
コメントにあるように、「モデルのSessionを作成する前に、Ort::SessionOptionsにオプションを設定することでスレッド数の指定ができそう」とのことです。
The text was updated successfully, but these errors were encountered: