lucidrains / deep-daze

Simple command line tool for text to image generation using OpenAI's CLIP and Siren (Implicit neural representation network). Technique was originally created by https://twitter.com/advadnoun
MIT License
4.37k stars 327 forks source link

--num-layers 32 #85

Closed dxkyy closed 3 years ago

dxkyy commented 3 years ago

When I try to run --num-layers 32, i get this epochs: 0%| | 0/20 [00:00<?, ?it/s] iteration: 0%| | 0/1050 [00:00<?, ?it/s] epochs: 0%| | 0/20 [00:00<?, ?it/s] Traceback (most recent call last): File "c:\users\adria\appdata\local\programs\python\python39\lib\runpy.py", line 197, in _run_module_as_main return _run_code(code, main_globals, None, File "c:\users\adria\appdata\local\programs\python\python39\lib\runpy.py", line 87, in _run_code exec(code, run_globals) File "C:\Users\adria\AppData\Local\Programs\Python\Python39\Scripts\imagine.exe\__main__.py", line 7, in <module> File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\deep_daze\cli.py", line 111, in main fire.Fire(train) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\fire\core.py", line 141, in Fire component_trace = _Fire(component, args, parsed_flag_args, context, name) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\fire\core.py", line 466, in _Fire component, remaining_args = _CallAndUpdateTrace( File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\fire\core.py", line 681, in _CallAndUpdateTrace component = fn(*varargs, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\deep_daze\cli.py", line 107, in train imagine() File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\deep_daze\deep_daze.py", line 447, in forward _, loss = self.train_step(epoch, i) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\deep_daze\deep_daze.py", line 380, in train_step out, loss = self.model(self.clip_encoding) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\deep_daze\deep_daze.py", line 168, in forward out = self.model() File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\siren_pytorch\siren_pytorch.py", line 97, in forward out = self.net(coords) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\siren_pytorch\siren_pytorch.py", line 76, in forward x = self.net(x) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\container.py", line 119, in forward input = module(input) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\siren_pytorch\siren_pytorch.py", line 48, in forward out = self.activation(out) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\torch\nn\modules\module.py", line 889, in _call_impl result = self.forward(*input, **kwargs) File "c:\users\adria\appdata\local\programs\python\python39\lib\site-packages\siren_pytorch\siren_pytorch.py", line 19, in forward return torch.sin(self.w0 * x) RuntimeError: CUDA out of memory. Tried to allocate 128.00 MiB (GPU 0; 8.00 GiB total capacity; 2.10 GiB already allocated; 123.47 MiB free; 2.12 GiB reserved in total by PyTorch)

NotNANtoN commented 3 years ago

Hi, look at the discussion in #80. You have not enough VRAM on your GPU. So reduce the image size to 256 and/or reduce the batch size.

afiaka87 commented 3 years ago

https://github.com/lucidrains/deep-daze/issues/86#issue-831227449 We should really address these issues closer to the top of the README. No one wants to read a wall of text.