TensorFlow使用并行计算

TensorFlow使用并行计算

物理CPU、逻辑CPU、CPU核数、多线程与并行运算

在学习如何使用TensorFlow并行计算之前,我们必须要明白一些相关概念。这将有助于我们更好的学习和理解TensorFlow的并行运算机制。

多个物理CPU

这句话的意思是一台计算机有多个物理CPU

物理cpu数:主板上实际插入的cpu数量,可以数不重复的 physical id 有几个(physical id)

cpu核数

单块CPU上面能处理数据的芯片组的数量,如双核、四核等 (cpu cores)

逻辑cpu数

一般情况下,逻辑cpu=物理CPU个数×每颗核数,如果不相等的话,则表示服务器的CPU支持超线程技术(HT:简单来说,它可使处理器中的1 颗内核如2 颗内核那样在操作系统中发挥作用。这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能,此时逻辑cpu=物理CPU个数×每颗核数x2)

多线程

我们知道线程是操作系统最小的调度单位,单个线程同时只能在单个cpu线程(CPU线程相当于逻辑CPU数)中执行,对于多核的CPU系统中,开启多线程有助于加速程序的运行。

并行运算

并行计算(英语:parallel computing)一般是指许多指令得以同时进行的计算模式。在同时进行的前提下,可以将计算的过程分解成小部分,之后以并发方式来加以解决。多线程也算做并行运算。一般用以加速程序的运算。

TensorFlow中使用并行运算

在TensorFlow中使用并行运算有很多方式,比如增加线程、使用多块GPU、使用多块CPU等,因为我使用的服务器上只有两块CPU,所以下面我们以使用CPU为例,GPU也是一样的。

  • 手动指定网络的某一部分运行的CPU

    with tf.device('/cpu:0'):
        要运行的代码块...
    
    with tf.device('/cpu:1'):
        要运行的代码块.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值