aboutsummaryrefslogtreecommitdiffstats
path: root/modules/devices.py
Commit message (Collapse)AuthorAgeFilesLines
* Avoid exceptions to be silencedKohaku-Blueleaf2024-01-201-6/+5
|
* Avoid early disableKohaku-Blueleaf2024-01-201-0/+4
|
* Fix nested manual castKohaku-Blueleaf2024-01-181-1/+5
|
* rearrange if-statements for cpuKohaku-Blueleaf2024-01-091-3/+3
|
* Apply the correct behavior of precision='full'Kohaku-Blueleaf2024-01-091-4/+7
|
* Revert "Apply correct inference precision implementation"Kohaku-Blueleaf2024-01-091-33/+9
| | | | This reverts commit e00365962b17550a42235d1fbe2ad2c7cc4b8961.
* Apply correct inference precision implementationKohaku-Blueleaf2024-01-091-9/+33
|
* linting and debugsKohaku-Blueleaf2024-01-091-6/+6
|
* Fix bugs when arg dtype doesn't matchKohakuBlueleaf2024-01-091-15/+10
|
* improve efficiency and support more deviceKohaku-Blueleaf2024-01-091-17/+43
|
* change import statements for #14478AUTOMATIC11112023-12-311-2/+2
|
* Add utility to inspect a model's parameters (to get dtype/device)Aarni Koskela2023-12-311-1/+2
|
* Merge branch 'dev' into test-fp8Kohaku-Blueleaf2023-12-031-0/+13
|\
| * Merge pull request #14171 from Nuullll/ipexAUTOMATIC11112023-12-021-0/+13
| |\ | | | | | | Initial IPEX support for Intel Arc GPU
| | * Disable ipex autocast due to its bad perfNuullll2023-12-021-7/+13
| | |
| | * Initial IPEX supportNuullll2023-11-301-2/+9
| | |
* | | Merge branch 'dev' into test-fp8Kohaku-Blueleaf2023-12-021-1/+1
|\| |
| * | Merge pull request #14131 from read-0nly/patch-1AUTOMATIC11112023-12-021-1/+1
| |\ \ | | |/ | |/| Update devices.py - Make 'use-cpu all' actually apply to 'all'
| | * Update devices.pyobsol2023-11-281-1/+1
| | | | | | | | | | | | | | | fixes issue where "--use-cpu" all properly makes SD run on CPU but leaves ControlNet (and other extensions, I presume) pointed at GPU, causing a crash in ControlNet caused by a mismatch between devices between SD and CN https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/14097
* | | Better namingKohaku-Blueleaf2023-11-191-3/+3
| | |
* | | Use options instead of cmd_argsKohaku-Blueleaf2023-11-191-11/+14
| | |
* | | Add MPS manual castKohakuBlueleaf2023-10-281-1/+5
| | |
* | | ManualCast for 10/16 series gpuKohaku-Blueleaf2023-10-281-6/+51
| | |
* | | Add CPU fp8 supportKohaku-Blueleaf2023-10-231-1/+5
|/ / | | | | | | | | | | Since norm layer need fp32, I only convert the linear operation layer(conv2d/linear) And TE have some pytorch function not support bf16 amp in CPU. I add a condition to indicate if the autocast is for unet.
* | fix for crash when running #12924 without --device-idAUTOMATIC11112023-09-091-1/+1
| |
* | More accurate check for enabling cuDNN benchmark on 16XX cardscatboxanon2023-08-311-1/+2
|/
* split shared.py into multiple files; should resolve all circular reference ↵AUTOMATIC11112023-08-091-9/+1
| | | | import errors related to shared.py
* rework RNG to use generators instead of generating noises beforehandAUTOMATIC11112023-08-091-79/+2
|
* rework torchsde._brownian.brownian_interval replacement to use ↵AUTOMATIC11112023-08-031-6/+38
| | | | device.randn_local and respect the NV setting.
* add NV option for Random number generator source setting, which allows to ↵AUTOMATIC11112023-08-021-2/+37
| | | | generate same pictures on CPU/AMD/Mac as on NVidia videocards.
* Fix MPS cache cleanupAarni Koskela2023-07-111-2/+3
| | | | Importing torch does not import torch.mps so the call failed.
* added torch.mps.empty_cache() to torch_gc()AUTOMATIC11112023-07-081-0/+3
| | | | changed a bunch of places that use torch.cuda.empty_cache() to use torch_gc() instead
* Remove a bunch of unused/vestigial codeAarni Koskela2023-06-051-7/+0
| | | | As found by Vulture and some eyes
* run basic torch calculation at startup in parallel to reduce the performance ↵AUTOMATIC2023-05-211-0/+18
| | | | impact of first generation
* ruff auto fixesAUTOMATIC2023-05-101-1/+1
|
* rename CPU RNG to RNG source in settings, add infotext and parameters ↵AUTOMATIC2023-04-291-2/+2
| | | | copypaste support to RNG source
* Option to use CPU for random number generation.Deciare2023-04-191-2/+6
| | | | | | | Makes a given manual seed generate the same images across different platforms, independently of the GPU architecture in use. Fixes #9613.
* Refactor Mac specific code to a separate filebrkirch2023-02-011-45/+7
| | | | Move most Mac related code to a separate file, don't even load it unless web UI is run under macOS.
* Refactor MPS fixes to CondFuncbrkirch2023-02-011-36/+14
|
* MPS fix is still needed :(brkirch2023-02-011-0/+3
| | | | Apparently I did not test with large enough images to trigger the bug with torch.narrow on MPS
* Merge pull request #7309 from brkirch/fix-embeddingsAUTOMATIC11112023-01-281-3/+8
|\ | | | | Fix embeddings, upscalers, and refactor `--upcast-sampling`
| * Remove MPS fix no longer needed for PyTorchbrkirch2023-01-281-3/+0
| | | | | | | | The torch.narrow fix was required for nightly PyTorch builds for a while to prevent a hard crash, but newer nightly builds don't have this issue.
| * Refactor conditional casting, fix upscalersbrkirch2023-01-281-0/+8
| |
* | clarify the option to disable NaN check.AUTOMATIC2023-01-271-0/+2
| |
* | remove the need to place configs near modelsAUTOMATIC2023-01-271-4/+8
|/
* Add UI setting for upcasting attention to float32brkirch2023-01-251-1/+5
| | | | | | Adds "Upcast cross attention layer to float32" option in Stable Diffusion settings. This allows for generating images using SD 2.1 models without --no-half or xFormers. In order to make upcasting cross attention layer optimizations possible it is necessary to indent several sections of code in sd_hijack_optimizations.py so that a context manager can be used to disable autocast. Also, even though Stable Diffusion (and Diffusers) only upcast q and k, unfortunately my findings were that most of the cross attention layer optimizations could not function unless v is upcast also.
* Add option for float32 sampling with float16 UNetbrkirch2023-01-251-0/+2
| | | | This also handles type casting so that ROCm and MPS torch devices work correctly without --no-half. One cast is required for deepbooru in deepbooru_model.py, some explicit casting is required for img2img and inpainting. depth_model can't be converted to float16 or it won't work correctly on some systems (it's known to have issues on MPS) so in sd_models.py model.depth_model is removed for model.half().
* Merge pull request #6922 from brkirch/cumsum-fixAUTOMATIC11112023-01-191-4/+7
|\ | | | | Improve cumsum fix for MPS
| * Fix cumsum for MPS in newer torchbrkirch2023-01-181-4/+7
| | | | | | | | The prior fix assumed that testing int16 was enough to determine if a fix is needed, but a recent fix for cumsum has int16 working but not bool.
* | disable the new NaN check for the CIAUTOMATIC2023-01-171-0/+3
| |