paddle paddle使用GPU

本文介绍如何安装GPU版本的PaddlePaddle,并演示了如何通过设置use_gpu参数来启用GPU进行训练。此外,还介绍了如何配置混合使用GPU和CPU的方法。
  1. 安装GPU版本paddlepaddle   
   pip install paddlepaddle-gpu     

       2.设置使用GPU

       使用GPU需要将use_gpu参数置为true:

import paddle.v2 as paddle
 
# Initialize PaddlePaddle.
paddle.init(use_gpu=true, trainer_count=1)
 
# Configure the neural network.
x = paddle.layer.data(name='x', type=paddle.data_type.dense_vector(13))
y_predict = paddle.layer.fc(input=x, size=1, act=paddle.activation.Linear())
 
# Infer using provided test data.
probs = paddle.infer(
    output_layer=y_predict,
    parameters=paddle.dataset.uci_housing.model(),
    input=[item for item in paddle.dataset.uci_housing.test()()])
 
for i in xrange(len(probs)):
    print 'Predicted price: ${:,.2f}'.format(probs[i][0] * 1000)

     3.GPU和CPU的混合使用

可以设置parallel_nn来混合使用GPU和CPU计算网络层的参数。也就是说,你可以将网络配置成某些层使用GPU计算,而其他层使用CPU计算。另一种方式是将网络层划分到不同的GPU上去计算,这样可以减小GPU内存,或者采用并行计算来加速某些层的更新。如果想在网络配置中指定设备的ID号(表示为deviceId),并且加上的命令行参数:--parallel_nn=true

#command line:
paddle train --use_gpu=true --parallel_nn=true --trainer_count=COUNT
 
#network:
fc2=fc_layer(input=l1, layer_attr=ExtraAttr(device=0), ...)
fc3=fc_layer(input=l1, layer_attr=ExtraAttr(device=1), ...)
fc4=fc_layer(input=fc2, layer_attr=ExtraAttr(device=-1), ...)

在本例中,我们假设一台机器上有4个GPU。

  • trainer_count=1:
  • 使用0号GPU计算fc2层。
  • 使用1号GPU计算fc3层。
  • 使用CPU计算fc4层。

  • trainer_count=2:

  • 使用0号和1号GPU计算fc2层。
  • 使用2号和3号GPU计算fc3层。
  • 使用CPU两线程计算fc4层。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值