AI Studio平台+paddle2.2.1+GPU,gpu资源占用0、显存占用0
收藏
import paddle from paddle.io import Dataset import numpy as np from pandas import read_csv #混合多只 f=open("data/data126099/训练数据 2022-01-20 155914.csv",encoding='UTF-8') #只有一只 #f=open("work/训练数据 2022-01-22 092617.csv",encoding='UTF-8') trainDataSrc=read_csv(f).values.tolist() #混合多只 f=open("data/data126099/测试数据 2022-01-20 155924.csv",encoding='UTF-8') #只有一只 #f=open("work/测试数据 2022-01-22 092622.csv",encoding='UTF-8') testDataSrc=read_csv(f).values.tolist() INPUT_K_LEN=60 K_ELEMENT_NUM=6 INPUT_LEN=INPUT_K_LEN*K_ELEMENT_NUM OUT_LEN=3 #place = paddle.CUDAPlace(0) place= paddle.device.set_device("gpu") #自定义数据集 class MyDataset(Dataset): """ 步骤一:继承paddle.io.Dataset类 """ def __init__(self, mode='train'): """ 步骤二:实现构造函数,定义数据读取方式,划分训练和测试数据集 """ super(MyDataset, self).__init__() if mode == 'train': self.data = trainDataSrc else: self.data = testDataSrc def __getitem__(self, index): """ 步骤三:实现__getitem__方法,定义指定index时如何获取数据,并返回单条数据(训练数据,对应的标签) """ data = np.array(self.data[index][0:INPUT_LEN],np.float32) label = np.array(self.data[index][INPUT_LEN:],np.float32) return data, label def __len__(self): """ 步骤四:实现__len__方法,返回数据集总数目 """ return len(self.data) # 测试定义的数据集 trainDS = MyDataset(mode='train') testDS = MyDataset(mode='test') mnist = paddle.nn.Sequential( paddle.nn.Linear(360, 5120), paddle.nn.Linear(5120, 5120), paddle.nn.Linear(5120, 5120), paddle.nn.Linear(5120, 3)) # 预计模型结构生成模型对象,便于进行后续的配置、训练和验证 model = paddle.Model(mnist) #学习率 #paddle.optimizer.Adam(parameters=model.parameters()) #optim = paddle.optimizer.SGD(learning_rate=0.00001,parameters=model.parameters()) optim = paddle.optimizer.Adam(parameters=model.parameters()) #optim = paddle.optimizer.Adadelta(learning_rate=0.001, epsilon=1.0e-6, rho=0.95,parameters=model.parameters()) #optim = paddle.optimizer.Adagrad(learning_rate=0.001,parameters=model.parameters()) # 模型训练相关配置,准备损失计算方法,优化器和精度计算方法 model.prepare(optim,paddle.nn.L1Loss(),paddle.metric.Accuracy()) # 开始模型训练 model.fit(trainDS,testDS,epochs=10000,batch_size=1024,verbose=1)
纯小白,对算法不懂,对平台也不了解,完全照着例子拼接出来的一个项目。
直接在AI Studio平台上学习、练习,还有免费的GPU。
结果想提高训练速度的时候,重启项目,加上place之后,在训练的过程中发现GPU占用和显存占用一只为0,不知道是哪里的问题。
#place = paddle.CUDAPlace(0)
place= paddle.device.set_device("gpu")
还请大神们帮忙解惑,感谢!
1
收藏
请登录后评论
在终端使用nvidia-smi命令查看gpu占用情况,网页上会有延迟~
感谢帮助。
我再观察一下。
我知道了,原来是我的测试项目数据量级太小,还不配在曲线上体现出来。
再次感谢!
到终端用nvidia-smi看。这个可视化在aistudio经典版有bug。BML的是没问题的
好的感谢大佬!
经典版目前只能观察CPU的使用,GPU还是用新版的吧,而且经典版的不显示PID
我一直使用BML,学习了。
BML为啥显存有占用,GPU还为0