使用Predictor预测时爆显存,使用load_inference_model就不会。
Created by: Maybewuss
- 版本、环境信息: 1)PaddlePaddle版本:1.8.3 3)GPU:k40 CUDA10.1 4)系统环境:python2.7
加载Rorberta-large进行预测,batch_size设置为32,使用load_inference_model导入后进行预测,显存维持在2g左右。 使用predictor是设置config中的gpu_memory上限为8g,调用时显存会迅速拉满,然后报错挂掉。 大致的代码逻辑如下
dataset = self.processor.build_dataset(data_list, predict=True)
data_iter = DataLoader(dataset,
batch_size=self.batch_size,
shuffle=False,
collate_fn=batcher('decode'))
for batch in tqdm(data_iter):
input_ids, masks = batch[:2]
logits = self.predictor.run([PaddleTensor(input_ids), PaddleTensor(masks)])