日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Python api構(gòu)建tensorrt加速模型的步驟詳解

瀏覽:18日期:2022-08-07 08:24:30
目錄一、創(chuàng)建TensorRT有以下幾個步驟:二、Python api和C++ api在實(shí)現(xiàn)網(wǎng)絡(luò)加速有什么區(qū)別?三、構(gòu)建TensorRT加速模型 3.1 加載tensorRT3.2 創(chuàng)建網(wǎng)絡(luò)3.3 ONNX構(gòu)建engine一、創(chuàng)建TensorRT有以下幾個步驟:

1.用TensorRT中network模塊定義網(wǎng)絡(luò)模型2.調(diào)用TensorRT構(gòu)建器從網(wǎng)絡(luò)創(chuàng)建優(yōu)化的運(yùn)行時引擎3.采用序列化和反序列化操作以便在運(yùn)行時快速重建4.將數(shù)據(jù)喂入engine中進(jìn)行推理

二、Python api和C++ api在實(shí)現(xiàn)網(wǎng)絡(luò)加速有什么區(qū)別?

個人看法1.python比c++更容易讀并且已經(jīng)有很多包裝很好的科學(xué)運(yùn)算庫(numpy,scikit等),2.c++是接近硬件的語言,運(yùn)行速度比python快很多很多,因?yàn)閜ython是解釋性語言c++是編譯型語言

三、構(gòu)建TensorRT加速模型 3.1 加載tensorRT

1.import tensorrt as trt2.為tensorrt實(shí)現(xiàn)日志報錯接口方便報錯,在下面的代碼我們只允許警告和錯誤消息才打印,TensorRT中包含一個簡單的日志記錄器Python綁定。

TRT_LOGGER = trt.Logger(trt.Logger.WARNING)

3.2 創(chuàng)建網(wǎng)絡(luò)

簡單來說就是用tensorrt的語言來構(gòu)建模型,如果自己構(gòu)建的話,主要是靈活但是工作量so large,一般還是用tensorrt parser來構(gòu)建(1)Caffe框架的模型可以直接用tensorrt內(nèi)部解釋器構(gòu)建(2)除caffe,TF模型以外其他框架,先轉(zhuǎn)成ONNX通用格式,再用ONNX parser來解析(3)TF可以直接通過tensorrt內(nèi)部的UFF包來構(gòu)建,但是tensorrt uff包中并支持所有算子(4)自己將wts放入自己構(gòu)建的模型中,工作量so large,但是很靈活。

3.3 ONNX構(gòu)建engine

因?yàn)椴┲饔玫腛NNXparser來構(gòu)建engine的,下面就介紹以下ONNX構(gòu)建engine,步驟如下:(1)導(dǎo)入tensorrt

import tensorrt as trt

(2)創(chuàng)建builder,network和相應(yīng)模型的解釋器,這里是onnxparser

EXPLICIT_BATCH = 1 << (int)(trt.NetworkDefinitionCreationFlag.EXPLICIT_BATCH)with builder = trt.Builder(TRT_LOGGER) as builder,builder.create_network(EXPLICIT_BATCH) as network, trt.OnnxParser(network, TRT_LOGGER) as parser:with open(model_path, ’rb’) as model:parser.parse(model.read())

這個代碼的主要意思是,構(gòu)建報錯日志,創(chuàng)建build,network和onnxparser,然后用parser讀取onnx權(quán)重文件。

3.3.1 builder介紹

builder功能之一是搜索cuda內(nèi)核目錄,找到最快的cuda以求獲得最快的實(shí)現(xiàn),因此有必要使用相同的GPU進(jìn)行構(gòu)建(相同的操作,算子進(jìn)行融合,減少IO操作),engine就是在此基礎(chǔ)上運(yùn)行的,builder還可以控制網(wǎng)絡(luò)以什么精度運(yùn)行(FP32,FP16,INT8),還有兩個特別重要的屬性是最大批處理大小和最大工作空間大小。

builder.max_batch_size = max_batch_sizebuilder.max_workspace_size = 1 << 20

3.3.2序列化模型

序列化和反序列化模型的主要是因?yàn)閚etwork和定義創(chuàng)建engine很耗時,因此可以通過序列化一次并在推理時反序列化一次來避免每次應(yīng)用程序重新運(yùn)行時重新構(gòu)建引擎。note:序列化引擎不能跨平臺或TensorRT版本移植。引擎是特定于它們所構(gòu)建的GPU模型(除了平臺和TensorRT版本)代碼如下:

#序列化模型到模型流serialized_engine = engine.serialize()#反序列化模型流去執(zhí)行推理,反序列化需要創(chuàng)建一個運(yùn)行時對象with trt.Runtime(TRT_LOGGER) as runtime:engine = runtime.deserialize_cuda_engine(serialized_engine)#也可以將序列化模型writewith open(“sample.engine”, “wb”) as f:f.write(engine.serialize())#然后再讀出來進(jìn)行反序列化with open(“sample.engine”, “rb”) as f, trt.Runtime(TRT_LOGGER) as runtime:engine = runtime.deserialize_cuda_engine(f.read())

3.3.3執(zhí)行推理過程

note:下面過程的前提是已經(jīng)創(chuàng)建好了engine

# 為輸入和輸出分配一些主機(jī)和設(shè)備緩沖區(qū):#確定尺寸并創(chuàng)建頁面鎖定內(nèi)存緩沖區(qū)h_input = cuda.pagelocked_empty(trt.volume(engine.get_binding_shape(0)),dtype=np.float32)h_output =cuda.pagelocked_empty(trt.volume(engine.get_binding_shape(1)),dtype=np.float32)#為輸入和輸出分配設(shè)備內(nèi)存d_input = cuda.mem_alloc(h_input.nbytes)d_output = cuda.mem_alloc(h_output.nbytes)#創(chuàng)建一個流,在其中復(fù)制輸入/輸出并運(yùn)行推斷stream = cuda.Stream()

# 創(chuàng)建一些空間來存儲中間激活值,因?yàn)閑ngine保存了network定義和訓(xùn)練時的參數(shù),這些都是構(gòu)建的上下文執(zhí)行的。with engine.create_execution_context() as context: # 輸入數(shù)據(jù)傳入GPUcuda.memcpy_htod_async(d_input, h_input, stream) # 執(zhí)行推理. context.execute_async(bindings=[int(d_input), int(d_output)], stream_handle=stream.handle) # 將推理后的預(yù)測結(jié)果從GPU上返回. cuda.memcpy_dtoh_async(h_output, d_output, stream) # 同步流 stream.synchronize() # 返回主機(jī)輸出 return h_output

note:一個engine可以有多個執(zhí)行上下文,允許一組權(quán)值用于多個重疊推理任務(wù)。例如,可以使用一個引擎和一個上下文在并行CUDA流中處理圖像。每個上下文將在與引擎相同的GPU上創(chuàng)建。

到此這篇關(guān)于Python api構(gòu)建tensorrt加速模型的文章就介紹到這了,更多相關(guān)Python api tensorrt加速模型內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品xxx| 激情欧美一区| 国产99久久| 色乱码一区二区三区网站| 国产精品调教| 精品亚洲a∨一区二区三区18| 国产精品久久久久久久久久齐齐 | 成人av动漫在线观看| 国产不卡精品| 中文另类视频| 99在线观看免费视频精品观看| 午夜精品网站| 午夜在线视频观看日韩17c| 亚洲经典在线| 青草久久视频| 国产精品成人一区二区不卡| 日韩国产专区| 欧美 日韩 国产精品免费观看| 欧美日韩在线二区| 国产亚洲福利| 国产精品久久久久9999高清| 加勒比视频一区| 久久精品二区三区| 午夜精品影视国产一区在线麻豆| 欧美在线看片| 欧美亚洲国产激情| 日本成人中文字幕| 日韩欧美网址| 日韩一区二区三免费高清在线观看 | 日韩国产欧美三级| 国产成人久久精品一区二区三区| 亚洲国产影院| 国产日产高清欧美一区二区三区| 狠狠躁少妇一区二区三区| 国产日韩专区| 91看片一区| 国产精品免费精品自在线观看| 久久久精品日韩| 欧美精品观看| 男女男精品视频网| www.51av欧美视频| 日韩精品电影一区亚洲| 麻豆国产精品一区二区三区| 国产亚洲激情| 日韩精品一区二区三区免费观影| 一区二区不卡| 99久精品视频在线观看视频| 国产精品久久国产愉拍| 热久久国产精品| 欧美日韩精品在线一区| 国产一区二区久久久久| 欧美视频精品全部免费观看| 欧美日韩国产高清电影| 精品中文字幕一区二区三区四区| 亚洲免费毛片| 综合亚洲自拍| 亚欧成人精品| 激情综合网址| 在线精品亚洲欧美日韩国产| 麻豆国产91在线播放| 日韩高清成人在线| 日本不卡不码高清免费观看| 亚洲人成网站在线在线观看| 亚洲欧美不卡| 老色鬼久久亚洲一区二区| 在线视频日韩| 视频一区视频二区中文| 久久av在线| 亚州欧美在线| 国产精品亚洲综合久久| 国产精品一卡| 正在播放日韩精品| 国产一区二区三区不卡av| 丝袜美腿诱惑一区二区三区| 亚洲精品极品少妇16p| 男女精品网站| 欧美久久精品| 伊伊综合在线| 欧美日韩激情| 中文字幕日韩欧美精品高清在线| 欧美影院精品| 黑人精品一区| 日韩视频在线一区二区三区 | 三上悠亚国产精品一区二区三区| 97精品视频在线看| 99精品美女| 在线精品观看| 久久丁香四色| 999久久久亚洲| 91精品麻豆| 久久九九电影| 亚洲精品一二三**| 日本欧美国产| 老牛国产精品一区的观看方式| 亚洲精品一区二区在线看| 视频一区日韩精品| 日韩影院二区| 日韩av黄色在线| 欧美日韩一区二区三区视频播放| 中文字幕一区二区三区日韩精品 | 婷婷综合电影| 麻豆精品国产91久久久久久| 另类专区亚洲| 欧美亚洲专区| 亚洲激情欧美| av资源中文在线天堂| 亚洲免费福利一区| 久久久天天操| 麻豆国产精品777777在线| 免费在线观看一区二区三区| 久久免费福利| 日本强好片久久久久久aaa| 亚洲天堂久久| 国产伦理久久久久久妇女| 午夜精品婷婷| 久久一级电影| 国产成人免费| 日本亚洲欧美天堂免费| 日韩一级精品| 伊人久久大香线蕉av超碰演员| 精品国产美女a久久9999| 国产精久久一区二区| 日本欧美韩国一区三区| 一区二区三区四区日韩| 国产精品婷婷| 鲁大师成人一区二区三区| 中文日韩欧美| 亚洲综合精品四区| 99re国产精品| 日韩视频在线一区二区三区| 午夜久久黄色| 国产精品巨作av| 亚洲综合五月| 日韩精品一区二区三区中文字幕| 日韩三级一区| 久久激五月天综合精品| 国产情侣一区在线| 老司机精品在线| 日韩欧美视频专区| 日韩精品欧美| 亚洲激情黄色| 日韩1区2区日韩1区2区| 欧美亚洲免费| 精品一区二区三区中文字幕在线| 国产精品调教| 天堂av在线| 国产精品毛片在线看| 五月天久久网站| 日韩精品一区二区三区中文字幕| 国产精品亚洲人成在99www| 天堂中文av在线资源库| 国产精品社区| 精品视频在线观看网站| 国产一区二区三区自拍| 视频国产精品| 精品久久精品| 久久国产88| 精品一区电影| 男女激情视频一区| 老色鬼精品视频在线观看播放| 韩国三级一区| 日韩国产欧美视频| 久久99精品久久久野外观看| 99视频精品全部免费在线视频| 蜜臀av一区二区在线免费观看| 国产伦一区二区三区| 在线日韩电影| 精品一区不卡| 日韩国产欧美在线视频| 99视频精品视频高清免费| 日本国产亚洲| 亚洲一区二区三区高清不卡| 精品日本视频| 国产欧美日韩一区二区三区在线| 亚洲成人国产| 久久久国产精品入口麻豆| 香蕉久久久久久久av网站| 欧美韩一区二区| 日本不卡不码高清免费观看| 免费av一区二区三区四区| 国产成人精品三级高清久久91| 日韩精品1区2区3区| 国产亚洲永久域名| 视频一区在线视频| 亚洲欧洲高清| 日韩av中文字幕一区二区| 丰满少妇一区| 国产精品一级| 国产日本精品| 97se亚洲| 国产欧美亚洲一区| 欧美日韩一区二区国产| 91九色精品| 亚洲免费激情| 亚洲二区三区不卡| 欧美不卡高清| 尤物网精品视频| 免费在线观看一区二区三区| 视频一区在线播放| 亚洲18在线|