Struct CompileSpec¶
Struct 文件¶
-
struct CompileSpec¶
Torch-TensorRT TorchScript 編譯的設定資料結構
Public Functions
-
TORCHTRT_API CompileSpec(std::vector<std::vector<int64_t>> fixed_sizes)¶
建構新的 Compile Spec 物件。便利建構函式,可從描述輸入張量大小的向量設定固定的輸入大小。向量中的每個條目代表一個輸入,應按呼叫順序提供。
此建構函式應用於所有輸入大小都是靜態大小,且您可以接受預設輸入 dtype 和格式(FP32 用於 FP32 和 INT8 權重,FP16 用於 FP16 權重,連續)的情況,以提供便利。
- 參數
fixed_sizes –
-
TORCHTRT_API CompileSpec(std::vector<c10::ArrayRef<int64_t>> fixed_sizes)¶
建構新的 Compile Spec 物件。便利建構函式,可從 c10::ArrayRef(tensor.sizes() 的輸出)設定固定的輸入大小,描述輸入張量的大小。向量中的每個條目代表一個輸入,應按呼叫順序提供。
此建構函式應用於所有輸入大小都是靜態大小,且您可以接受預設輸入 dtype 和格式(FP32 用於 FP32 和 INT8 權重,FP16 用於 FP16 權重,連續)的情況,以提供便利。
- 參數
fixed_sizes –
-
TORCHTRT_API CompileSpec(std::vector<Input> inputs)¶
從輸入範圍建構新的 Compile Spec 物件。向量中的每個條目代表一個輸入,應按呼叫順序提供。
使用此建構函式定義具有動態形狀、特定輸入類型或張量格式的輸入
- 參數
inputs –
-
TORCHTRT_API CompileSpec(torch::jit::IValue input_signature)¶
從 IValue 建構新的 Compile Spec 物件,IValue 代表模組的輸入張量巢狀結構。
- 參數
input_signature –
Public Members
-
GraphInputs graph_inputs¶
-
bool disable_tf32 = false¶
防止 Float32 層使用 TF32 資料格式
TF32 透過將輸入四捨五入到 10 位元尾數再相乘來計算內積,但使用 23 位元尾數累加總和。這是 FP32 層的預設行為。
-
bool sparse_weights = false¶
為卷積層和 FC 層的權重啟用稀疏性
-
bool refit = false¶
建構可重新調整的引擎
-
bool debug = false¶
建構可偵錯的引擎
-
bool truncate_long_and_double = false¶
將 long/double 類型截斷為 int/float 類型
-
bool allow_shape_tensors = false¶
允許圖形中存在形狀張量(來自 IShape 層)
-
EngineCapability capability = EngineCapability::kSTANDARD¶
設定引擎的限制(CUDA 安全性)
-
uint64_t num_avg_timing_iters = 1¶
用於選擇核心的平均計時迭代次數
-
uint64_t workspace_size = 0¶
提供給 TensorRT 的最大工作區大小
-
uint64_t dla_sram_size = 1048576¶
DLA 使用的快速軟體管理 RAM,用於在層內進行通訊。
-
uint64_t dla_local_dram_size = 1073741824¶
DLA 使用的主機 RAM,用於跨運算共用中繼張量資料
-
uint64_t dla_global_dram_size = 536870912¶
DLA 使用的主機 RAM,用於儲存權重和中繼資料以供執行
-
nvinfer1::IInt8Calibrator *ptq_calibrator = nullptr¶
用於後訓練量化的每個輸入的校準資料載入器
-
bool require_full_compilation = false¶
要求將整個模組編譯為 TensorRT,而不是可能在 PyTorch 中執行不支援的運算
-
uint64_t min_block_size = 3¶
將子圖編譯為 TensorRT 的最小連續支援運算子數量
-
std::vector<std::string> torch_executed_ops¶
必須在 PyTorch 中執行的 aten 運算子清單。如果此清單不為空,但
require_full_compilation
為 True,則會擲回錯誤
-
std::vector<std::string> torch_executed_modules¶
必須在 PyTorch 中執行的模組清單。如果此清單不為空,但
require_full_compilation
為 True,則會擲回錯誤
-
TORCHTRT_API CompileSpec(std::vector<std::vector<int64_t>> fixed_sizes)¶