當使用GPU時蜻展,程序默認從device[0]開始運行澳化,但是如果遇到第一塊就被占滿的情況,那么程序直接報錯GPU溢出源梭,但其實第二塊第三塊空閑娱俺,因此可以通過設(shè)置GPU的Index,要求程序在哪幾塊GPU上運行。有兩種方法:
一废麻、
設(shè)置CUDA_VISIBLE_DEVICES=0,1 python train.py荠卷,指定在0,1塊上運行,
二烛愧、
在程序中使用:
import os;
os.environ['CUDA_VISIBLE_DEVICES’]=“2”油宜;
另外pytorch2.0后增加了分布式GPU運行.
分布式是指多個GPU在多臺服務器上運行,而并行是指一臺服務器上有多個GPU怜姿。
采用data=data.cuda(1)的方式可以把數(shù)據(jù)轉(zhuǎn)存到GPU1塊上慎冤。