ITADN

6.3多线程最新代码报错Cannot re-initialize CUDA in forked subprocess

#146Opena2659802 创建于 2026-01-25
A
a2659802commented
问题: 最新代码执行`python preprocess.py -c configs/reflow.yaml`抛出异常 尝试回退到[optimize parallel data loading](https://github.com/yxlllc/DDSP-SVC/commit/92276cdb172155fbbf8985f249b4304f7d2d773a)这个提交可以正常使用。而最新的[add multi-processing](https://github.com/yxlllc/DDSP-SVC/commit/733adb9a4c6298eaca2926b70cf7b2f944041930)会报错。 尝试过参数`-j 1`也是一样的。 报错堆栈如下: ```bash ning or pending. [Error] Task for 0206Trial09_Hiro013.wav generated an exception: A process in the process pool was terminated abruptly while the future was running or pending. [Error] Task for 0206Trial09_Hiro019.wav generated an exception: A process in the process pool was terminated abruptly while the future was running or pending. [Error] Task for 0206Trial09_Hiro020.wav generated an exception: A process in the process pool was terminated abruptly while the future was running or pending. 100%|████████████████████████████████████████████████████████████████████████████████████████████████████| 1376/1376 [00:00<00:00, 1895.33it/s] 0%| | 0/10 [00:00<?, ?it/s]Exception in initializer: Traceback (most recent call last): File "/usr/lib/python3.11/concurrent/futures/process.py", line 235, in _process_worker initializer(*initargs) File "/root/DDSP-SVC/preprocess.py", line 92, in _worker_init _worker_f0_extractor, _worker_volume_extractor, _worker_mel_extractor, _worker_units_encoder = load_extractors( ^^^^^^^^^^^^^^^^ File "/root/DDSP-SVC/preprocess.py", line 49, in load_extractors f0_extractor = F0_Extractor( ^^^^^^^^^^^^^ File "/root/DDSP-SVC/ddsp/vocoder.py", line 36, in __init__ F0_KERNEL['rmvpe'] = RMVPE('pretrain/rmvpe/model.pt', hop_length=160) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/DDSP-SVC/encoder/rmvpe/inference.py", line 14, in __init__ ckpt = torch.load(model_path) ^^^^^^^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/serialization.py", line 1521, in load return _load( ^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/serialization.py", line 2122, in _load result = unpickler.load() ^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/_weights_only_unpickler.py", line 535, in load self.append(self.persistent_load(pid)) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/serialization.py", line 2086, in persistent_load typed_storage = load_tensor( ^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/serialization.py", line 2052, in load_tensor wrap_storage = restore_location(storage, location) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/serialization.py", line 698, in default_restore_location result = fn(storage, location) ^^^^^^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/serialization.py", line 637, in _deserialize return obj.to(device=device) ^^^^^^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/storage.py", line 291, in to return _to(self, device, non_blocking) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/_utils.py", line 87, in _to with device_module.device(device): File "/root/rvc/rvc/lib/python3.11/site-packages/torch/cuda/__init__.py", line 533, in __enter__ self.prev_idx = torch.cuda._exchange_device(self.idx) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/rvc/rvc/lib/python3.11/site-packages/torch/cuda/__init__.py", line 398, in _lazy_init raise RuntimeError( RuntimeError: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method ``` 另外我在gemini的建议下尝试修改`preprocess.py`代码,似乎能跑,没有抛异常,但是很多这样的日志打印,也不知道有没有影响 `[Error] Task for 0202Trial10_Hiro031.wav generated an exception: A process in the process pool was terminated abruptly while the future was running or pending.` ```python import multiprocessing import torch if __name__ == '__main__': try: multiprocessing.set_start_method('spawn', force=True) except RuntimeError: pass ``` 环境信息: ``` (rvc) root@ollama:~/DDSP-SVC/data/train# pip list | grep torch torch 2.9.1 torchaudio 2.9.1 torchcrepe 0.0.20 torchfcpe 0.0.4 torchvision 0.24.1 (rvc) root@ollama:~/DDSP-SVC/data/train# nvidia-smi Sun Jan 25 16:02:34 2026 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 580.126.09 Driver Version: 580.126.09 CUDA Version: 13.0 | +-----------------------------------------+------------------------+----------------------+ | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+========================+======================| | 0 NVIDIA RTX PRO 6000 Blac... Off | 00000000:81:00.0 Off | Off | | 35% 31C P0 42W / 600W | 0MiB / 97887MiB | 3% Default | | | | N/A | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | No running processes found | +-----------------------------------------------------------------------------------------+ (rvc) root@ollama:~/DDSP-SVC/data/train# cat /etc/os-release PRETTY_NAME="Debian GNU/Linux 12 (bookworm)" NAME="Debian GNU/Linux" VERSION_ID="12" VERSION="12 (bookworm)" VERSION_CODENAME=bookworm ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/" ``` 由于本人不懂深度学习,就不提交AI的改动了,希望作者有空看看
0 条评论