Tensorflow 核心流程剖析 3-- 运行设备Device的生成和管理

本文深入剖析Tensorflow的核心流程,重点讲解设备(device)的概念和管理,包括device的种类(如CPU和GPU)、管理硬件资源的方式、设备实例的创建过程以及在图(graph)运行阶段的使用,揭示了Tensorflow如何高效地利用硬件资源进行并行计算。
摘要由CSDN通过智能技术生成


1. 关键术语描述

kernel

  • 在神经网络模型中,每个node都定义了自己需要完成的操作,比如要做卷积、矩阵相乘等。而实现这个操作的算法,我们单独抽象出来,叫做kernel。 可以将kernel看做是一段能够跑在具体硬件设备上的算法程序,所以即使同样的2D卷积算法,我们有基于gpu的Convolution 2D kernel实例、基于cpu的Convolution 2D kernel实例。

device

  • 负责运行kernel的具体硬件设备抽象。每个device实例,对应系统中一个具体的处理器硬件,比如gpu:0 device, gpu:1 device, cpu:0 device。一般来说,每个device实例同时包括处理器资源、内存资源。device的抽象支持硬件设备提供的并行处理能力。

2. device是什么

为方便描述,下面我们把在tensorflow里面运行的神经网络模型都统一称为graph。

我们知道,tensorflow主要针对的是跨硬件平台、分布式、并发运行的场景,参与运算的每个硬件资源,我们都抽象为device实例,便于管理。

device的主要职责:

  • 管理处理器资源,为支持device内部的并行计算,进一步将其抽象为thread pool或streams:

    • cpu:使用thread pool来管理,thread之间可支持不同程度的并行计算能力
    • gpu: 针对nvidia gpu, 使
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值