美文网首页
PaddlePaddle CPU和GPU内存的拷贝

PaddlePaddle CPU和GPU内存的拷贝

作者: sweetsky0901 | 来源:发表于2017-12-11 22:39 被阅读0次
     if (platform::is_gpu_place(context.GetPlace())) {                                                  
          loc_cpu.mutable_data<T>(loc_tensor.dims(), platform::CPUPlace());                                
          framework::CopyFrom(loc_tensor, platform::CPUPlace(),                                            
                              context.device_context(), &loc_cpu);                                         
          loc_data = loc_cpu.data<T>();                                                                    
          conf_cpu.mutable_data<T>(conf_tensor.dims(), platform::CPUPlace());                              
          framework::CopyFrom(conf_tensor, platform::CPUPlace(),                                           
                              context.device_context(), &conf_cpu);                                        
          conf_data = conf_cpu.data<T>();                                                                  
          priorbox_cpu.mutable_data<T>(in_priorbox->dims(), platform::CPUPlace());                         
          framework::CopyFrom(*in_priorbox, platform::CPUPlace(),                                          
                              context.device_context(), &priorbox_cpu);                                    
          priorbox_data = priorbox_cpu.data<T>();                                                          
        }              
    

    类似上面的代码,之前一直没有太领会为什么会需要判断是GPU的时候进行这样的内存拷贝。
    后来编码的时候遇到在GPU模式下,有些需要进行CPU计算的时候,会有这样的操作,之后,根据需要,可能还要把计算的结果拷贝回GPU

    相关文章

      网友评论

          本文标题:PaddlePaddle CPU和GPU内存的拷贝

          本文链接:https://www.haomeiwen.com/subject/etnwixtx.html