Skip to content
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版でGPUモードに切り替えようとするときに、CPU版であることを気付けるようにする #298

Closed
Hiroshiba opened this issue Oct 3, 2021 · 10 comments
Labels
優先度:中 初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上

Comments

@Hiroshiba
Copy link
Member

内容

実はCPU版の作成が可能になっているのですが、その場合でもCPU/GPUモード切替のUIが普通に存在します。
ユーザーがCPU版を使っていることを忘れた状態で、なぜかGPUモードを使おうとすると、原因にたどり着けないかもしれません。
なので、何らかの方法でCPU版であることを気づけるようにしたいです。

ただ、どうやって自分のビルドモードを知れるようにするかが思い付けていません。

ref: https://github.com/Hiroshiba/voicevox/pull/264

@Hiroshiba
Copy link
Member Author

将来的にコアに対応デバイスがわかるAPIが生えるので、それを使うのが一番良さそうです。
https://github.com/Hiroshiba/voicevox_core/issues/16

ただ、コアに対応を入れた後、コアをプレリリースし、エンジンにAPIを生やしてやっとソフトウェアに対応を入れられるので、次0.7.0のリリースに間に合わないかもしれません。
先に別の方法(一時的に.envにONLY_CPUフラグを作るとか?)を実装すると良いかもしれません・・・。

@Apple-Yuki
Copy link
Contributor

こちらでも言及しましたが、Mac版に関しては、GPUボタンは非表示がいいかと。

#576 (comment)

@Hiroshiba
Copy link
Member Author

エンジン側にAPIが実装されているので、お手軽なタスクになりました!

@tunamaguro
Copy link
Contributor

できるかどうかわかりませんがちょっとやってみます

@Hiroshiba
Copy link
Member Author

Hiroshiba commented Jan 22, 2023

@tunamaguro ありがとうございます!!

こちらのタスク、昔はエンジンが1つだけで簡単だったのですが、今はマルチエンジンが実装されたため複雑になっているかもしれません 🙇‍♂️
もし不明な点や相談すべき点などあればお気軽にコメント頂ければ!!

@tunamaguro
Copy link
Contributor

tunamaguro commented Jan 22, 2023

今日考えたことのメモです。

  • GPUが使用可能かどうかかのAPIはエンジンに実装されている(レスポンス)
  • エンジンにリクエストを投げるためにはENGINE_CONNECTORが必要(参考1 参考2)
  • つまるところ、登録されているすべてのengineIdを取得して各エンジンに対してGPU対応可能か確認すればよい気がする
    • 上のような方法で行くと、エンジンAはGPU可、エンジンBはGPU不可みたいなことがあると実現できなさそう
    • 各エンジンごとにCPUかGPUかを選択できるようにする?
  • GPU不可のときのUIは単純にdisableにするだけでよいか?何かしらのメッセージを表示するか?
     - disableだとGPUにトグルできないことが分かりにくいかも
    disable = true
    image
    disable = false
    image

明日以降考えること

  • すべてのengineIdをどこから取得するか
  • GPU不可のときの表示をどうするか

@Hiroshiba
Copy link
Member Author

検討と考えのご共有ありがとうございます!!方針いい感じに思います!!

disableにするの良さそうに思います。
ジャストアイデアですが、マウスホバーしているときになぜdisableになっているのか理由を描いてあげるとなかなか良いUXかもです!

ちなみにエンジンごとに変更するというのは @raa0121 さんが検討中だったりします!
#1136
なのでこのissueではエンジン全体だけの変更を考えつつ、先に↑がマージされた場合は各エンジン切り替えのことも考えるとかが方針としてやりやすいのかな?と思いました。
参考になれば幸いです!

@tunamaguro
Copy link
Contributor

ご意見ありがとうございます!

確かに何処かになぜGPUに変えられないかの理由があったほうが親切だと思うので、ツールチップなどで表示したいと思います。

@tunamaguro
Copy link
Contributor

こちらのプルリクエスト出しました!! #1140
ご確認お願いします!!

Hiroshiba added a commit that referenced this issue Jan 25, 2023
Co-authored-by: Yuto Ashida <y-chan@y-chan.dev>
Co-authored-by: Hiroshiba <hihokaruta@gmail.com>
@Hiroshiba
Copy link
Member Author

こちら完了済みのタスクなのでcloseします!
@tunamaguro さんありがとうございました!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
優先度:中 初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上
Projects
None yet
Development

No branches or pull requests

3 participants