- TensorFlow Machine Learning Projects
- Ankit Jain Armando Fandango Amita Kapoor
- 294字
- 2021-06-10 19:15:29
Executing graphs across compute devices – CPU and GPGPU
A graph can be partitioned into several parts, and each part can be placed and executed on different devices, such as a CPU or GPU. All of the devices that are available for graph execution can be listed with the following command:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
The output is listed as follows (the output for your machine will be different because this will depend on the available compute devices in your specific system):
[name: "/device:CPU:0" device_type: "CPU" memory_limit: 268435456 locality { } incarnation: 12900903776306102093 , name: "/device:GPU:0" device_type: "GPU" memory_limit: 611319808 locality { bus_id: 1 } incarnation: 2202031001192109390 physical_device_desc: "device: 0, name: Quadro P5000, pci bus id: 0000:01:00.0, compute capability: 6.1" ]
The devices in TensorFlow are identified with the string /device:<device_type>:<device_idx>. In the last output, CPU and GPU denote the device type, and 0 denotes the device index.
One thing to note about the last output is that it shows only one CPU, whereas our computer has 8 CPUs. The reason for this is that TensorFlow implicitly distributes the code across the CPU units and thus, by default, CPU:0 denotes all of the CPUs available to TensorFlow. When TensorFlow starts executing graphs, it runs the independent paths within each graph in a separate thread, with each thread running on a separate CPU. We can restrict the number of threads used for this purpose by changing the number of inter_op_parallelism_threads. Similarly, if, within an independent path, an operation is capable of running on multiple threads, TensorFlow will launch that specific operation on multiple threads. The number of threads in this pool can be changed by setting the number of intra_op_parallelism_threads.
- Word 2000、Excel 2000、PowerPoint 2000上機指導與練習
- Mastering Spark for Data Science
- JavaScript實例自學手冊
- Verilog HDL數字系統設計入門與應用實例
- Linux Mint System Administrator’s Beginner's Guide
- CSS全程指南
- 電腦上網直通車
- 大學計算機應用基礎
- 21天學通Visual Basic
- Hands-On Data Warehousing with Azure Data Factory
- 基于ARM9的小型機器人制作
- 嵌入式Linux系統實用開發
- Photoshop CS4數碼照片處理入門、進階與提高
- Eclipse RCP應用系統開發方法與實戰
- 網絡安全原理與應用