44import torch_tensorrt
55from functools import partial
66
7- from typing import Any , Sequence
7+ from typing import Any , Optional , Sequence
88from torch_tensorrt import EngineCapability , Device
99from torch_tensorrt .fx .utils import LowerPrecision
1010
1616 WORKSPACE_SIZE ,
1717 MIN_BLOCK_SIZE ,
1818 PASS_THROUGH_BUILD_FAILURES ,
19+ MAX_AUX_STREAMS ,
20+ VERSION_COMPATIBLE ,
21+ OPTIMIZATION_LEVEL ,
1922 USE_EXPERIMENTAL_RT ,
2023)
2124
@@ -46,6 +49,9 @@ def compile(
4649 torch_executed_ops = [],
4750 torch_executed_modules = [],
4851 pass_through_build_failures = PASS_THROUGH_BUILD_FAILURES ,
52+ max_aux_streams = MAX_AUX_STREAMS ,
53+ version_compatible = VERSION_COMPATIBLE ,
54+ optimization_level = OPTIMIZATION_LEVEL ,
4955 use_experimental_rt = USE_EXPERIMENTAL_RT ,
5056 ** kwargs ,
5157):
@@ -98,6 +104,9 @@ def compile(
98104 min_block_size = min_block_size ,
99105 torch_executed_ops = torch_executed_ops ,
100106 pass_through_build_failures = pass_through_build_failures ,
107+ max_aux_streams = max_aux_streams ,
108+ version_compatible = version_compatible ,
109+ optimization_level = optimization_level ,
101110 use_experimental_rt = use_experimental_rt ,
102111 ** kwargs ,
103112 )
@@ -122,6 +131,9 @@ def create_backend(
122131 min_block_size : int = MIN_BLOCK_SIZE ,
123132 torch_executed_ops : Sequence [str ] = set (),
124133 pass_through_build_failures : bool = PASS_THROUGH_BUILD_FAILURES ,
134+ max_aux_streams : Optional [int ] = MAX_AUX_STREAMS ,
135+ version_compatible : bool = VERSION_COMPATIBLE ,
136+ optimization_level : Optional [int ] = OPTIMIZATION_LEVEL ,
125137 use_experimental_rt : bool = USE_EXPERIMENTAL_RT ,
126138 ** kwargs ,
127139):
@@ -134,6 +146,10 @@ def create_backend(
134146 min_block_size: Minimum number of operators per TRT-Engine Block
135147 torch_executed_ops: Sequence of operations to run in Torch, regardless of converter coverage
136148 pass_through_build_failures: Whether to fail on TRT engine build errors (True) or not (False)
149+ max_aux_streams: Maximum number of allowed auxiliary TRT streams for each engine
150+ version_compatible: Provide version forward-compatibility for engine plan files
151+ optimization_level: Builder optimization 0-5, higher levels imply longer build time,
152+ searching for more optimization options. TRT defaults to 3
137153 use_experimental_rt: Whether to use the new experimental TRTModuleNext for TRT engines
138154 Returns:
139155 Backend for torch.compile
@@ -146,5 +162,8 @@ def create_backend(
146162 min_block_size = min_block_size ,
147163 torch_executed_ops = torch_executed_ops ,
148164 pass_through_build_failures = pass_through_build_failures ,
165+ max_aux_streams = max_aux_streams ,
166+ version_compatible = version_compatible ,
167+ optimization_level = optimization_level ,
149168 use_experimental_rt = use_experimental_rt ,
150169 )
0 commit comments