静态图模式下,如何固定Variable在显存中,使得每个Batch不用重新赋值?
Created by: Yogurt2019
- 版本、环境信息: 1)PaddlePaddle版本:1.6 2)GPU:Tesla V100 16G2 32G1 CUDA10.0 cudnn7.3 4)系统环境:Ubuntu 18.04
- 训练信息 1)单机多卡 2)显存信息 Tesla V100 16G2 32G1
my_variable = fluid.layers.create_global_var(value=0, shape=[10, 1000, 1000], dtype='float32', name='my_variable', persistable=True, force_cpu=False) fluid.layers.assign(my_np_array, my_variable) result = fluid.layers.matmul(my_variable, my_previous_result_variable)
目前在训练的过程中,每个batch的训练都会自动给my_variable赋值一次,即每个batch进行时都会进行assign操作,由于my_np_array很大,所以很占内存,而且极大影响了整体训练时间, 我想对my_variable在整个训练过程中只赋值一次,请问如何实现? 谢谢!