- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试加速分割模型(unet-mobilenet-512x512)。我使用 FP16 精度模式将我的 tensorflow 模型转换为 tensorRT。而且速度比我预想的要低。
在优化之前,我在使用 .pb 卡住图进行推理时有 7FPS。在 tensorRT 优化后,我有 14FPS。
这是他们网站上 Jetson NX 的基准测试结果
你可以看到,unet 256x256 的分割速度是 146 FPS。我想,在最坏的情况下,我的 unet512x512 的速度应该慢 4 倍。
这是我使用 TensorRt 优化 tensorflow 保存模型的代码:
import numpy as np
from tensorflow.python.compiler.tensorrt import trt_convert as trt
import tensorflow as tf
params = trt.DEFAULT_TRT_CONVERSION_PARAMS
params = params._replace(
max_workspace_size_bytes=(1<<32))
params = params._replace(precision_mode="FP16")
converter = tf.experimental.tensorrt.Converter(input_saved_model_dir='./model1', conversion_params=params)
converter.convert()
def my_input_fn():
inp1 = np.random.normal(size=(1, 512, 512, 3)).astype(np.float32)
yield [inp1]
converter.build(input_fn=my_input_fn) # Generate corresponding TRT engines
output_saved_model_dir = "trt_graph2"
converter.save(output_saved_model_dir) # Generated engines will be saved.
print("------------------------freezing the graph---------------------")
from tensorflow.python.framework.convert_to_constants import convert_variables_to_constants_v2
saved_model_loaded = tf.saved_model.load(
output_saved_model_dir, tags=[tf.compat.v1.saved_model.SERVING])
graph_func = saved_model_loaded.signatures[
tf.compat.v1.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY]
frozen_func = convert_variables_to_constants_v2(
graph_func)
frozen_func.graph.as_graph_def()
tf.io.write_graph(graph_or_graph_def=frozen_func.graph,
logdir="./",
name="unet_frozen_graphTensorRt.pb",
as_text=False)
我下载了用于 Jetson NX 基准测试 (
https://github.com/NVIDIA-AI-IOT/jetson_benchmarks ) 的存储库,并且 unet256x256 的速度确实是 ~146FPS。但是没有优化模型的管道。
最佳答案
据我所知,您链接到的存储库使用了在后台使用 TensorRT (TRT) 的命令行工具。请注意 TensorRT与“TensorFlow 中的 TensorRT”又名 TensorFlow-TensorRT (TF-TRT) 不同这就是您在代码中使用的内容。 TF-TRT 和 TRT 模型在 Jetson 设备上的运行速度都比常规 TF 模型快,但 TF-TRT 模型仍然比 TRT 模型慢( source 1 , source 2 )。
TRT 的缺点是需要在目标设备上完成到 TRT 的转换,并且成功实现它可能非常困难,因为有各种 TensorFlow 操作 TRT does not support (在这种情况下,您需要编写一个自定义插件或向上帝祈祷互联网上有人已经这样做了。……或者仅将 TensorRT 用于您的模型的一部分并在 TensorFlow 中进行预处理/后处理)。
基本上有两种方法可以将模型从 TensorFlow 模型转换为 TensorRT“引擎”又名“计划文件”,这两种方法都使用中间格式:
tlt-converter
但我不熟悉它。不过,后一个链接确实提到了转换 UNet 模型。
关于tensorflow - Jetson NX 使用 TensorRT 优化 tensorflow 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66087844/
根据 https://elinux.org/Jetson,我目前正在尝试将 Jetson TX1 与 jetson NANO 进行基准测试。 ,它们都具有 maxwell 架构,NANO 有 128
我正在Jetson TK1上开发OpenCV应用程序。我正在使用NVIDIA提供的OpenCV4Tegra软件包。 dpkg -l输出: ii libopencv4tegra
我正在尝试从我的 mac 远程访问 Jetson Nano。到目前为止,我已经完成了以下工作: 我在我的 Mac 上安装了 microsoft Remote Desktop 我通过 Micro-usb
昨天收到了我的 Jetson TK1。将其拆箱并配置 Linux GUI 后,使用连接到其 USB 3.0 端口的鼠标(无绳)重新启动设备会将其带到某种命令行页面,它可能会在其中加载一些文件,然后屏幕
这个问题在这里已经有了答案: QT can't find openCV's libs (2 个答案) 关闭 8 年前。 我有一个程序可以在我的机器上正常编译/运行。我刚拿起一个 Nvidia Jet
我正在使用 gcc arm 交叉编译器 (arm-eabi-g++) 编译应用程序。我想在 jetson tk1 目标上执行代码。当我复制可执行文件并在目标上运行它时。我收到一条错误消息 -bash:
我用最新的 Jetpack (Linux For Tegra R23.2) 刷新了我的 Jetson TX1,并且以下命令完美运行: gst-launch-1.0 nvcamerasrc fpsRan
在我的 Arduino Due 上工作了很长时间之后,我需要一个更好、更强大的原型(prototype)设计平台来用于我 future 的项目。为此,我已经订购了 NVIDIA Jetson Tegr
我不是很熟悉 ARM 处理器的内部细节,但我不明白我的 Nvidia Jetson Nano 开发板上的以下行为。 C 代码示例 ... //main.c #include int main() {
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许在 Stack Overflow 上提出有关专业服务器或网络相关基础设施管理的问题。您可以编辑问
我想在本地网络中为 Jetson Nano 设置一个静态 IP。我试过的: -- 更改路由器上的 DHCP。 -- 使用以下内容编辑/etc/network/interfaces: auto eth0
对不起,如果我的描述冗长乏味,但我想给你最重要的细节来解决我的问题。 最近,我终于买了一个 Jetson Nano 开发工具包,它有 4Gb 的 RAM,为了获得我认为的对象检测的最佳配置,我遵循了
有人在任何 Nvidia Jetson 产品上使用过 Tensorflow Lite 吗?我想使用我的 Jetson Nano 进行推理,并希望通过使用 GPU 的 tf-lite 进行推理。 令人困
我想在NVIDIA Jetson Nano上运行Google AutoML Vision的导出模型。由于很容易,我想使用预构建的容器根据官方Edge containers tutorial进行预测。
我正在设置一个 nvidia jetson nano 来运行 docker 容器。我正在使用我已经在我的 x86_64 Ubuntu 16.04 机器上使用的安装过程,docker 运行顺畅。尽管如此
Linux 4 Tegra随附的OpenCv for Tegra设备是否在下面使用了NPP和OpenVX?还是我必须自己进行此类优化? 对指向证明的链接的任何引用将不胜感激。 最佳答案 您可以查找op
我正在尝试为Python 3 PyTorch创建一个简单的Yocto Python食谱。目标是Yocto从meta-tegra层为NVIDIA Jetson Nano制作的SD卡镜像。没有这些配方,我
The official webpage for the Jetson TK1对于新用户来说相当复杂,我找不到文档/网页/书籍/类(class)来开始研究 Jetson TK1 的 API,重点是 G
我正在使用 Jetson TX2 和 Arduino Uno 尝试通过 USB 串口进行通信,前提是我正在使用 Arduino 与一些激光 ToF 传感器和热电堆进行通信。 Jetson 正在运行 U
我想在 Jetson-nano 上运行 ZoneMinder 作为 IP CAM 服务器,但 Jetson nano 似乎无法处理许多使用 ffmpeg 的摄像头用于解码。 如果我在 ZoneMind
我是一名优秀的程序员,十分优秀!