資料介紹
軟件簡介
Forward 是一款騰訊研發(fā)并開源的 GPU 高性能推理加速框架。它提出了一種解析方案,可直接加載主流框架模型(Tensorflow / PyTorch / Keras / ONNX)轉(zhuǎn)換成 TensorRT 推理加速引擎,幫助用戶節(jié)省中間繁雜的模型轉(zhuǎn)換或網(wǎng)絡(luò)構(gòu)建步驟。
相對于直接使用 TensorRT,F(xiàn)orward 更易用以及更容易擴展支持更多模型和算子。目前,F(xiàn)orward 除了覆蓋支持主流的 CV,NLP 及推薦領(lǐng)域的深度學(xué)習(xí)模型外,還支持一些諸如 BERT,F(xiàn)aceSwap,StyleTransfer 這類高級模型。
特性
- 模型性能優(yōu)化高:基于 TensorRT API 開發(fā)網(wǎng)絡(luò)層級的支持,保證對于通用網(wǎng)絡(luò)層級的推理性能優(yōu)化處于最優(yōu)級別;
- 模型支持范圍廣:除了通用的 CV,NLP,及推薦類模型,還支持一些諸如 BERT,F(xiàn)aceSwap,StyleTransfer 這類高級模型;
- 多種推理模式:支持 FLOAT / HALF / INT8 推理模式;
- 接口簡單易用:直接導(dǎo)入已訓(xùn)練好的 Tensorflow(.pb) / PyTorch(.pth) / Keras(.h5) / ONNX(.onnx) 模型文件,隱式轉(zhuǎn)換為高性能的推理 Engine 進(jìn)行推理加速;
- 支持自研擴展:可根據(jù)業(yè)務(wù)模型擴展支持自定義網(wǎng)絡(luò)層級;
- 支持 C++ 和 Python 接口調(diào)用。
快速上手 Forward
環(huán)境依賴
- NVIDIA CUDA >= 10.0, CuDNN >= 7 (推薦 CUDA 10.2 以上)
- TensorRT >= 7.0.0.11 (推薦 TensorRT-7.2.1.6)
- CMake >= 3.12.2
- GCC >= 5.4.0, ld >= 2.26.1
- PyTorch >= 1.7.0
-
TensorFlow >= 1.15.0 (若使用 Linux 操作系統(tǒng),需額外下載?Tensorflow 1.15.0,并將解壓出來的?
.so?文件拷貝至?Forward/source/third_party/tensorflow/lib?目錄下) -
Keras HDF5 (從?
Forward/source/third_party/hdf5?源碼構(gòu)建)
項目構(gòu)建
使用 CMake 進(jìn)行構(gòu)建生成 Makefiles 或者 Visual Studio 項目。根據(jù)使用目的,F(xiàn)orward 可構(gòu)建成適用于不同框架的庫,如 Fwd-Torch、Fwd-Python-Torch、Fwd-Tf、Fwd-Python-Tf、Fwd-Keras、Fwd-Python-Keras、Fwd-Onnx 和 Fwd-Python-Onnx。
以 Linux 平臺構(gòu)建 Fwd-Tf 為例,
步驟一:克隆項目
1 git clone https://github.com/Tencent/Forward.git
步驟二:下載?Tensorflow 1.15.0(僅在 Linux 平臺使用 Tensorflow 框架推理時需要)
1 cd Forward/source/third_party/tensorflow/ 2 wget https://github.com/neargye-forks/tensorflow/releases/download/v1.15.0/libtensorflow-cpu-linux-x86_64-1.15.0.tar.gz 3 tar -xvf libtensorflow-gpu-linux-x86_64-1.15.0.tar.gz
步驟三:創(chuàng)建?build?文件夾
1 cd ~/Forward/ 2 rm -rf build 3 mkdir -p build 4 cd build/
步驟四:使用?cmake?生成構(gòu)建關(guān)系,需指定?TensorRT_ROOT?安裝路徑
1 cmake .. -DTensorRT_ROOT=<path_to_TensorRT> -DENABLE_TENSORFLOW=ON -DENABLE_UNIT_TESTS=ON
步驟五:使用?make?構(gòu)建項目
1 make -j
步驟六:運行?unit_test?驗證項目是否構(gòu)建成功
cd bin/ ./unit_test --gtest_filter=TestTfNodes.* # 出現(xiàn)已下提示表示項目構(gòu)建成 # [ OK ] TestTfNodes.ZeroPadding (347 ms) # [----------] 22 tests from TestTfNodes (17555 ms total) # [----------] Global test environment tear-down # [==========] 22 tests from 1 test case ran. (17555 ms total) # [ PASSED ] 22 tests.
Logging 日志
Forward 使用?easylogging++?作為日志功能,并使用?forward_log.conf?作為日志配置文件。
-
若工作目錄中存在?
forward_log.conf?文件,F(xiàn)orward 將使用該配置文件,更多內(nèi)容可參考?Using-configuration-file; -
若工作目錄中不存在?
forward_log.conf?文件,F(xiàn)orward 將使用默認(rèn)配置,并將日志記錄到?logs/myeasylog.log?。
forward_log.conf?文件配置樣例
* GLOBAL: FORMAT = "[%level] %datetime %fbase(%line): %msg" FILENAME = "Forward.log" ENABLED = true TO_FILE = true TO_STANDARD_OUTPUT = true PERFORMANCE_TRACKING = true MAX_LOG_FILE_SIZE = 2097152 ## 2MB - Comment starts with two hashes (##) LOG_FLUSH_THRESHOLD = 100 ## Flush after every 100 logs
模型和算子支持
當(dāng)前 Forward 的模型與算子支持如下所示,如有需要添加更多支持的,歡迎聯(lián)系添加 Issue 反饋。如需要自行擴展添加支持的,可參考?開源共建:擴展添加支持操作的流程
模型
算子
參考資料
- 深度學(xué)習(xí)邊緣計算綜述論文閱讀筆記
- ChatGPT:AI模型框架研究 9次下載
- 基于AdderNet的深度學(xué)習(xí)推理加速器
- 基于深度學(xué)習(xí)的矩陣乘法加速器設(shè)計方案 3次下載
- 基于深度學(xué)習(xí)的神經(jīng)協(xié)同過濾推薦系統(tǒng) 5次下載
- 基于預(yù)訓(xùn)練模型和長短期記憶網(wǎng)絡(luò)的深度學(xué)習(xí)模型 19次下載
- 3小時學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)課件下載 0次下載
- 基于計算機視覺和NLP的跨媒體問答與推理 8次下載
- 深度模型中的優(yōu)化與學(xué)習(xí)課件下載 3次下載
- 一種基于機器學(xué)習(xí)的流簇大小推理模型 34次下載
- 一種基于框架特征的共指消解方法 7次下載
- 新型基于深度學(xué)習(xí)的目標(biāo)實時跟蹤算法 10次下載
- 深度學(xué)習(xí)入門:基于Python的理論與實現(xiàn)電子書 32次下載
- python機器學(xué)習(xí)和深度學(xué)習(xí)的學(xué)習(xí)書籍資料免費下載 95次下載
- 深度學(xué)習(xí)是什么?了解深度學(xué)習(xí)難嗎?讓你快速了解深度學(xué)習(xí)的視頻講解 16次下載
- TensorFlow與PyTorch深度學(xué)習(xí)框架的比較與選擇 1019次閱讀
- 視覺深度學(xué)習(xí)遷移學(xué)習(xí)訓(xùn)練框架Torchvision介紹 934次閱讀
- 三種主流模型部署框架YOLOv8推理演示 2786次閱讀
- 一文了解Intel?Developer Cloud之DL Workbench深度學(xué)習(xí)工作臺 1273次閱讀
- PyTorch開源深度學(xué)習(xí)框架簡介 4503次閱讀
- 深度學(xué)習(xí)框架你了解多少 2223次閱讀
- 多智體深度強化學(xué)習(xí)研究中首次將概率遞歸推理引入AI的學(xué)習(xí)過程 4925次閱讀
- 有多快?華為云刷新深度學(xué)習(xí)加速紀(jì)錄 5241次閱讀
- PLASTER:一個與深度學(xué)習(xí)性能有關(guān)的框架 3532次閱讀
- 深度學(xué)習(xí)發(fā)展的5個主力框架 4069次閱讀
- 為什么選擇Caffe深度學(xué)習(xí)框架Caffe的安裝和程序概述 4268次閱讀
- 百度發(fā)布Visual DL 使得深度學(xué)習(xí)任務(wù)變得生動形象,實現(xiàn)可視分析 4898次閱讀
- 深度學(xué)習(xí)框架與前端接口介紹 8858次閱讀
- 深度學(xué)習(xí)框架Keras代碼解析 4519次閱讀
- 深度學(xué)習(xí)開源框架,AI從業(yè)者的選擇之路 2414次閱讀
下載排行
本周
- 1PFC電路與BOOST電路設(shè)計實例分享
- 1.83 MB | 12次下載 | 4 積分
- 2世平基于靈動微 SPIN560C 的低壓無刷電機應(yīng)用方案
- 10.93 MB | 11次下載 | 免費
- 3電源測試報告-基于 國民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
- 6.47 MB | 11次下載 | 免費
- 4PWM控制器的控制方法
- 0.39 MB | 3次下載 | 4 積分
- 5電流檢測芯片F(xiàn)P135應(yīng)用說明
- 1.24 MB | 3次下載 | 免費
- 6全面解讀被動式與主動式PFC電路
- 1.27 MB | 1次下載 | 4 積分
- 7HC88L051F4低功耗芯片規(guī)格書
- 4.76 MB | 1次下載 | 免費
- 8CIU32D655x5數(shù)據(jù)手冊
- 2.14 MB | 1次下載 | 免費
本月
- 1常用電子元器件使用手冊
- 2.40 MB | 52次下載 | 免費
- 2高功率密度碳化硅MOSFET軟開關(guān)三相逆變器損耗分析
- 2.27 MB | 33次下載 | 10 積分
- 3PFC電路與BOOST電路設(shè)計實例分享
- 1.83 MB | 12次下載 | 4 積分
- 4世平基于靈動微 SPIN560C 的低壓無刷電機應(yīng)用方案
- 10.93 MB | 11次下載 | 免費
- 5電源測試報告-基于 國民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
- 6.47 MB | 11次下載 | 免費
- 6USB拓展塢PCB圖資料
- 0.57 MB | 11次下載 | 免費
- 7MS1826 HDMI 多功能視頻處理器數(shù)據(jù)手冊
- 4.51 MB | 9次下載 | 免費
- 8HAL9303線性霍爾效應(yīng)傳感器技術(shù)手冊
- 0.70 MB | 9次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935134次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191424次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183352次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81600次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費下載
- 0.02 MB | 73818次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論