如何找到什么是使用索引pytorch / numpy的CPU:索引应位于CPU上或与索引Tensor(CPU)位于同一设备上

igsr9ssn  于 2023-01-05  发布在  其他
关注(0)|答案(1)|浏览(131)

我正在尝试查找RuntimeError的修复程序:索引应在CPU上或与索引Tensor(CPU)在同一设备上,以便我可以运行图像扩散模型:https://github.com/kakaobrain/karlo
完整错误输出如下:https://github.com/kakaobrain/karlo/issues/12
当我用os.environ["CUDA_VISIBLE_DEVICES"]="1"显式设置gpu时,错误出现了
我已经将cpu从"cpu"cpu()更改为"cuda"cuda(),但是当我尝试运行模型时,仍然抛出错误(通过python demo/product_demo.py --host 0.0.0.0 --port 8085 --root-dir .启动gradio)
有什么建议我可以探索,以找出什么仍然使用cpu的索引?或者是其他事情发生?

0md85ypi

0md85ypi1#

已实施

timestep_map_tensor = th.tensor(timestep_map)   
cuda_device = th.device("cuda")   
timestep_map_tensor = timestep_map_tensor.to(cuda_device)

但是用完了VRAM加载的东西(我有24GB的一张卡)。
能够使用set将内容加载到VRAM中
第一个月
甚至开始看到图像生成:),但在生成时耗尽了VRAM。
降低“最大批处理大小”我能够成功地运行东西:)在那两个更改之后

相关问题