TensorRT C++ 序列化serialize / 反序列化deserialize

2023-11-11

序列化Engine

// serialize the engine, then close everything down
const std::string engine_file{ "tensorrt_mnist.trt" };
nvinfer1::IHostMemory* gieModelStream = mEngine->serialize(); // GIE model
fprintf(stdout, "allocate memory size: %d bytes\n", gieModelStream->size());
std::ofstream outfile(engine_file.c_str(), std::ios::out | std::ios::binary);
if (!outfile.is_open()) {
    fprintf(stderr, "fail to open file to write: %s\n", engine_file.c_str());
    return -1;
}
unsigned char* p = (unsigned char*)gieModelStream->data();
outfile.write((char*)p, gieModelStream->size());
outfile.close();

反序列化Engine

// deserialize the engine 
auto runtime = SampleUniquePtr<nvinfer1::IRuntime>(nvinfer1::createInferRuntime(gLogger.getTRTLogger()));
mEngine = std::shared_ptr<nvinfer1::ICudaEngine>(
    runtime->deserializeCudaEngine((const void*)engine_data.get(), size, nullptr),
    samplesCommon::InferDeleter());

注意这里的engine是以智能指针的形式进行定义,官网教程中的反序列化得到的是普通指针,智能指针同sample中的engine全局变量的类型吻合,故使用智能指针。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TensorRT C++ 序列化serialize / 反序列化deserialize 的相关文章

随机推荐

  • 织梦DEDECMS网站后台系统菜单点击没有反应的解决办法(除了核心)

    织梦DEDECMS模板网站后台系统菜单点击没有反应的解决办法 DEDECMS模板 问题说明 织梦系统的后台主页右上角一直是 载入中 而左边的系统菜单 这里指的是切换菜单 点击没有任何反应 只能在 核心 菜单中使用 其他的 模块 生成 采集
  • ENVI:如何进行图像融合?

    目录 有话要说 什么是图像融合 图像融合的方法以及特点 图像融合有什么好处 ENVI实操 1 1 加载需要融合的图像文件 1 2 搜寻工具并点击打开 Gram schmidt方法 1 3 输入低分辨率的多光谱图像文件 1 4 输入高分辨率的
  • msys2使用QT的mingw编译器编译ffmpeg

    使用的时候最好关闭杀毒软件 否则configure和make会很慢 window编译ffmpeg mingw 要在windows搭建一个模拟linux环境 下载安装MSYS2 64 网址 https www msys2 org 我这里安装在
  • linux中git安装步骤,linux配置安装 git 详细教程

    Git是目前流行的非常好用的版本控制工具 这里介绍两种安装方式 1 yum安装 2 从github上下载最新的源码编译后安装 一 环境介绍 系统 linux 镜像 CentOS 7 x86 64 DVD 1804 iso 二 源码安装 1
  • linux中命令du -sm,Linux中的Du命令

    du命令是 disk usage 的缩写 展示文件或目录使用的估计磁盘空间量 这对于查找占用大量磁盘空间的文件和目录很有用 如何使用du命令 du命令的常规语法如下 du OPTIONS FILE 如果给定的FILE是目录 du则将汇总该目
  • hibernate 根据实体类自动生成表

    常规的思路是 设计好数据库 建好表 借助MyEclipse 也可以是其他IDE 自动生成映射 或者自己写映射 早就听说hibernate中可以自动生成表 但是一直没有试验 今天首先介绍其中的一个属性hbm2ddl auto 这个就是这个方案
  • 与老范对谈:ChatGPT等AIGC技术对内容产业的影响和趋势判断

    昨日 我和老范线下面基 用一下午的时间深入探讨了AIGC对内容产业影响的话题 这次聊天收获满满 我迫不及待将这次讨论的内容整理成了文章 但在这之前 请让我先介绍一下老范 老范曾就职于盛大创新院 猎豹移动 是Tiktok的早期投资人 是一名互
  • 手里有几万块能做什么副业?一万块钱搞什么副业

    最近几年来 兼职 副业已经成为大家的刚需了 否则上班的收入已经满足不了开支了 我相信很多人手上都有1万元或者2万元左右甚至更多的闲钱 那么 有闲钱可以干什么 手上有一万元能投资做什么 1 做微商 微商可以说是近些年最热门的职业之一了 你既可
  • IDEA常用配置之代码自动格式化删除无用导入

    文章目录 IDEA常用配置之代码自动格式化删除无用导入 配置步骤 安装google java format 安装Save Actions 自动优化导包选项 检查行分隔符 缩进大小 IDEA常用配置之代码自动格式化删除无用导入 配置步骤 安装
  • Mac安装brew

    终极方法 不需要代理 百分百成功运行 bin zsh c curl fsSL https gitee com cunkai HomebrewCN raw master Homebrew sh 运行结果如下
  • AD 多边形 圆形 快速覆铜

    1 先确认你的板框 如下图 在Keep Out Layer 层 使用shift S键隐藏其他的层 2 全选板框 按T G M 输入法英文状态下 或手动选择 工具 多边形填充 多边形管理器 进入下图状态 选择图上标志的地方 选择板外形 如下图
  • 机器学习 day35(决策树)

    决策树 上图的数据集是一个特征值X采用分类值 即只取几个离散值 同时也是一个二元分类任务 即标签Y只有两个值 上图为之前数据集对应的决策树 最顶层的节点称为根节点 椭圆形节点称为决策节点 矩形节点称为叶子节点 决策树学习算法的工作是 在所有
  • Jetson Nano 40 pin 功能介绍

    40 根引脚主要分成GPIO General Purpose I O 通用功能与SFIO Special Function I O 特定功能 一 SFIO 18根 1 5V 直流电输入 输出 脚位 2 4 在排针脚塑料使用 红色 标识 2根
  • Java SE 16 record 类型说明与使用

    Java SE 16 record 类型说明与使用 作者 Grey 原文地址 博客园 Java SE 16 record 类型说明与使用 CSDN Java SE 16 record 类型说明与使用 说明 record 是 Java SE
  • Python3 爬取PAT个人乙级题所有答案代码

    Python3 爬取PAT个人乙级题所有答案 进入PAT乙级题题目页面 下面是链接 https pintia cn problem sets 994805260223102976 problems type 7 点开两个题目 观察两个链接有
  • 实验吧——认真一点!

    coding utf8 import requests import urllib 设置代理 用于调试过程中抓包分析 proxies http http localhost 9008 https http localhost 9008 he
  • 使用eclipse快速全局替换指定字符串

    1 按住 Ctrl H 调出全局搜索框 选择 File Search 文件搜索栏 2 输入需要搜索的字段和文件类型 点击下方的 Replace 按钮 如果搜索到对应的结果 则会弹出替换界面 此时输入需要替换的字段即可 具体操作如下图所示
  • Vue2 新手上路无处不在的特殊符号,让人傻傻分不清 “:”、“.”、“@”、“#” 、“{{}}“ 、“$“,‘$bus‘,‘$event‘

    背景 刚刚学vue没多久 经常分不清情况什么时候用什么符号 是指令 v bind 的缩写 是修饰符 是指令 v on 的缩写 它用于监听 DOM 事件 是v slot的缩写 插值语法 Vue 实例还暴露了一些有用的实例属性与方法 它们都有前
  • SG-Former:具有进化Token重新分配的自引导Transformer

    文章目录 摘要 1 简介 2 相关研究 3 方法 3 1 概述 3 2 自引导注意力 3 3 混合尺度注意力 3 4 Transformer块 3 5 Transformer架构变体 4 实验 4 1 ImageNet 1K的分类 4 2
  • TensorRT C++ 序列化serialize / 反序列化deserialize

    序列化Engine serialize the engine then close everything down const std string engine file tensorrt mnist trt nvinfer1 IHost