2.4 KiB
2.4 KiB
検証結果
検証日:2026-09-07。修正前の基準コミット:11a53b8。
環境
- Windows 11 / Python 3.12.9
- PyTorch 2.8.0+cu128
- NVIDIA GeForce RTX 5090
結果
python -m pytest -q:72 passed。CUDAテスト6件を含み、スキップなし。
- 旧NumPy実装とのRGB出力比較:反転・二値化・グレースケールの組み合わせとガンマ1.0 / 2.2 / 3.0の24通り。
- 元のRGBA透明度保持、黒除去と二値化の境界値、2出力の独立性。
- straight出力のPNG保存・再読込と白背景へのアルファ合成。
- float16 / bfloat16 / float32 / float64、勾配付き・非連続テンソル、1チャンネル画像。
- マスク共有、フレーム別マスク、RGBAとの併用、補間、Load Imageの64×64空マスク相当。
- 非有限値・範囲外値の正規化、不正入力のエラー。
- CPUとCUDAの出力比較、CPUマスクとGPU画像の組み合わせ。
- パッケージのノード登録、旧サンプルの設定互換性、新サンプルの接続整合性とノード計算。
Python構文チェックとgit diff --checkも通過。
修正前との不具合比較
| 入力 | 修正前 | 修正後 |
|---|---|---|
| bfloat16画像 | NumPy変換時にTypeError | 正常出力 |
| requires_grad=True画像 | NumPy変換時にRuntimeError | 正常出力、入力は変更なし |
| RGB=0.25、元アルファ=0 | 出力アルファ0.75となり透明部分が復活 | 出力アルファ0 |
処理時間の参考値
512×512のRGB画像4枚、既存の初期設定、legacy方式。各ケースで1回ウォームアップ後、3回測定した中央値です。GPU計測には前後の同期を含めています。
| 入力 | 修正前 | 修正後 |
|---|---|---|
| CPU | 191.77 ms | 15.49 ms |
| CUDA | 201.41 ms | 1.00 ms |
CUDA入力に対し、旧版はCPUへ転送して処理・出力します。修正版はGPU上で処理・出力します。画像読込・保存やComfyUI全体の実行時間は含まず、性能は環境と画像サイズに依存します。
未検証範囲
ComfyUI本体を起動した画面操作と実ワークフローの通し実行は未実施です。Python 3.10およびLinuxでの実行は、このローカル環境では未実施です。追加したGitHub Actionsがリポジトリ上で実行された結果も未確認です。