编辑
2025-08-16
记录知识
0

目录

环境准备
总结
参考文档

tensorflow虽然现在不如torch那么流行,但是胜在稳定和早期应用的兼容落地优势,而且nvidia在安装tensorflow上几乎不会存在问题,nvidia提供了tensorflow的预编译二进制,我们可以直接拉取安装即可,本文基于nvidia的预编译二进制来说明tensorflow的安装过程

环境准备

首先我们可以根据nvidia的官网说明进行安装,但是需要提前知道的是,nvidia官网提供的文档通常是过时的,这种情况下我们不能全信官网。
第一步,我们需要安装依赖,如下

$ sudo apt-get update $ sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran

然后安装python的依赖,安装之前,记得切到自己miniconda的环境,如下

# venv

值得注意的是,nvidia官网提供的安装方法,指定了当时的版本,现在的版本肯定需要升级,所以我们需要修正一下,也就是去掉版本号,如下

pip3 install -U future mock keras_preprocessing keras_applications gast protobuf pybind11 cython pkgconfig packaging h5py

一切就绪之后,我们登录nvidia的预发布平台查看tensorflow的二进制,如下

https://developer.download.nvidia.com/compute/redist/jp/v61/tensorflow/

此时直接下载即可,如下

wget https://developer.download.nvidia.com/compute/redist/jp/v61/tensorflow/tensorflow-2.16.1+nv24.08-cp310-cp310-linux_aarch64.whl

下载后安装

pip install tensorflow-2.16.1+nv24.08-cp310-cp310-linux_aarch64.whl

安装后,查看pip的list如下

# pip list Package Version Editable project location ---------------------------- ------------------------- ------------------------- absl-py 2.3.1 astunparse 1.6.3 certifi 2025.8.3 charset-normalizer 3.4.3 cmake 4.1.0 Cython 3.1.3 filelock 3.18.0 flatbuffers 25.2.10 fsspec 2025.7.0 future 0.18.2 gast 0.4.0 google-pasta 0.2.0 grpcio 1.74.0 h5py 3.14.0 idna 3.10 Jinja2 3.1.6 keras 3.11.2 Keras-Applications 1.0.8 Keras-Preprocessing 1.1.2 libclang 18.1.1 Markdown 3.8.2 markdown-it-py 4.0.0 MarkupSafe 3.0.2 mdurl 0.1.2 ml-dtypes 0.3.2 mock 3.0.5 mpmath 1.3.0 namex 0.1.0 networkx 3.4.2 ninja 1.13.0 numpy 1.26.1 opt_einsum 3.4.0 optree 0.17.0 packaging 25.0 pillow 11.3.0 pip 25.1 pkgconfig 1.5.5 protobuf 4.25.8 pybind11 3.0.0 Pygments 2.19.2 requests 2.32.4 rich 14.1.0 setuptools 78.1.1 six 1.17.0 sympy 1.13.1 tensorboard 2.16.2 tensorboard-data-server 0.7.2 tensorflow 2.16.1+nv24.8 tensorflow-io-gcs-filesystem 0.37.1 termcolor 3.1.0 torch 2.5.0a0+872d972e41.nv24.8 torchaudio 2.5.1a0+1661daf /root/github/audio/src torchvision 0.20.1a0+3ac97aa typing_extensions 4.14.1 urllib3 2.5.0 Werkzeug 3.1.3 wheel 0.45.1 wrapt 1.17.3

可以看到此环境安装了tensorflow 2.16.1版本。后续开发基于此版本

安装完成之后简单测试验证一下有效性,如下

import tensorflow as tf from tensorflow.python.client import device_lib print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU'))) print(device_lib.list_local_devices())

运行日志如下

>>> print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU'))) Num GPUs Available: 1 >>> print(device_lib.list_local_devices()) 2025-08-16 12:36:53.123617: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1928] Created device /device:GPU:0 with 3786 MB memory: -> device: 0, name: Orin, pci bus id: 0000:00:00.0, compute capability: 8.7 [name: "/device:CPU:0" device_type: "CPU" memory_limit: 268435456 locality { } incarnation: 3423392063243993720 xla_global_id: -1 , name: "/device:GPU:0" device_type: "GPU" memory_limit: 3970121728 locality { bus_id: 1 links { } } incarnation: 6102036499595040418 physical_device_desc: "device: 0, name: Orin, pci bus id: 0000:00:00.0, compute capability: 8.7" xla_global_id: 416903419 ]

可以看到,正常识别到Orin平台的GPU设备了

总结

到这里,tensorflow的安装完成了,可以发现比安装pytorch轻松很多。

参考文档

https://docs.nvidia.com/deeplearning/frameworks/install-tf-jetson-platform/index.html