| 187 | } |
| 188 | |
| 189 | class BuildOptions : public Options |
| 190 | { |
| 191 | public: |
| 192 | int32_t maxBatch{maxBatchNotProvided}; |
| 193 | double workspace{-1.0}; |
| 194 | double dlaSRAM{-1.0}; |
| 195 | double dlaLocalDRAM{-1.0}; |
| 196 | double dlaGlobalDRAM{-1.0}; |
| 197 | int32_t minTiming{defaultMinTiming}; |
| 198 | int32_t avgTiming{defaultAvgTiming}; |
| 199 | bool tf32{true}; |
| 200 | bool fp16{false}; |
| 201 | bool int8{false}; |
| 202 | bool fp8{false}; |
| 203 | bool directIO{false}; |
| 204 | PrecisionConstraints precisionConstraints{PrecisionConstraints::kNONE}; |
| 205 | LayerPrecisions layerPrecisions; |
| 206 | LayerOutputTypes layerOutputTypes; |
| 207 | LayerDeviceTypes layerDeviceTypes; |
| 208 | bool safe{false}; |
| 209 | bool buildDLAStandalone{false}; |
| 210 | bool allowGPUFallback{false}; |
| 211 | bool consistency{false}; |
| 212 | bool restricted{false}; |
| 213 | bool skipInference{false}; |
| 214 | bool save{false}; |
| 215 | bool load{false}; |
| 216 | bool refittable{false}; |
| 217 | bool heuristic{false}; |
| 218 | bool versionCompatible{false}; |
| 219 | bool nativeInstanceNorm{false}; |
| 220 | bool excludeLeanRuntime{false}; |
| 221 | int32_t builderOptimizationLevel{defaultBuilderOptimizationLevel}; |
| 222 | SparsityFlag sparsity{SparsityFlag::kDISABLE}; |
| 223 | nvinfer1::ProfilingVerbosity profilingVerbosity{nvinfer1::ProfilingVerbosity::kLAYER_NAMES_ONLY}; |
| 224 | std::string engine; |
| 225 | std::string calibration; |
| 226 | using ShapeProfile = std::unordered_map<std::string, ShapeRange>; |
| 227 | ShapeProfile shapes; |
| 228 | ShapeProfile shapesCalib; |
| 229 | std::vector<IOFormat> inputFormats; |
| 230 | std::vector<IOFormat> outputFormats; |
| 231 | nvinfer1::TacticSources enabledTactics{0}; |
| 232 | nvinfer1::TacticSources disabledTactics{0}; |
| 233 | TimingCacheMode timingCacheMode{TimingCacheMode::kLOCAL}; |
| 234 | std::string timingCacheFile{}; |
| 235 | // C++11 does not automatically generate hash function for enum class. |
| 236 | // Use int32_t to support C++11 compilers. |
| 237 | std::unordered_map<int32_t, bool> previewFeatures; |
| 238 | nvinfer1::HardwareCompatibilityLevel hardwareCompatibilityLevel{nvinfer1::HardwareCompatibilityLevel::kNONE}; |
| 239 | std::string tempdir{}; |
| 240 | nvinfer1::TempfileControlFlags tempfileControls{getTempfileControlDefaults()}; |
| 241 | RuntimeMode useRuntime{RuntimeMode::kFULL}; |
| 242 | std::string leanDLLPath{}; |
| 243 | int32_t maxAuxStreams{defaultMaxAuxStreams}; |
| 244 | |
| 245 | void parse(Arguments& arguments) override; |
| 246 |
nothing calls this directly
no test coverage detected