2026年4月22日水曜日

バックエンドのmakeとか

実際にmakeして動かしてみるとSYCLを利用すると結構不安定な状態になるので、ほかのbackendとしてvulkanにしてみたら変わるのだろうか?という疑問が湧いてきていてもたってもいられなくなってしまいました。

いまのところllama-cppもstablediffusion-ggmlもSYCLベースにするとCPUは1コアだけ(おそらくGPUに指示しているため)使用している状態になるのもちょっと残念なところ。

ドキュメント上には複数GPUやCPUxGPUの協調実行もできているっぽいので、正直期待しているというか、この目で確認したいポイントだったりするんですが、どうもCUDAベースでないとダメっぽい感じが…AMD系のでもいけるのかな?

でvulkanならもしかして!?と、淡い期待の元、再度makeしたりしたんですがダメっぽいですねw

目下とても動作が綱渡り的な動作のstablediffusion-ggmlをもう少し安定させようかとこちらもcpu/sycl/vulkanと3つのバイナリをmakeして切り替えながら試せる環境を準備しましたが、cpu以外はかなり綱渡りな状態が続いています。vulkanだとダメでしたが、256x256ぐらいならsyclで動いて、5分ぐらいかな?で絵が出てきたので、512x512にサイズを大きくしたらなんとか出てきた絵はノイズとか縞模様とかのテクスチャだけでした…orz

cpu単体で動かしても特定のキーワードを含ませると動き出す前に落ちることも多く、結構癖がある模様。やはり画像を扱うにはメモリーが湯水のようにほしいという事なのでしょう。それでも特定のキーワードは、明らかにメモリー食いそうだな?とかいう感じの4K Qualityとか8KQualityとかそんな感じのキーワードだったりします。なのでgemmaさんから聞いたプロンプトをそぎ落とすとそれなりに動いてくれます。

でもなぁ512x512サイズで、ちょっと凝った感じだと30分ぐらいかかっちゃうんですよw単純そうなものであれば20分ぐらいかな?

ちなみに最初に動いていたものがQ4_0のものだったので、同じモデルをQ8_0に変えて試したところやはチャットと同様に細かいニュアンスが現れてくるようになりました。なのでパラメータサイズが大きくて量子化で劣化するのは同じような感じというのを体験できました。

まぁでも人物とかの画像だと指の数がすごいし、ちょっとポージングをさせようとすると四肢が融合しだすんですよね…結構怖いですねこういうの。

風景画とかはすごくよさげ…

あと、調子に乗って日本語で「さかな」と入れたらなんか文字だけ出てきました…謎ですw

画像と言えばQwenなので、そちらのファイルも手元にダウンロードしてみましたが、stablediffusion-ggmlでは動かないのかな?元のものは動きそうだから設定次第では行けそうなんだけど… 

 

0 件のコメント:

コメントを投稿