PaddlePaddle / Paddle

PArallel Distributed Deep LEarning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)
http://www.paddlepaddle.org/
Apache License 2.0
22.29k stars 5.61k forks source link

Paddle Inference 是否可以直接使用 Paddle.Tensor #68789

Open DrRyanHuang opened 1 month ago

DrRyanHuang commented 1 month ago

请提出你的问题 Please ask your question

Paddle Inference 相关代码中经常出现 copy_from_cpu 将数据从内存搬到显存上

    input_names = predictor.get_input_names()
    for i, name in enumerate(input_names):
        input_tensor = predictor.get_input_handle(name)
        input_tensor.reshape(img[i].shape)
        input_tensor.copy_from_cpu(img[i])

如果我已经通过 DataLoader 将数据加载到 GPU 上了,是否可以不用先将数据 .cpu().numpy() 搬回到内存,然后再用 copy_from_cpu 将数据从内存搬到显存上,是否有其他简便一些的方法呢?

即 Paddle Inference 是否可以直接使用 paddle.Tensor 呢?

xiaoxiaohehe001 commented 1 month ago

@DrRyanHuang 直接调用 input_tensor.share_external_data(self.input_data) 即可