Open dongxiaok opened 6 months ago
根据你的cuda版本安装对应版本的pytorch相关包,如果torch.cuda.is_available()输出是true,运行程序会自动使用gpu,如果是false则说明pytorch没安装对
测试docker exec 6e0cb3e4273c python3 -c "import torch; print(torch.cuda.is_available())"
返回True
,但还是有报错。
日志显示我的GPU需要支持更高的 CUDA capability (sm_89)。目前安装的 PyTorch 支持的 CUDA capabilities 是 sm_37, sm_50, sm_60, 和 sm_70。之后,我在容器内卸载并重装了torch,使用以下命令:
pip uninstall torch torchvision torchaudio
pip install torch torchvision torchaudio
之后使用--gpus all
参数运行容器就可以正常运行了。
但是现在又发现另外一个问题,只有在第一次运行时,才能用到gpu资源(用到的时候速度很快)。但是在测试几次之后,gpu就又不能调用了,只看见gpu显存占用在涨,但还是占用的cpu计算,速度也很慢。请问这是程序bug吗?
不清楚你的情况,我在jupyter里,先运行这个代码块
from demo_page import get_models, tts
from frontend import g2p_cn_en, ROOT_DIR, read_lexicon, G2p
from config.joint.config import Config
import soundfile as sf
config = Config()
speakers = config.speakers
models = get_models()
lexicon = read_lexicon(f"{ROOT_DIR}/lexicon/librispeech-lexicon.txt")
g2p = G2p()
后面只需运行下面代码块更改文本内容就可以
content = "你想输出的语音文本"
text = g2p_cn_en(content, g2p, lexicon)
path = tts(text, "开心", content, "8051", models)
sf.write(file="./1.wav", data=path, samplerate=16000)
这样我一直都是使用的gpu
我在linux系统中,运行docker run -dp 127.0.0.1:8501:8501 syq163/emoti-voice:latest,是cpu运行的。 我添加了参数docker run --gpus all -dp 127.0.0.1:8501:8501 syq163/emoti-voice:latest,运行后会报错。
请问如何才能在docker中使用gpu运行?我的电脑已安装了相关依赖,其他docker项目使用gpu都没有问题。