168 static constexpr int32_t kVALUE = 14;
206 mImpl->setName(name);
218 return mImpl->getName();
237 mImpl->setDimensions(dimensions);
251 return mImpl->getDimensions();
287 mImpl->setType(type);
302 return mImpl->getType();
310 return mImpl->isNetworkInput();
318 return mImpl->isNetworkOutput();
340 mImpl->setAllowedFormats(formats);
353 return mImpl->getAllowedFormats();
384 return mImpl->isShapeTensor();
405 return mImpl->isExecutionTensor();
431 mImpl->setDimensionName(index, name);
446 return mImpl->getDimensionName(index);
471 return mLayer->getType();
485 mLayer->setName(name);
495 return mLayer->getName();
503 return mLayer->getNbInputs();
516 return mLayer->getInput(index);
524 return mLayer->getNbOutputs();
534 return mLayer->getOutput(index);
551 return mLayer->setInput(index, tensor);
584 mLayer->setPrecision(dataType);
596 return mLayer->getPrecision();
610 return mLayer->precisionIsSet();
622 mLayer->resetPrecision();
672 mLayer->setOutputType(index, dataType);
687 return mLayer->getOutputType(index);
703 return mLayer->outputTypeIsSet(index);
717 return mLayer->resetOutputType(index);
735 mLayer->setMetadata(metadata);
748 return mLayer->getMetadata();
753 apiv::VLayer* mLayer;
930 static constexpr int32_t kVALUE = 4;
958 mImpl->setNbOutputMaps(nbOutputMaps);
968 return mImpl->getNbOutputMaps();
988 mImpl->setNbGroups(nbGroups);
998 return mImpl->getNbGroups();
1012 mImpl->setKernelWeights(weights);
1022 return mImpl->getKernelWeights();
1037 mImpl->setBiasWeights(weights);
1047 return mImpl->getBiasWeights();
1064 mImpl->setPrePadding(padding);
1074 return mImpl->getPrePadding();
1091 mImpl->setPostPadding(padding);
1101 return mImpl->getPostPadding();
1115 mImpl->setPaddingMode(paddingMode);
1127 return mImpl->getPaddingMode();
1140 mImpl->setKernelSizeNd(kernelSize);
1150 return mImpl->getKernelSizeNd();
1165 mImpl->setStrideNd(stride);
1175 return mImpl->getStrideNd();
1193 mImpl->setPaddingNd(padding);
1205 return mImpl->getPaddingNd();
1219 mImpl->setDilationNd(dilation);
1229 return mImpl->getDilationNd();
1278 mImpl->setActivationType(type);
1288 return mImpl->getActivationType();
1303 mImpl->setAlpha(alpha);
1317 mImpl->setBeta(beta);
1326 return mImpl->getAlpha();
1335 return mImpl->getBeta();
1365 static constexpr int32_t kVALUE = 3;
1392 mImpl->setPoolingType(type);
1402 return mImpl->getPoolingType();
1417 mImpl->setBlendFactor(blendFactor);
1430 return mImpl->getBlendFactor();
1444 mImpl->setAverageCountExcludesPadding(exclusive);
1455 return mImpl->getAverageCountExcludesPadding();
1473 mImpl->setPrePadding(padding);
1483 return mImpl->getPrePadding();
1501 mImpl->setPostPadding(padding);
1511 return mImpl->getPostPadding();
1524 mImpl->setPaddingMode(paddingMode);
1535 return mImpl->getPaddingMode();
1548 mImpl->setWindowSizeNd(windowSize);
1558 return mImpl->getWindowSizeNd();
1573 mImpl->setStrideNd(stride);
1583 return mImpl->getStrideNd();
1602 mImpl->setPaddingNd(padding);
1614 return mImpl->getPaddingNd();
1645 mImpl->setWindowSize(windowSize);
1655 return mImpl->getWindowSize();
1667 mImpl->setAlpha(alpha);
1677 return mImpl->getAlpha();
1689 mImpl->setBeta(beta);
1699 return mImpl->getBeta();
1721 return mImpl->getK();
1787 mImpl->setMode(mode);
1797 return mImpl->getMode();
1807 mImpl->setShift(shift);
1817 return mImpl->getShift();
1827 mImpl->setScale(scale);
1837 return mImpl->getScale();
1847 mImpl->setPower(power);
1857 return mImpl->getPower();
1872 return mImpl->getChannelAxis();
1893 mImpl->setChannelAxis(channelAxis);
1946 mImpl->setAxes(axes);
1956 return mImpl->getAxes();
1992 mImpl->setAxis(axis);
2002 return mImpl->getAxis();
2029 mImpl->setNbOutputMaps(nbOutputMaps);
2039 return mImpl->getNbOutputMaps();
2059 mImpl->setNbGroups(nbGroups);
2069 return mImpl->getNbGroups();
2083 mImpl->setKernelWeights(weights);
2093 return mImpl->getKernelWeights();
2108 mImpl->setBiasWeights(weights);
2118 return mImpl->getBiasWeights();
2135 mImpl->setPrePadding(padding);
2145 return mImpl->getPrePadding();
2162 mImpl->setPostPadding(padding);
2172 return mImpl->getPostPadding();
2186 mImpl->setPaddingMode(paddingMode);
2198 return mImpl->getPaddingMode();
2213 mImpl->setKernelSizeNd(kernelSize);
2223 return mImpl->getKernelSizeNd();
2240 mImpl->setStrideNd(stride);
2250 return mImpl->getStrideNd();
2268 mImpl->setPaddingNd(padding);
2280 return mImpl->getPaddingNd();
2306 mImpl->setDilationNd(dilation);
2316 return mImpl->getDilationNd();
2364 static constexpr int32_t kVALUE = 14;
2401 return mImpl->setOperation(op);
2413 return mImpl->getOperation();
2534 mImpl->setGatherAxis(axis);
2546 return mImpl->getGatherAxis();
2569 mImpl->setNbElementWiseDims(elementWiseDims);
2579 return mImpl->getNbElementWiseDims();
2589 mImpl->setMode(mode);
2599 return mImpl->getMode();
2628 return mImpl->getPlugin();
2655 return mImpl->getPlugin();
2738 mImpl->setOperation(op);
2748 return mImpl->getOperation();
2811 mImpl->setOperation(op);
2821 return mImpl->getOperation();
2831 mImpl->setReduceAxes(reduceAxes);
2841 return mImpl->getReduceAxes();
2851 mImpl->setKeepDimensions(keepDimensions);
2861 return mImpl->getKeepDimensions();
2895 mImpl->setPrePaddingNd(padding);
2907 return mImpl->getPrePaddingNd();
2921 mImpl->setPostPaddingNd(padding);
2933 return mImpl->getPostPaddingNd();
2983 mImpl->setFirstTranspose(permutation);
2995 return mImpl->getFirstTranspose();
3023 mImpl->setReshapeDimensions(dimensions);
3036 return mImpl->getReshapeDimensions();
3083 mImpl->setSecondTranspose(permutation);
3095 return mImpl->getSecondTranspose();
3111 return mImpl->setZeroIsPlaceholder(zeroIsPlaceholder);
3124 return mImpl->getZeroIsPlaceholder();
3235 mImpl->setStart(start);
3250 return mImpl->getStart();
3264 return mImpl->setSize(size);
3279 return mImpl->getSize();
3293 mImpl->setStride(stride);
3308 return mImpl->getStride();
3318 mImpl->setMode(mode);
3328 return mImpl->getMode();
3371 mImpl->setAxes(axes);
3386 return mImpl->getAxes();
3456 mImpl->setOperation(op);
3466 return mImpl->getOperation();
3494 return mImpl->getK();
3504 mImpl->setReduceAxes(reduceAxes);
3514 return mImpl->getReduceAxes();
3545 return mImpl->setIndicesType(type);
3557 return mImpl->getIndicesType();
3643 mImpl->setOperation(index, op);
3655 return mImpl->getOperation(index);
3699 return mImpl->setIndicesType(type);
3711 return mImpl->getIndicesType();
3808 mImpl->setToType(toType);
3819 return mImpl->getToType();
3848 mImpl->setWeights(weights);
3858 return mImpl->getWeights();
3870 mImpl->setDimensions(dimensions);
3882 return mImpl->getDimensions();
3928 static constexpr int32_t kVALUE = 3;
3982 static constexpr int32_t kVALUE = 3;
4012 static constexpr int32_t kVALUE = 2;
4048 static constexpr int32_t kVALUE = 4;
4111 return mImpl->setOutputDimensions(dimensions);
4121 return mImpl->getOutputDimensions();
4149 void setScales(
float const* scales, int32_t nbScales)
noexcept
4151 mImpl->setScales(scales, nbScales);
4168 int32_t
getScales(int32_t size,
float* scales)
const noexcept
4170 return mImpl->getScales(size, scales);
4182 mImpl->setResizeMode(interpolationMode);
4192 return mImpl->getResizeMode();
4227 mImpl->setCoordinateTransformation(coordTransform);
4237 return mImpl->getCoordinateTransformation();
4252 mImpl->setSelectorForSinglePixel(selector);
4262 return mImpl->getSelectorForSinglePixel();
4276 mImpl->setNearestRounding(value);
4286 return mImpl->getNearestRounding();
4308 mImpl->setCubicCoeff(A);
4318 return mImpl->getCubicCoeff();
4331 mImpl->setExcludeOutside(excludeFlag);
4341 return mImpl->getExcludeOutside();
4423 return mBoundary->getLoop();
4428 apiv::VLoopBoundaryLayer* mBoundary;
4446 return mBoundary->getConditional();
4451 apiv::VConditionalBoundaryLayer* mBoundary;
4535 return mImpl->setCondition(condition);
4553 return mImpl->addOutput(trueSubgraphOutput, falseSubgraphOutput);
4565 return mImpl->addInput(input);
4580 mImpl->setName(name);
4590 return mImpl->getName();
4660 return mImpl->getLoopOutput();
4677 mImpl->setAxis(axis);
4685 return mImpl->getAxis();
4734 return mImpl->getTripLimit();
4760 mImpl->setAxis(axis);
4768 return mImpl->getAxis();
4782 mImpl->setReverse(reverse);
4792 return mImpl->getReverse();
4821 return mImpl->addRecurrence(initialValue);
4842 return mImpl->addTripLimit(tensor, limit);
4855 return mImpl->addIterator(tensor, axis, reverse);
4868 return mImpl->addLoopOutput(tensor, outputKind, axis);
4883 mImpl->setName(name);
4893 return mImpl->getName();
4948 mImpl->setMessage(message);
4958 return mImpl->getMessage();
5060 mImpl->setDimensions(dimensions);
5075 return mImpl->getDimensions();
5085 mImpl->setOperation(op);
5095 return mImpl->getOperation();
5114 mImpl->setAlpha(alpha);
5129 return mImpl->getAlpha();
5148 mImpl->setBeta(beta);
5163 return mImpl->getBeta();
5224 mImpl->setAlphaInt64(alpha);
5239 return mImpl->getAlphaInt64();
5258 mImpl->setBetaInt64(beta);
5273 return mImpl->getBetaInt64();
5281 return mImpl->isAlphaBetaInt64();
5298 mImpl->setToType(toType);
5310 return mImpl->getToType();
5405 return mImpl->getAxis();
5416 mImpl->setAxis(axis);
5429 return mImpl->setBlockShape(blockShape);
5440 return mImpl->getBlockShape();
5456 mImpl->setToType(toType);
5468 return mImpl->getToType();
5557 return mImpl->getAxis();
5568 mImpl->setAxis(axis);
5585 return mImpl->setBlockShape(blockShape);
5596 return mImpl->getBlockShape();
5612 mImpl->setToType(toType);
5624 return mImpl->getToType();
5679 mImpl->setToType(toType);
5692 return mImpl->getToType();
5705 mImpl->setScaleType(scaleType);
5718 return mImpl->getScaleType();
5731 mImpl->setAxis(axis);
5741 return mImpl->getAxis();
5754 mImpl->setBlockSize(size);
5764 return mImpl->getBlockSize();
5777 mImpl->setBlockShape(blockShape);
5789 return mImpl->getBlockShape();
5845 return mImpl->setEquation(equation);
5855 return mImpl->getEquation();
5954 mImpl->setMode(mode);
5964 return mImpl->getMode();
5974 mImpl->setAxis(axis);
5982 return mImpl->getAxis();
6026 mImpl->setAxis(axis);
6034 return mImpl->getAxis();
6063 mImpl->setInterpolationMode(mode);
6075 return mImpl->getInterpolationMode();
6085 mImpl->setAlignCorners(alignCorners);
6097 return mImpl->getAlignCorners();
6109 return mImpl->setSampleMode(mode);
6121 return mImpl->getSampleMode();
6219 mImpl->setBoundingBoxFormat(fmt);
6231 return mImpl->getBoundingBoxFormat();
6245 mImpl->setTopKBoxLimit(limit);
6255 return mImpl->getTopKBoxLimit();
6290 return mImpl->setIndicesType(type);
6302 return mImpl->getIndicesType();
6335 mImpl->setBatchAxis(batchAxis);
6345 return mImpl->getBatchAxis();
6358 mImpl->setSequenceAxis(sequenceAxis);
6368 return mImpl->getSequenceAxis();
6406 return mImpl->setEpsilon(eps);
6416 return mImpl->getEpsilon();
6426 return mImpl->setAxes(axesMask);
6436 return mImpl->getAxes();
6457 return mImpl->setNbGroups(nbGroups);
6467 return mImpl->getNbGroups();
6493 return mImpl->setComputePrecision(type);
6503 return mImpl->getComputePrecision();
6513 return mImpl->isV2();
6610 static constexpr int32_t kVALUE = 1;
6656 return mImpl->setOperation(op);
6668 return mImpl->getOperation();
6680 mImpl->setExclusive(exclusive);
6692 return mImpl->getExclusive();
6704 mImpl->setReverse(reverse);
6716 return mImpl->getReverse();
6746 static constexpr int32_t kVALUE = 2;
6768 return mBoundary->getAttention();
6773 apiv::VAttentionBoundaryLayer* mBoundary;
6890 return mImpl->setNormalizationOperation(op);
6902 return mImpl->getNormalizationOperation();
6919 return mImpl->setMask(mask);
6931 return mImpl->getMask();
6944 return mImpl->setCausal(isCausal);
6956 return mImpl->getCausal();
6968 return mImpl->setDecomposable(decomposable);
6981 return mImpl->getDecomposable();
7000 return mImpl->setInput(index, input);
7009 return mImpl->getNbInputs();
7021 return mImpl->getInput(index);
7029 return mImpl->getNbOutputs();
7041 return mImpl->getOutput(index);
7058 return mImpl->setName(name);
7070 return mImpl->getName();
7086 return mImpl->setNormalizationQuantizeScale(tensor);
7097 return mImpl->getNormalizationQuantizeScale();
7110 return mImpl->setNormalizationQuantizeToType(type);
7122 return mImpl->getNormalizationQuantizeToType();
7142 return mImpl->setMetadata(metadata);
7155 return mImpl->getMetadata();
7180 mImpl->setInterleaved(interleaved);
7191 return mImpl->getInterleaved();
7202 return mImpl->setRotaryEmbeddingDim(rotaryEmbeddingDim);
7213 return mImpl->getRotaryEmbeddingDim();
7258 static constexpr int32_t kVALUE = 1;
7308 return mImpl->setCacheMode(cacheMode);
7318 return mImpl->getCacheMode();
7385 return mImpl->addInput(name, type, dimensions);
7399 mImpl->markOutput(tensor);
7417 return mImpl->markDebug(tensor);
7433 return mImpl->unmarkDebug(tensor);
7443 return mImpl->isDebugTensor(tensor);
7465 return mImpl->markUnfusedTensorsAsDebugTensors();
7479 return mImpl->unmarkUnfusedTensorsAsDebugTensors();
7499 return mImpl->addActivation(input, type);
7518 return mImpl->addLRN(input, window, alpha, beta, k);
7544 return mImpl->addScale(input, mode, shift, scale, power);
7557 return mImpl->addSoftMax(input);
7574 return mImpl->addConcatenation(inputs, nbInputs);
7601 return mImpl->addElementWise(input1, input2, op);
7623 return mImpl->addUnary(input, operation);
7637 return mImpl->addShuffle(input);
7654 return mImpl->addOneHot(indices, values, depth, axis);
7666 return mImpl->getNbLayers();
7680 return mImpl->getLayer(index);
7692 return mImpl->getNbInputs();
7708 return mImpl->getInput(index);
7722 return mImpl->getNbOutputs();
7738 return mImpl->getOutput(index);
7765 return mImpl->addReduce(input, operation, reduceAxes, keepDimensions);
7800 return mImpl->addTopK(input, op, k, reduceAxes);
7833 return mImpl->addTopKV2(input, op, k, reduceAxes, indicesType);
7849 return mImpl->addGather(data, indices, axis);
7865 return mImpl->addGatherV2(data, indices, mode);
7884 return mImpl->addRaggedSoftMax(input, bounds);
7906 return mImpl->addMatrixMultiply(input0, op0, input1, op1);
7924 return mImpl->addNonZero(input);
7940 return mImpl->addNonZeroV2(input, indicesType);
7964 return mImpl->addConstant(dimensions, weights);
7978 return mImpl->addIdentity(input);
7993 return mImpl->addCast(input, toType);
8008 mImpl->removeTensor(tensor);
8020 mImpl->unmarkOutput(tensor);
8039 return mImpl->addSlice(input, start, size, stride);
8063 mImpl->setName(name);
8077 return mImpl->getName();
8093 return mImpl->addShape(input);
8103 return mImpl->getFlags();
8115 return mImpl->getFlag(networkDefinitionCreationFlag);
8132 return mImpl->markOutputForShapes(tensor);
8144 return mImpl->unmarkOutputForShapes(tensor);
8162 return mImpl->addParametricReLU(input, slope);
8185 return mImpl->addConvolutionNd(input, nbOutputMaps, kernelSize, kernelWeights, biasWeights);
8204 return mImpl->addPoolingNd(input, type, windowSize);
8227 return mImpl->addDeconvolutionNd(input, nbOutputMaps, kernelSize, kernelWeights, biasWeights);
8264 return mImpl->addScaleNd(input, mode, shift, scale, power, channelAxis);
8280 return mImpl->addResize(input);
8294 return mImpl->addLoop();
8309 return mImpl->addIfConditional();
8348 return mImpl->addSelect(condition, thenInput, elseInput);
8365 return mImpl->addAssertion(condition, message);
8391 return mImpl->addFillV2(dimensions, op, outputType);
8407 return mImpl->addPaddingNd(input, prePadding, postPadding);
8431 return mImpl->setWeightsName(weights, name);
8450 mImpl->setErrorRecorder(recorder);
8465 return mImpl->getErrorRecorder();
8488 return mImpl->addDequantizeV2(input, scale, outputType);
8508 return mImpl->addScatter(data, indices, updates, mode);
8532 return mImpl->addQuantizeV2(input, scale, outputType);
8560 return mImpl->addDynamicQuantize(input, axis, blockSize, outputType, scaleType);
8584 return mImpl->addDynamicQuantizeV2(input, blockShape, outputType, scaleType);
8599 return mImpl->addEinsum(inputs, nbInputs, equation);
8617 return mImpl->addGridSample(input, grid);
8639 return mImpl->addNMS(boxes, scores, maxOutputBoxesPerClass);
8659 return mImpl->addNMSV2(boxes, scores, maxOutputBoxesPerClass, indicesType);
8676 return mImpl->addReverseSequence(input, sequenceLens);
8708 return mImpl->addNormalization(input, scale, bias, axesMask);
8730 return mImpl->addCumulative(input, axis, operation, exclusive, reverse);
8758 return mImpl->addAttention(query, key, value, normOp, causal);
8782 return mImpl->addRotaryEmbedding(input, cosCache, sinCache, interleaved, rotaryEmbeddingDim);
8817 return mImpl->addKVCacheUpdate(cache, update, writeIndices, cacheMode);
8828 return mImpl->getBuilder();
8841 return mImpl->markWeightsRefittable(name);
8853 return mImpl->unmarkWeightsRefittable(name);
8866 return mImpl->areWeightsMarkedRefittable(name);
8885 return mImpl->addSqueeze(input, axes);
8906 return mImpl->addUnsqueeze(input, axes);
8932 return mImpl->addNormalizationV2(input, scale, bias, axesMask);
8979 static constexpr int32_t kVALUE = 2;
9174#if ENABLE_FEATURE_DISABLE_RUNTIME_ALLOCATION
9181 kREQUIRE_USER_ALLOCATION = 29,
9194#if ENABLE_FEATURE_DISABLE_RUNTIME_ALLOCATION
9238 static constexpr uint64_t kINVALID_TACTIC_HASH = UINT64_MAX;
9273 return mImpl->serialize();
9297 return mImpl->combine(inputCache, ignoreMismatch);
9307 return mImpl->reset();
9324 int64_t
queryKeys(TimingCacheKey* keyBuffer, int64_t capacity)
const noexcept
9326 return mImpl->queryKeys(keyBuffer, capacity);
9341 TimingCacheValue
query(TimingCacheKey
const& key)
const noexcept
9343 return mImpl->query(key);
9363 bool update(TimingCacheKey
const& key, TimingCacheValue
const& value)
noexcept
9365 return mImpl->update(key, value);
9486 static constexpr int32_t kVALUE = 3;
9538 static constexpr int32_t kVALUE = 3;
9600 static constexpr int32_t kVALUE = 4;
9639 virtual void phaseStart(
char const* phaseName,
char const* parentPhase, int32_t nbSteps)
noexcept = 0;
9653 virtual bool stepComplete(
char const* phaseName, int32_t step)
noexcept = 0;
9712 virtual
void setAvgTimingIterations(int32_t avgTiming) noexcept
9714 mImpl->setAvgTimingIterations(avgTiming);
9726 return mImpl->getAvgTimingIterations();
9739 mImpl->setEngineCapability(capability);
9751 return mImpl->getEngineCapability();
9768 mImpl->setFlags(builderFlags);
9780 return mImpl->getFlags();
9792 mImpl->clearFlag(builderFlag);
9804 mImpl->setFlag(builderFlag);
9816 return mImpl->getFlag(builderFlag);
9833 mImpl->setDeviceType(layer, deviceType);
9843 return mImpl->getDeviceType(layer);
9855 return mImpl->isDeviceTypeSet(layer);
9865 mImpl->resetDeviceType(layer);
9875 return mImpl->canRunOnDLA(layer);
9891 mImpl->setDLACore(dlaCore);
9901 return mImpl->getDLACore();
9912 mImpl->setDefaultDeviceType(deviceType);
9922 return mImpl->getDefaultDeviceType();
9944 return mImpl->setProfileStream(stream);
9956 return mImpl->getProfileStream();
9973 return mImpl->addOptimizationProfile(profile);
9986 return mImpl->getNbOptimizationProfiles();
9998 mImpl->setProfilingVerbosity(verbosity);
10011 return mImpl->getProfilingVerbosity();
10033 return mImpl->setTacticSources(tacticSources);
10048 return mImpl->getTacticSources();
10070 return mImpl->createTimingCache(blob, size);
10095 return mImpl->setTimingCache(cache, ignoreMismatch);
10107 return mImpl->getTimingCache();
10139 mImpl->setMemoryPoolLimit(pool, poolSize);
10158 return mImpl->getMemoryPoolLimit(pool);
10176 mImpl->setPreviewFeature(feature, enable);
10190 return mImpl->getPreviewFeature(feature);
10223 mImpl->setBuilderOptimizationLevel(level);
10235 return mImpl->getBuilderOptimizationLevel();
10252 mImpl->setHardwareCompatibilityLevel(hardwareCompatibilityLevel);
10265 return mImpl->getHardwareCompatibilityLevel();
10278 mImpl->setPluginsToSerialize(paths, nbPaths);
10291 return mImpl->getPluginToSerialize(index);
10301 return mImpl->getNbPluginsToSerialize();
10330 mImpl->setMaxAuxStreams(nbStreams);
10340 return mImpl->getMaxAuxStreams();
10356 return mImpl->setProgressMonitor(monitor);
10366 return mImpl->getProgressMonitor();
10382 mImpl->setRuntimePlatform(runtimePlatform);
10394 return mImpl->getRuntimePlatform();
10406 mImpl->setMaxNbTactics(maxNbTactics);
10418 return mImpl->getMaxNbTactics();
10434 return mImpl->setTilingOptimizationLevel(level);
10446 return mImpl->getTilingOptimizationLevel();
10462 return mImpl->setL2LimitForTiling(size);
10474 return mImpl->getL2LimitForTiling();
10493 return mImpl->setNbComputeCapabilities(maxNbComputeCapabilities);
10505 return mImpl->getNbComputeCapabilities();
10523 return mImpl->setComputeCapability(computeCapability, index);
10537 return mImpl->getComputeCapability(index);
10605 int32_t getMaxDLABatchSize() const noexcept
10607 return mImpl->getMaxDLABatchSize();
10615 return mImpl->getNbDLACores();
10633 mImpl->setGpuAllocator(allocator);
10647 return mImpl->createBuilderConfig();
10673 return mImpl->createNetworkV2(flags);
10688 return mImpl->createOptimizationProfile();
10707 mImpl->setErrorRecorder(recorder);
10722 return mImpl->getErrorRecorder();
10749 return mImpl->buildSerializedNetwork(network, config);
10771 return mImpl->buildSerializedNetworkToStream(network, config, writer);
10794 return mImpl->isNetworkSupported(network, config);
10804 return mImpl->getLogger();
10820 return mImpl->setMaxThreads(maxThreads);
10834 return mImpl->getMaxThreads();
10844 return mImpl->getPluginRegistry();
10857extern "C" TENSORRTAPI void* createInferBuilder_INTERNAL(
void* logger, int32_t version)
noexcept;
#define TENSORRTAPI
Definition: NvInferRuntimeBase.h:69
#define NV_TENSORRT_VERSION
Definition: NvInferRuntimeBase.h:101
#define TRT_NODISCARD
A stand-in for [[nodiscard]] and [[nodiscard(REASON)]] that works with older compilers.
Definition: NvInferRuntimeBase.h:57
#define TRT_DEPRECATED
Definition: NvInferRuntimeBase.h:42
#define TRT_DEPRECATED_ENUM
Definition: NvInferRuntimeBase.h:43
Definition: NvInferRuntimeBase.h:218
static constexpr int32_t MAX_DIMS
The maximum rank (number of dimensions) supported for a tensor.
Definition: NvInferRuntimeBase.h:221
An Activation layer in a network definition.
Definition: NvInfer.h:1267
void setBeta(float beta) noexcept
Set the beta parameter (must be finite).
Definition: NvInfer.h:1315
void setActivationType(ActivationType type) noexcept
Set the type of activation to be performed.
Definition: NvInfer.h:1276
ActivationType getActivationType() const noexcept
Get the type of activation to be performed.
Definition: NvInfer.h:1286
float getAlpha() const noexcept
Get the alpha parameter.
Definition: NvInfer.h:1324
virtual ~IActivationLayer() noexcept=default
float getBeta() const noexcept
Get the beta parameter.
Definition: NvInfer.h:1333
void setAlpha(float alpha) noexcept
Set the alpha parameter (must be finite).
Definition: NvInfer.h:1301
An assertion layer in a network.
Definition: NvInfer.h:4936
void setMessage(char const *message) noexcept
Set the message to print if the assertion fails.
Definition: NvInfer.h:4946
char const * getMessage() const noexcept
Return the assertion message.
Definition: NvInfer.h:4956
virtual ~IAssertionLayer() noexcept=default
This is a base class for Attention boundary layers.
Definition: NvInfer.h:6761
IAttention * getAttention() const noexcept
Get a pointer to the IAttention associated with this boundary layer.
Definition: NvInfer.h:6766
virtual ~IAttentionBoundaryLayer() noexcept=default
Helper for constructing an attention that consumes query, key and value tensors.
Definition: NvInfer.h:6879
ITensor * getMask() noexcept
Get the optional mask in attention.
Definition: NvInfer.h:6929
bool setMetadata(char const *metadata) noexcept
Set the metadata for IAttention.
Definition: NvInfer.h:7140
bool setDecomposable(bool decomposable) noexcept
Set whether the attention can be decomposed to use multiple kernels if no fused kernel support found.
Definition: NvInfer.h:6966
bool setName(char const *name) noexcept
Set the name of the attention.
Definition: NvInfer.h:7056
bool getDecomposable() const noexcept
Get whether the attention can be decomposed to use multiple kernels if no fused kernel support found.
Definition: NvInfer.h:6979
ITensor * getInput(int32_t index) const noexcept
Get the IAttention input corresponding to the given index.
Definition: NvInfer.h:7019
ITensor * getOutput(int32_t index) const noexcept
Get the IAttention output corresponding to the given index. IAttention has only one output.
Definition: NvInfer.h:7039
int32_t getNbOutputs() const noexcept
Get the number of outputs of a layer. IAttention has one output.
Definition: NvInfer.h:7027
int32_t getNbInputs() const noexcept
Get the number of inputs of IAttention. IAttention has three inputs.
Definition: NvInfer.h:7007
bool setCausal(bool isCausal) noexcept
Set whether the attention will run a causal inference. Cannot be used together with setMask().
Definition: NvInfer.h:6942
bool setNormalizationOperation(AttentionNormalizationOp op) noexcept
Set the normalization operation for the attention.
Definition: NvInfer.h:6888
char const * getName() const noexcept
Return the name of the attention.
Definition: NvInfer.h:7068
bool setNormalizationQuantizeToType(DataType type) noexcept
Set the datatype the attention normalization is quantized to.
Definition: NvInfer.h:7108
AttentionNormalizationOp getNormalizationOperation() const noexcept
Get the normalization operation for the attention.
Definition: NvInfer.h:6900
bool setNormalizationQuantizeScale(ITensor &tensor) noexcept
Set the quantization scale for the attention normalization output.
Definition: NvInfer.h:7084
char const * getMetadata() const noexcept
Get the metadata of IAttention.
Definition: NvInfer.h:7153
DataType getNormalizationQuantizeToType() const noexcept
Get the datatype the attention normalization is quantized to.
Definition: NvInfer.h:7120
ITensor * getNormalizationQuantizeScale() const noexcept
Get the quantization scale for the attention normalization output.
Definition: NvInfer.h:7095
bool setInput(int32_t index, ITensor &input) noexcept
Append or replace an input of this layer with a specific tensor.
Definition: NvInfer.h:6998
bool setMask(ITensor &mask) noexcept
Set whether a mask will be used for the normalization operation.
Definition: NvInfer.h:6917
bool getCausal() const noexcept
Get whether the attention will run a causal inference.
Definition: NvInfer.h:6954
apiv::VAttention * mImpl
Definition: NvInfer.h:7160
virtual ~IAttention() noexcept=default
This layer represents an output of an IAttention.
Definition: NvInfer.h:6822
virtual ~IAttentionOutputLayer() noexcept=default
Holds properties for configuring a builder to produce an engine.
Definition: NvInfer.h:9700
void setMemoryPoolLimit(MemoryPoolType pool, std::size_t poolSize) noexcept
Set the memory size for the memory pool.
Definition: NvInfer.h:10137
bool setComputeCapability(ComputeCapability computeCapability, int32_t index) noexcept
Set one compute capability for runtime execution.
Definition: NvInfer.h:10521
bool setNbComputeCapabilities(int32_t maxNbComputeCapabilities) noexcept
Set the number of compute capabilities.
Definition: NvInfer.h:10491
TRT_DEPRECATED bool setTimingCache(ITimingCache const &cache, bool ignoreMismatch) noexcept
Attach a timing cache to IBuilderConfig.
Definition: NvInfer.h:10093
void setPreviewFeature(PreviewFeature feature, bool enable) noexcept
Enable or disable a specific preview feature.
Definition: NvInfer.h:10174
bool getPreviewFeature(PreviewFeature feature) const noexcept
Get status of preview feature.
Definition: NvInfer.h:10188
int32_t getBuilderOptimizationLevel() noexcept
Get builder optimization level.
Definition: NvInfer.h:10233
bool setTacticSources(TacticSources tacticSources) noexcept
Set tactic sources.
Definition: NvInfer.h:10031
void setPluginsToSerialize(char const *const *paths, int32_t nbPaths) noexcept
Set the plugin libraries to be serialized with version-compatible engines.
Definition: NvInfer.h:10276
bool setTilingOptimizationLevel(TilingOptimizationLevel level) noexcept
Set the Tiling optimization level.
Definition: NvInfer.h:10432
bool setL2LimitForTiling(int64_t size) noexcept
Set the L2 cache usage limit for Tiling optimization.
Definition: NvInfer.h:10460
std::size_t getMemoryPoolLimit(MemoryPoolType pool) const noexcept
Get the memory size limit of the memory pool.
Definition: NvInfer.h:10156
int32_t getDLACore() const noexcept
Get the DLA core that the engine executes on.
Definition: NvInfer.h:9899
int32_t getNbPluginsToSerialize() const noexcept
Get the number of plugin library paths to be serialized with version-compatible engines.
Definition: NvInfer.h:10299
void setDeviceType(ILayer const *layer, DeviceType deviceType) noexcept
Set the device that this layer must execute on.
Definition: NvInfer.h:9831
void setEngineCapability(EngineCapability capability) noexcept
Configure the builder to target specified EngineCapability flow.
Definition: NvInfer.h:9737
int32_t getMaxAuxStreams() const noexcept
Get the maximum number of auxiliary streams that TRT is allowed to use.
Definition: NvInfer.h:10338
bool getFlag(BuilderFlag builderFlag) const noexcept
Returns true if the build mode flag is set.
Definition: NvInfer.h:9814
void setMaxNbTactics(int32_t maxNbTactics) noexcept
Set the maximum number of tactics to time when there is a choice of tactics.
Definition: NvInfer.h:10404
int64_t getL2LimitForTiling() const noexcept
Get the L2 cache usage limit for tiling optimization.
Definition: NvInfer.h:10472
void setProgressMonitor(IProgressMonitor *monitor) noexcept
Sets the progress monitor for building a network.
Definition: NvInfer.h:10354
void setProfilingVerbosity(ProfilingVerbosity verbosity) noexcept
Set verbosity level of layer information exposed in NVTX annotations and IEngineInspector.
Definition: NvInfer.h:9996
int32_t getNbOptimizationProfiles() const noexcept
Get number of optimization profiles.
Definition: NvInfer.h:9984
void reset() noexcept
Resets the builder configuration to defaults.
Definition: NvInfer.h:9930
char const * getPluginToSerialize(int32_t index) const noexcept
Get the plugin library path to be serialized with version-compatible engines.
Definition: NvInfer.h:10289
EngineCapability getEngineCapability() const noexcept
Query EngineCapability flow configured for the builder.
Definition: NvInfer.h:9749
RuntimePlatform getRuntimePlatform() const noexcept
Get the target platform for runtime execution.
Definition: NvInfer.h:10392
DeviceType getDefaultDeviceType() const noexcept
Get the default DeviceType which was set by setDefaultDeviceType.
Definition: NvInfer.h:9920
void setRuntimePlatform(RuntimePlatform runtimePlatform) noexcept
Set the target platform for runtime execution.
Definition: NvInfer.h:10380
int32_t getMaxNbTactics() const noexcept
Query the maximum number of tactics timed when there is a choice.
Definition: NvInfer.h:10416
BuilderFlags getFlags() const noexcept
Get the build mode flags for this builder config. Defaults to 0.
Definition: NvInfer.h:9778
void setFlags(BuilderFlags builderFlags) noexcept
Set the build mode flags to turn on builder options for this network.
Definition: NvInfer.h:9766
TacticSources getTacticSources() const noexcept
Get tactic sources.
Definition: NvInfer.h:10046
void resetDeviceType(ILayer const *layer) noexcept
reset the DeviceType for this layer
Definition: NvInfer.h:9863
ComputeCapability getComputeCapability(int32_t index) const noexcept
Get one compute capability for runtime execution.
Definition: NvInfer.h:10535
void setDLACore(int32_t dlaCore) noexcept
Sets the DLA core used by the network. Defaults to -1.
Definition: NvInfer.h:9889
HardwareCompatibilityLevel getHardwareCompatibilityLevel() const noexcept
Get the hardware compatibility level.
Definition: NvInfer.h:10263
int32_t getNbComputeCapabilities() const noexcept
Get the number of compute capabilities.
Definition: NvInfer.h:10503
void clearFlag(BuilderFlag builderFlag) noexcept
clear a single build mode flag.
Definition: NvInfer.h:9790
int32_t addOptimizationProfile(IOptimizationProfile const *profile) noexcept
Add an optimization profile.
Definition: NvInfer.h:9971
IProgressMonitor * getProgressMonitor() const noexcept
Definition: NvInfer.h:10364
apiv::VBuilderConfig * mImpl
Definition: NvInfer.h:10541
int32_t getAvgTimingIterations() const noexcept
Query the number of averaging iterations.
Definition: NvInfer.h:9724
void setDefaultDeviceType(DeviceType deviceType) noexcept
Sets the default DeviceType to be used by the builder. It ensures that all the layers that can run on...
Definition: NvInfer.h:9910
void setFlag(BuilderFlag builderFlag) noexcept
Set a single build mode flag.
Definition: NvInfer.h:9802
TRT_DEPRECATED nvinfer1::ITimingCache * createTimingCache(void const *blob, std::size_t size) const noexcept
Create timing cache.
Definition: NvInfer.h:10068
virtual ~IBuilderConfig() noexcept=default
DeviceType getDeviceType(ILayer const *layer) const noexcept
Get the device that this layer executes on.
Definition: NvInfer.h:9841
bool canRunOnDLA(ILayer const *layer) const noexcept
Checks if a layer can run on DLA.
Definition: NvInfer.h:9873
cudaStream_t getProfileStream() const noexcept
Get the CUDA stream that is used to profile this network.
Definition: NvInfer.h:9954
void setHardwareCompatibilityLevel(HardwareCompatibilityLevel hardwareCompatibilityLevel) noexcept
Set the hardware compatibility level.
Definition: NvInfer.h:10250
TilingOptimizationLevel getTilingOptimizationLevel() const noexcept
Get the Tiling optimization level.
Definition: NvInfer.h:10444
void setMaxAuxStreams(int32_t nbStreams) noexcept
Set the maximum number of auxiliary streams that TRT is allowed to use.
Definition: NvInfer.h:10328
ProfilingVerbosity getProfilingVerbosity() const noexcept
Get verbosity level of layer information exposed in NVTX annotations and IEngineInspector.
Definition: NvInfer.h:10009
TRT_DEPRECATED nvinfer1::ITimingCache const * getTimingCache() const noexcept
Get the pointer to the timing cache from current IBuilderConfig.
Definition: NvInfer.h:10105
bool isDeviceTypeSet(ILayer const *layer) const noexcept
whether the DeviceType has been explicitly set for this layer
Definition: NvInfer.h:9853
void setBuilderOptimizationLevel(int32_t level) noexcept
Set builder optimization level.
Definition: NvInfer.h:10221
void setProfileStream(const cudaStream_t stream) noexcept
Set the CUDA stream that is used to profile this network.
Definition: NvInfer.h:9942
Builds an engine from a network definition.
Definition: NvInfer.h:10594
int32_t getNbDLACores() const noexcept
Return the number of DLA engines available to this builder.
Definition: NvInfer.h:10613
IErrorRecorder * getErrorRecorder() const noexcept
get the ErrorRecorder assigned to this interface.
Definition: NvInfer.h:10720
apiv::VBuilder * mImpl
Definition: NvInfer.h:10848
ILogger * getLogger() const noexcept
get the logger with which the builder was created
Definition: NvInfer.h:10802
bool isNetworkSupported(INetworkDefinition const &network, IBuilderConfig const &config) const noexcept
Checks that a network is within the scope of the IBuilderConfig settings.
Definition: NvInfer.h:10792
int32_t getMaxThreads() const noexcept
get the maximum number of threads that can be used by the builder.
Definition: NvInfer.h:10832
IPluginRegistry & getPluginRegistry() noexcept
get the local plugin registry that can be used by the builder.
Definition: NvInfer.h:10842
nvinfer1::IOptimizationProfile * createOptimizationProfile() noexcept
Create a new optimization profile.
Definition: NvInfer.h:10686
void setGpuAllocator(IGpuAllocator *allocator) noexcept
Set the GPU allocator.
Definition: NvInfer.h:10631
nvinfer1::INetworkDefinition * createNetworkV2(NetworkDefinitionCreationFlags flags) noexcept
Create a network definition object.
Definition: NvInfer.h:10671
nvinfer1::IBuilderConfig * createBuilderConfig() noexcept
Create a builder configuration object.
Definition: NvInfer.h:10645
void reset() noexcept
Resets the builder state to default values.
Definition: NvInfer.h:10728
bool setMaxThreads(int32_t maxThreads) noexcept
Set the maximum number of threads.
Definition: NvInfer.h:10818
void setErrorRecorder(IErrorRecorder *recorder) noexcept
Set the ErrorRecorder for this interface.
Definition: NvInfer.h:10705
nvinfer1::IHostMemory * buildSerializedNetwork(INetworkDefinition &network, IBuilderConfig &config) noexcept
Builds and serializes a network for the given INetworkDefinition and IBuilderConfig.
Definition: NvInfer.h:10747
virtual ~IBuilder() noexcept=default
bool buildSerializedNetworkToStream(INetworkDefinition &network, IBuilderConfig &config, IStreamWriter &writer) noexcept
Builds and serializes a network into stream for the given INetworkDefinition and IBuilderConfig.
Definition: NvInfer.h:10768
A cast layer in a network.
Definition: NvInfer.h:3797
virtual ~ICastLayer() noexcept=default
apiv::VCastLayer * mImpl
Definition: NvInfer.h:3823
DataType getToType() const noexcept
Return cast layer output type.
Definition: NvInfer.h:3817
void setToType(DataType toType) noexcept
Set cast layer output type.
Definition: NvInfer.h:3806
A concatenation layer in a network definition.
Definition: NvInfer.h:1977
void setAxis(int32_t axis) noexcept
Set the axis along which concatenation occurs.
Definition: NvInfer.h:1990
int32_t getAxis() const noexcept
Get the axis along which concatenation occurs.
Definition: NvInfer.h:2000
virtual ~IConcatenationLayer() noexcept=default
This layer represents a condition input to an IIfConditional.
Definition: NvInfer.h:4460
virtual ~IConditionLayer() noexcept=default
Layer that represents a constant value.
Definition: NvInfer.h:3836
void setWeights(Weights weights) noexcept
Set the weights for the layer.
Definition: NvInfer.h:3846
Weights getWeights() const noexcept
Get the weights for the layer.
Definition: NvInfer.h:3856
void setDimensions(Dims const &dimensions) noexcept
Set the dimensions for the layer.
Definition: NvInfer.h:3868
apiv::VConstantLayer * mImpl
Definition: NvInfer.h:3886
virtual ~IConstantLayer() noexcept=default
Dims getDimensions() const noexcept
Get the dimensions for the layer.
Definition: NvInfer.h:3880
A convolution layer in a network definition.
Definition: NvInfer.h:947
Dims getPrePadding() const noexcept
Get the pre-padding.
Definition: NvInfer.h:1072
Weights getBiasWeights() const noexcept
Get the bias weights for the convolution.
Definition: NvInfer.h:1045
void setPaddingMode(PaddingMode paddingMode) noexcept
Set the padding mode.
Definition: NvInfer.h:1113
void setDilationNd(Dims const &dilation) noexcept
Set the multi-dimension dilation of the convolution.
Definition: NvInfer.h:1217
Dims getPaddingNd() const noexcept
Get the multi-dimension padding of the convolution.
Definition: NvInfer.h:1203
Dims getStrideNd() const noexcept
Get the multi-dimension stride of the convolution.
Definition: NvInfer.h:1173
Weights getKernelWeights() const noexcept
Get the kernel weights of the convolution.
Definition: NvInfer.h:1020
void setStrideNd(Dims const &stride) noexcept
Set the multi-dimension stride of the convolution.
Definition: NvInfer.h:1163
Dims getDilationNd() const noexcept
Get the multi-dimension dilation of the convolution.
Definition: NvInfer.h:1227
int64_t getNbOutputMaps() const noexcept
Get the number of output maps for the convolution.
Definition: NvInfer.h:966
void setKernelWeights(Weights weights) noexcept
Set the kernel weights for the convolution.
Definition: NvInfer.h:1010
Dims getPostPadding() const noexcept
Get the post-padding.
Definition: NvInfer.h:1099
int64_t getNbGroups() const noexcept
Get the number of groups of the convolution.
Definition: NvInfer.h:996
PaddingMode getPaddingMode() const noexcept
Get the padding mode.
Definition: NvInfer.h:1125
virtual ~IConvolutionLayer() noexcept=default
void setNbGroups(int64_t nbGroups) noexcept
Set the number of groups for a convolution.
Definition: NvInfer.h:986
void setNbOutputMaps(int64_t nbOutputMaps) noexcept
Set the number of output maps for the convolution.
Definition: NvInfer.h:956
void setBiasWeights(Weights weights) noexcept
Set the bias weights for the convolution.
Definition: NvInfer.h:1035
Dims getKernelSizeNd() const noexcept
Get the multi-dimension kernel size of the convolution.
Definition: NvInfer.h:1148
void setPaddingNd(Dims const &padding) noexcept
Set the multi-dimension padding of the convolution.
Definition: NvInfer.h:1191
void setPrePadding(Dims const &padding) noexcept
Set the multi-dimension pre-padding of the convolution.
Definition: NvInfer.h:1062
void setPostPadding(Dims const &padding) noexcept
Set the multi-dimension post-padding of the convolution.
Definition: NvInfer.h:1089
void setKernelSizeNd(Dims const &kernelSize) noexcept
Set the multi-dimension kernel size of the convolution.
Definition: NvInfer.h:1138
Layer that represents a cumulative operation across a tensor.
Definition: NvInfer.h:6643
bool setOperation(CumulativeOperation op) noexcept
Set the cumulative operation for the layer.
Definition: NvInfer.h:6654
void setReverse(bool reverse) noexcept
Specify whether the cumulative operation should be applied backward.
Definition: NvInfer.h:6702
apiv::VCumulativeLayer * mImpl
Definition: NvInfer.h:6720
bool getExclusive() const noexcept
Get whether it is exclusive accumulation or inclusive accumulation.
Definition: NvInfer.h:6690
virtual ~ICumulativeLayer() noexcept=default
bool getReverse() const noexcept
Get the boolean that specifies whether the cumulative operation should be applied backward.
Definition: NvInfer.h:6714
void setExclusive(bool exclusive) noexcept
Set whether it is an exclusive accumulation or inclusive accumulation.
Definition: NvInfer.h:6678
CumulativeOperation getOperation() const noexcept
Get the cumulative operation for the layer.
Definition: NvInfer.h:6666
A deconvolution layer in a network definition.
Definition: NvInfer.h:2018
void setBiasWeights(Weights weights) noexcept
Set the bias weights for the deconvolution.
Definition: NvInfer.h:2106
int64_t getNbGroups() const noexcept
Get the number of groups for a deconvolution.
Definition: NvInfer.h:2067
Weights getKernelWeights() const noexcept
Get the kernel weights for the deconvolution.
Definition: NvInfer.h:2091
void setPrePadding(Dims const &padding) noexcept
Set the multi-dimension pre-padding of the deconvolution.
Definition: NvInfer.h:2133
Dims getStrideNd() const noexcept
Get the multi-dimension stride of the deconvolution.
Definition: NvInfer.h:2248
Dims getDilationNd() const noexcept
Get the multi-dimension dilation of the deconvolution.
Definition: NvInfer.h:2314
Weights getBiasWeights() const noexcept
Get the bias weights for the deconvolution.
Definition: NvInfer.h:2116
void setKernelWeights(Weights weights) noexcept
Set the kernel weights for the deconvolution.
Definition: NvInfer.h:2081
int64_t getNbOutputMaps() const noexcept
Get the number of output feature maps for the deconvolution.
Definition: NvInfer.h:2037
void setStrideNd(Dims const &stride) noexcept
Set the multi-dimension stride of the deconvolution.
Definition: NvInfer.h:2238
Dims getPostPadding() const noexcept
Get the padding.
Definition: NvInfer.h:2170
Dims getKernelSizeNd() const noexcept
Get the multi-dimension kernel size of the deconvolution.
Definition: NvInfer.h:2221
void setPostPadding(Dims const &padding) noexcept
Set the multi-dimension post-padding of the deconvolution.
Definition: NvInfer.h:2160
void setKernelSizeNd(Dims const &kernelSize) noexcept
Set the multi-dimension kernel size of the deconvolution.
Definition: NvInfer.h:2211
virtual ~IDeconvolutionLayer() noexcept=default
void setPaddingNd(Dims const &padding) noexcept
Set the multi-dimension padding of the deconvolution.
Definition: NvInfer.h:2266
void setNbOutputMaps(int64_t nbOutputMaps) noexcept
Set the number of output feature maps for the deconvolution.
Definition: NvInfer.h:2027
Dims getPaddingNd() const noexcept
Get the multi-dimension padding of the deconvolution.
Definition: NvInfer.h:2278
void setDilationNd(Dims const &dilation) noexcept
Set the multi-dimension dilation of the deconvolution.
Definition: NvInfer.h:2304
void setPaddingMode(PaddingMode paddingMode) noexcept
Set the padding mode.
Definition: NvInfer.h:2184
void setNbGroups(int64_t nbGroups) noexcept
Set the number of groups for a deconvolution.
Definition: NvInfer.h:2057
Dims getPrePadding() const noexcept
Get the pre-padding.
Definition: NvInfer.h:2143
PaddingMode getPaddingMode() const noexcept
Get the padding mode.
Definition: NvInfer.h:2196
A Dequantize layer in a network definition.
Definition: NvInfer.h:5545
TRT_NODISCARD Dims getBlockShape() const noexcept
Get the shape of the quantization block.
Definition: NvInfer.h:5594
void setToType(DataType toType) noexcept
Set the Dequantize layer output type.
Definition: NvInfer.h:5610
virtual ~IDequantizeLayer() noexcept=default
int32_t getAxis() const noexcept
Get the quantization axis.
Definition: NvInfer.h:5555
bool setBlockShape(Dims const &blockShape) noexcept
Set the shape of the quantization block.
Definition: NvInfer.h:5583
DataType getToType() const noexcept
Return the Dequantize layer output type.
Definition: NvInfer.h:5622
void setAxis(int32_t axis) noexcept
Set the quantization axis.
Definition: NvInfer.h:5566
A network layer to perform dynamic quantization.
Definition: NvInfer.h:5650
DataType getScaleType() const noexcept
Return the scale factors data type.
Definition: NvInfer.h:5716
TRT_DEPRECATED void setAxis(int32_t axis) noexcept
Set the axis along which block quantization occurs.
Definition: NvInfer.h:5729
TRT_DEPRECATED void setBlockSize(int32_t size) noexcept
Set the size of the quantization block.
Definition: NvInfer.h:5752
Dims getBlockShape() const noexcept
Get the shape of the quantization block.
Definition: NvInfer.h:5787
void setScaleType(DataType scaleType) noexcept
Set the data type of the scale factors used to quantize the data.
Definition: NvInfer.h:5703
DataType getToType() const noexcept
Return DynamicQuantizeLayer's quantized output type.
Definition: NvInfer.h:5690
TRT_DEPRECATED int32_t getAxis() const noexcept
Get the axis along which blocking occurs.
Definition: NvInfer.h:5739
virtual ~IDynamicQuantizeLayer() noexcept=default
void setToType(DataType toType) noexcept
Set DynamicQuantizeLayer's quantized output type.
Definition: NvInfer.h:5677
void setBlockShape(Dims const &blockShape) noexcept
Set the shape of the quantization block.
Definition: NvInfer.h:5775
TRT_DEPRECATED int32_t getBlockSize() const noexcept
Get the size of the quantization block.
Definition: NvInfer.h:5762
An Einsum layer in a network.
Definition: NvInfer.h:5832
bool setEquation(char const *equation) noexcept
Set the equation. The equation is a comma-separated list of subscript labels, where each label refers...
Definition: NvInfer.h:5843
virtual ~IEinsumLayer() noexcept=default
char const * getEquation() const noexcept
Return the equation.
Definition: NvInfer.h:5853
A elementwise layer in a network definition.
Definition: NvInfer.h:2388
virtual ~IElementWiseLayer() noexcept=default
apiv::VElementWiseLayer * mImpl
Definition: NvInfer.h:2417
ElementWiseOperation getOperation() const noexcept
Get the binary operation for the layer.
Definition: NvInfer.h:2411
void setOperation(ElementWiseOperation op) noexcept
Set the binary operation for the layer.
Definition: NvInfer.h:2399
Generate a tensor according to a specified mode.
Definition: NvInfer.h:5047
bool isAlphaBetaInt64() const noexcept
Return true if alpha/beta have type int64, false if they have type double.
Definition: NvInfer.h:5279
FillOperation getOperation() const noexcept
Get the fill operation for the layer.
Definition: NvInfer.h:5093
void setOperation(FillOperation op) noexcept
Set the fill operation for the layer.
Definition: NvInfer.h:5083
DataType getToType() const noexcept
Get the fill layer output type.
Definition: NvInfer.h:5308
void setAlphaInt64(int64_t alpha) noexcept
Set the alpha parameter with int64 datatype.
Definition: NvInfer.h:5222
void setBetaInt64(int64_t beta) noexcept
Set the beta parameter with int64 datatype.
Definition: NvInfer.h:5256
void setBeta(double beta) noexcept
Set the beta parameter.
Definition: NvInfer.h:5146
int64_t getAlphaInt64() const noexcept
Get the value of alpha parameter with int64 datatype.
Definition: NvInfer.h:5237
int64_t getBetaInt64() const noexcept
Get the value of beta parameter with int64 datatype.
Definition: NvInfer.h:5271
double getAlpha() const noexcept
Get the value of alpha parameter.
Definition: NvInfer.h:5127
void setDimensions(Dims const &dimensions) noexcept
Set the output tensor's dimensions.
Definition: NvInfer.h:5058
void setAlpha(double alpha) noexcept
Set the alpha parameter.
Definition: NvInfer.h:5112
void setToType(DataType toType) noexcept
Set the fill layer output type.
Definition: NvInfer.h:5296
Dims getDimensions() const noexcept
Get the output tensor's dimensions.
Definition: NvInfer.h:5073
double getBeta() const noexcept
Get the value of beta parameter.
Definition: NvInfer.h:5161
virtual ~IFillLayer() noexcept=default
A Gather layer in a network definition. Supports several kinds of gathering.
Definition: NvInfer.h:2521
void setGatherAxis(int32_t axis) noexcept
Set the axis used by GatherMode::kELEMENTS and GatherMode::kDEFAULT The axis must be less than the nu...
Definition: NvInfer.h:2532
void setNbElementWiseDims(int32_t elementWiseDims) noexcept
Set the number of leading dimensions of indices tensor to be handled elementwise.
Definition: NvInfer.h:2567
apiv::VGatherLayer * mImpl
Definition: NvInfer.h:2603
int32_t getNbElementWiseDims() const noexcept
Get the number of leading dimensions of indices tensor to be handled elementwise.
Definition: NvInfer.h:2577
void setMode(GatherMode mode) noexcept
Set the gather mode.
Definition: NvInfer.h:2587
int32_t getGatherAxis() const noexcept
Get the axis to gather on.
Definition: NvInfer.h:2544
GatherMode getMode() const noexcept
Get the gather mode.
Definition: NvInfer.h:2597
virtual ~IGatherLayer() noexcept=default
A GridSample layer in a network definition.
Definition: NvInfer.h:6054
void setInterpolationMode(InterpolationMode mode) noexcept
Set the grid sample interpolation mode.
Definition: NvInfer.h:6061
bool setSampleMode(SampleMode mode) noexcept
Set the sample mode.
Definition: NvInfer.h:6107
void setAlignCorners(bool alignCorners) noexcept
Set the align corners mode.
Definition: NvInfer.h:6083
apiv::VGridSampleLayer * mImpl
Definition: NvInfer.h:6125
SampleMode getSampleMode() const noexcept
Get the sample mode.
Definition: NvInfer.h:6119
InterpolationMode getInterpolationMode() const noexcept
Get the grid sample interpolation mode.
Definition: NvInfer.h:6073
bool getAlignCorners() const noexcept
Get the align corners mode.
Definition: NvInfer.h:6095
virtual ~IGridSampleLayer() noexcept=default
Class to handle library allocated memory that is accessible to the user.
Definition: NvInferRuntime.h:142
A layer that represents the identity function.
Definition: NvInfer.h:3784
apiv::VIdentityLayer * mImpl
Definition: NvInfer.h:3786
virtual ~IIdentityLayer() noexcept=default
This is a base class for Conditional boundary layers.
Definition: NvInfer.h:4439
IIfConditional * getConditional() const noexcept
Get a pointer to the IIfConditional associated with this boundary layer.
Definition: NvInfer.h:4444
virtual ~IIfConditionalBoundaryLayer() noexcept=default
Helper for constructing conditionally-executed subgraphs.
Definition: NvInfer.h:4522
IIfConditionalInputLayer * addInput(ITensor &input) noexcept
Add an If-conditional input.
Definition: NvInfer.h:4563
char const * getName() const noexcept
Return the name of the conditional.
Definition: NvInfer.h:4588
virtual ~IIfConditional() noexcept=default
IConditionLayer * setCondition(ITensor &condition) noexcept
Set the condition tensor for this If-Conditional construct.
Definition: NvInfer.h:4533
IIfConditionalOutputLayer * addOutput(ITensor &trueSubgraphOutput, ITensor &falseSubgraphOutput) noexcept
Add an If-conditional output.
Definition: NvInfer.h:4551
void setName(char const *name) noexcept
Set the name of the conditional.
Definition: NvInfer.h:4578
This layer represents an output of an IIfConditional.
Definition: NvInfer.h:4477
virtual ~IIfConditionalOutputLayer() noexcept=default
A layer to do iterations.
Definition: NvInfer.h:4753
virtual ~IIteratorLayer() noexcept=default
void setReverse(bool reverse) noexcept
Set iteration order to be reverse.
Definition: NvInfer.h:4780
bool getReverse() const noexcept
Check if the iteration order is reverse.
Definition: NvInfer.h:4790
int32_t getAxis() const noexcept
Get axis being iterated over.
Definition: NvInfer.h:4766
void setAxis(int32_t axis) noexcept
Set axis to iterate over.
Definition: NvInfer.h:4758
Layer that represents a KVCacheUpdate operation.
Definition: NvInfer.h:7283
bool setCacheMode(KVCacheMode cacheMode) noexcept
Set the mode of the KVCacheUpdate layer.
Definition: NvInfer.h:7306
virtual ~IKVCacheUpdateLayer() noexcept=default
KVCacheMode getCacheMode() const noexcept
Get the mode of the KVCacheUpdate layer.
Definition: NvInfer.h:7316
apiv::VKVCacheUpdateLayer * mImpl
Definition: NvInfer.h:7322
A LRN layer in a network definition.
Definition: NvInfer.h:1632
int64_t getWindowSize() const noexcept
Get the LRN window size.
Definition: NvInfer.h:1653
float getAlpha() const noexcept
Get the LRN alpha value.
Definition: NvInfer.h:1675
void setWindowSize(int64_t windowSize) noexcept
Set the LRN window size.
Definition: NvInfer.h:1643
void setK(float k) noexcept
Set the LRN K value.
Definition: NvInfer.h:1709
void setAlpha(float alpha) noexcept
Set the LRN alpha value.
Definition: NvInfer.h:1665
void setBeta(float beta) noexcept
Set the LRN beta value.
Definition: NvInfer.h:1687
virtual ~ILRNLayer() noexcept=default
float getBeta() const noexcept
Get the LRN beta value.
Definition: NvInfer.h:1697
float getK() const noexcept
Get the LRN K value.
Definition: NvInfer.h:1719
Base class for all layer classes in a network definition.
Definition: NvInfer.h:462
TRT_DEPRECATED void setPrecision(DataType dataType) noexcept
Set the preferred or required computational precision of this layer in a weakly-typed network.
Definition: NvInfer.h:582
TRT_DEPRECATED void setOutputType(int32_t index, DataType dataType) noexcept
Set the output type of this layer in a weakly-typed network.
Definition: NvInfer.h:670
TRT_DEPRECATED bool precisionIsSet() const noexcept
whether the computational precision has been set for this layer
Definition: NvInfer.h:608
void setMetadata(char const *metadata) noexcept
Set the metadata for this layer.
Definition: NvInfer.h:733
TRT_DEPRECATED void resetOutputType(int32_t index) noexcept
reset the output type for this layer
Definition: NvInfer.h:715
void setName(char const *name) noexcept
Set the name of a layer.
Definition: NvInfer.h:483
int32_t getNbInputs() const noexcept
Get the number of inputs of a layer.
Definition: NvInfer.h:501
char const * getMetadata() const noexcept
Get the metadata of the layer.
Definition: NvInfer.h:746
DataType getOutputType(int32_t index) const noexcept
get the output type of this layer
Definition: NvInfer.h:685
DataType getPrecision() const noexcept
get the computational precision of this layer
Definition: NvInfer.h:594
TRT_DEPRECATED bool outputTypeIsSet(int32_t index) const noexcept
whether the output type has been set for this layer
Definition: NvInfer.h:701
char const * getName() const noexcept
Return the name of a layer.
Definition: NvInfer.h:493
int32_t getNbOutputs() const noexcept
Get the number of outputs of a layer.
Definition: NvInfer.h:522
ITensor * getOutput(int32_t index) const noexcept
Get the layer output corresponding to the given index.
Definition: NvInfer.h:532
void setInput(int32_t index, ITensor &tensor) noexcept
Replace an input of this layer with a specific tensor.
Definition: NvInfer.h:549
ITensor * getInput(int32_t index) const noexcept
Get the layer input corresponding to the given index.
Definition: NvInfer.h:514
LayerType getType() const noexcept
Return the type of a layer.
Definition: NvInfer.h:469
TRT_DEPRECATED void resetPrecision() noexcept
reset the computational precision for this layer
Definition: NvInfer.h:620
virtual ~ILayer() noexcept=default
Application-implemented logging interface for the builder, refitter and runtime.
Definition: NvInferRuntime.h:1588
This is a base class for Loop boundary layers.
Definition: NvInfer.h:4416
virtual ~ILoopBoundaryLayer() noexcept=default
ILoop * getLoop() const noexcept
Get a pointer to ILoop associated with this boundary layer.
Definition: NvInfer.h:4421
Helper for creating a recurrent subgraph.
Definition: NvInfer.h:4811
void setName(char const *name) noexcept
Set the name of the loop.
Definition: NvInfer.h:4881
ITripLimitLayer * addTripLimit(ITensor &tensor, TripLimit limit) noexcept
Add a trip-count limiter, based on the given tensor.
Definition: NvInfer.h:4840
IIteratorLayer * addIterator(ITensor &tensor, int32_t axis=0, bool reverse=false) noexcept
Return layer that subscripts tensor by loop iteration.
Definition: NvInfer.h:4853
ILoopOutputLayer * addLoopOutput(ITensor &tensor, LoopOutput outputKind, int32_t axis=0) noexcept
Make an output for this loop, based on the given tensor.
Definition: NvInfer.h:4866
virtual ~ILoop() noexcept=default
char const * getName() const noexcept
Return the name of the loop.
Definition: NvInfer.h:4891
IRecurrenceLayer * addRecurrence(ITensor &initialValue) noexcept
Create a recurrence layer for this loop with initialValue as its first input.
Definition: NvInfer.h:4819
An ILoopOutputLayer is the sole way to get output from a loop.
Definition: NvInfer.h:4653
virtual ~ILoopOutputLayer() noexcept=default
int32_t getAxis() const noexcept
Get axis being concatenated over.
Definition: NvInfer.h:4683
LoopOutput getLoopOutput() const noexcept
Get which kind a loop output has.
Definition: NvInfer.h:4658
void setAxis(int32_t axis) noexcept
Set where to insert the contenation axis. Ignored if getLoopOutput() is kLAST_VALUE.
Definition: NvInfer.h:4675
Layer that represents a Matrix Multiplication.
Definition: NvInfer.h:3631
apiv::VMatrixMultiplyLayer * mImpl
Definition: NvInfer.h:3659
virtual ~IMatrixMultiplyLayer() noexcept=default
MatrixOperation getOperation(int32_t index) const noexcept
Get the operation for an input tensor.
Definition: NvInfer.h:3653
void setOperation(int32_t index, MatrixOperation op) noexcept
Set the operation for an input tensor.
Definition: NvInfer.h:3641
A non-maximum suppression layer in a network definition.
Definition: NvInfer.h:6206
virtual ~INMSLayer() noexcept=default
void setTopKBoxLimit(int32_t limit) noexcept
Set the TopK box limit parameter for the layer.
Definition: NvInfer.h:6243
void setBoundingBoxFormat(BoundingBoxFormat fmt) noexcept
Set the bounding box format parameter for the layer.
Definition: NvInfer.h:6217
BoundingBoxFormat getBoundingBoxFormat() const noexcept
Get the bounding box format parameter for the layer.
Definition: NvInfer.h:6229
bool setIndicesType(DataType type) noexcept
Set the indices type for the layer.
Definition: NvInfer.h:6288
apiv::VNMSLayer * mImpl
Definition: NvInfer.h:6306
int32_t getTopKBoxLimit() const noexcept
Get the TopK box limit parameter for the layer.
Definition: NvInfer.h:6253
DataType getIndicesType() const noexcept
Return the NMS layer indices type.
Definition: NvInfer.h:6300
A network definition for input to the builder.
Definition: NvInfer.h:7344
IConcatenationLayer * addConcatenation(ITensor *const *inputs, int32_t nbInputs) noexcept
Add a concatenation layer to the network.
Definition: NvInfer.h:7572
IShuffleLayer * addShuffle(ITensor &input) noexcept
Add a shuffle layer to the network.
Definition: NvInfer.h:7635
void setName(char const *name) noexcept
Sets the name of the network.
Definition: NvInfer.h:8061
ITopKLayer * addTopK(ITensor &input, TopKOperation op, int32_t k, uint32_t reduceAxes, DataType indicesType) noexcept
Add a TopK layer to the network.
Definition: NvInfer.h:7831
bool markDebug(ITensor &tensor) noexcept
Mark a tensor as a debug tensor.
Definition: NvInfer.h:7415
ILRNLayer * addLRN(ITensor &input, int64_t window, float alpha, float beta, float k) noexcept
Add a LRN layer to the network.
Definition: NvInfer.h:7516
ICumulativeLayer * addCumulative(ITensor &input, ITensor &axis, CumulativeOperation operation, bool exclusive, bool reverse) noexcept
Add a cumulative layer to the network.
Definition: NvInfer.h:8728
IAssertionLayer * addAssertion(ITensor &condition, char const *message) noexcept
Add an assertion layer to the network.
Definition: NvInfer.h:8363
TRT_DEPRECATED INonZeroLayer * addNonZero(ITensor &input) noexcept
Add a nonzero layer to the network.
Definition: NvInfer.h:7922
IConvolutionLayer * addConvolutionNd(ITensor &input, int64_t nbOutputMaps, Dims const &kernelSize, Weights kernelWeights, Weights biasWeights) noexcept
Add a multi-dimension convolution layer to the network.
Definition: NvInfer.h:8182
ICastLayer * addCast(ITensor &input, DataType toType) noexcept
Add a cast layer.
Definition: NvInfer.h:7991
IScaleLayer * addScaleNd(ITensor &input, ScaleMode mode, Weights shift, Weights scale, Weights power, int32_t channelAxis) noexcept
Add a multi-dimension scale layer to the network.
Definition: NvInfer.h:8261
char const * getName() const noexcept
Returns the name associated with the network.
Definition: NvInfer.h:8075
IParametricReLULayer * addParametricReLU(ITensor &input, ITensor &slope) noexcept
Add a parametric ReLU layer to the network.
Definition: NvInfer.h:8160
ITensor * getOutput(int32_t index) const noexcept
Get the output tensor specified by the given index.
Definition: NvInfer.h:7736
ITensor * getInput(int32_t index) const noexcept
Get the input tensor specified by the given index.
Definition: NvInfer.h:7706
TRT_DEPRECATED ITopKLayer * addTopK(ITensor &input, TopKOperation op, int32_t k, uint32_t reduceAxes) noexcept
Add a TopK layer to the network.
Definition: NvInfer.h:7798
IDequantizeLayer * addDequantize(ITensor &input, ITensor &scale, DataType outputType) noexcept
Add a dequantization layer to the network.
Definition: NvInfer.h:8486
bool unmarkOutputForShapes(ITensor &tensor) noexcept
Undo markOutputForShapes.
Definition: NvInfer.h:8142
IFillLayer * addFill(Dims const &dimensions, FillOperation op, DataType outputType) noexcept
Add a fill layer to the network.
Definition: NvInfer.h:8389
ILoop * addLoop() noexcept
Add a loop to the network.
Definition: NvInfer.h:8292
bool markUnfusedTensorsAsDebugTensors() noexcept
Mark unfused tensors as debug tensors.
Definition: NvInfer.h:7463
TRT_NODISCARD INormalizationLayer * addNormalizationV2(ITensor &input, ITensor &scale, ITensor &bias, uint32_t axesMask) noexcept
Add a normalization layer to the network.
Definition: NvInfer.h:8930
IActivationLayer * addActivation(ITensor &input, ActivationType type) noexcept
Add an activation layer to the network.
Definition: NvInfer.h:7497
ISliceLayer * addSlice(ITensor &input, Dims const &start, Dims const &size, Dims const &stride) noexcept
Add a slice layer to the network.
Definition: NvInfer.h:8037
virtual ~INetworkDefinition() noexcept=default
virtual IBuilder & getBuilder() const noexcept
Return the builder from which this INetworkDefinition was created.
Definition: NvInfer.h:8826
ILayer * getLayer(int32_t index) const noexcept
Get the layer specified by the given index.
Definition: NvInfer.h:7678
bool isDebugTensor(ITensor const &tensor) const noexcept
Check if a tensor is marked as debug tensor.
Definition: NvInfer.h:7441
bool getFlag(NetworkDefinitionCreationFlag networkDefinitionCreationFlag) const noexcept
Returns true if the network definition creation flag is set.
Definition: NvInfer.h:8113
IIfConditional * addIfConditional() noexcept
Add an if-then-else to the network.
Definition: NvInfer.h:8307
IErrorRecorder * getErrorRecorder() const noexcept
get the ErrorRecorder assigned to this interface.
Definition: NvInfer.h:8463
ISqueezeLayer * addSqueeze(ITensor &input, ITensor &axes) noexcept
Add a squeeze layer to the network.
Definition: NvInfer.h:8883
TRT_DEPRECATED INMSLayer * addNMS(ITensor &boxes, ITensor &scores, ITensor &maxOutputBoxesPerClass) noexcept
Add a non-maximum suppression layer to the network.
Definition: NvInfer.h:8637
IReverseSequenceLayer * addReverseSequence(ITensor &input, ITensor &sequenceLens) noexcept
Add a ReverseSequence layer to the network.
Definition: NvInfer.h:8674
TRT_DEPRECATED IDynamicQuantizeLayer * addDynamicQuantize(ITensor &input, int32_t axis, int32_t blockSize, DataType outputType, DataType scaleType) noexcept
Add a dynamic quantization layer to the network.
Definition: NvInfer.h:8557
int32_t getNbInputs() const noexcept
Get the number of inputs in the network.
Definition: NvInfer.h:7690
NetworkDefinitionCreationFlags getFlags() const noexcept
Get the network definition creation flags for this network definition object. Defaults to 0.
Definition: NvInfer.h:8101
IQuantizeLayer * addQuantize(ITensor &input, ITensor &scale, DataType outputType) noexcept
Add a quantization layer to the network.
Definition: NvInfer.h:8530
IDynamicQuantizeLayer * addDynamicQuantizeV2(ITensor &input, Dims const &blockShape, DataType outputType, DataType scaleType) noexcept
Add a dynamic quantization layer to the network.
Definition: NvInfer.h:8581
IReduceLayer * addReduce(ITensor &input, ReduceOperation operation, uint32_t reduceAxes, bool keepDimensions) noexcept
Add a reduce layer to the network.
Definition: NvInfer.h:7762
IUnaryLayer * addUnary(ITensor &input, UnaryOperation operation) noexcept
Add a unary layer to the network.
Definition: NvInfer.h:7621
IGridSampleLayer * addGridSample(ITensor &input, ITensor &grid) noexcept
Add a GridSample layer to the network.
Definition: NvInfer.h:8615
void removeTensor(ITensor &tensor) noexcept
remove a tensor from the network definition.
Definition: NvInfer.h:8006
bool areWeightsMarkedRefittable(char const *name) const noexcept
Whether the weight has been marked as refittable.
Definition: NvInfer.h:8864
ISelectLayer * addSelect(ITensor &condition, ITensor &thenInput, ITensor &elseInput) noexcept
Add a select layer to the network.
Definition: NvInfer.h:8346
IScatterLayer * addScatter(ITensor &data, ITensor &indices, ITensor &updates, ScatterMode mode) noexcept
Add a Scatter layer to the network with specified mode and axis=0.
Definition: NvInfer.h:8506
TRT_DEPRECATED INormalizationLayer * addNormalization(ITensor &input, ITensor &scale, ITensor &bias, uint32_t axesMask) noexcept
Add a normalization layer to the network.
Definition: NvInfer.h:8706
int32_t getNbLayers() const noexcept
Get the number of layers in the network.
Definition: NvInfer.h:7664
apiv::VNetworkDefinition * mImpl
Definition: NvInfer.h:8936
IKVCacheUpdateLayer * addKVCacheUpdate(ITensor &cache, ITensor &update, ITensor &writeIndices, KVCacheMode cacheMode) noexcept
Add a KVCacheUpdate layer to the network.
Definition: NvInfer.h:8814
bool markOutputForShapes(ITensor &tensor) noexcept
Enable tensor's value to be computed by IExecutionContext::getShapeBinding.
Definition: NvInfer.h:8130
IOneHotLayer * addOneHot(ITensor &indices, ITensor &values, ITensor &depth, int32_t axis) noexcept
Add a OneHot layer to the network.
Definition: NvInfer.h:7652
IScaleLayer * addScale(ITensor &input, ScaleMode mode, Weights shift, Weights scale, Weights power) noexcept
Add a Scale layer to the network.
Definition: NvInfer.h:7542
void unmarkOutput(ITensor &tensor) noexcept
unmark a tensor as a network output.
Definition: NvInfer.h:8018
IIdentityLayer * addIdentity(ITensor &input) noexcept
Add an identity layer.
Definition: NvInfer.h:7976
IGatherLayer * addGatherV2(ITensor &data, ITensor &indices, GatherMode mode) noexcept
Add gather with specified mode, axis=0 and nbElementWiseDims=0.
Definition: NvInfer.h:7863
INonZeroLayer * addNonZero(ITensor &input, DataType indicesType) noexcept
Add a nonzero layer to the network.
Definition: NvInfer.h:7938
IElementWiseLayer * addElementWise(ITensor &input1, ITensor &input2, ElementWiseOperation op) noexcept
Add an elementwise layer to the network.
Definition: NvInfer.h:7599
IConstantLayer * addConstant(Dims const &dimensions, Weights weights) noexcept
Add a constant layer to the network.
Definition: NvInfer.h:7962
void setErrorRecorder(IErrorRecorder *recorder) noexcept
Set the ErrorRecorder for this interface.
Definition: NvInfer.h:8448
IPoolingLayer * addPoolingNd(ITensor &input, PoolingType type, Dims const &windowSize) noexcept
Add a multi-dimension pooling layer to the network.
Definition: NvInfer.h:8202
INMSLayer * addNMS(ITensor &boxes, ITensor &scores, ITensor &maxOutputBoxesPerClass, DataType indicesType) noexcept
Add a non-maximum suppression layer to the network.
Definition: NvInfer.h:8657
IRaggedSoftMaxLayer * addRaggedSoftMax(ITensor &input, ITensor &bounds) noexcept
Add a RaggedSoftMax layer to the network.
Definition: NvInfer.h:7882
IShapeLayer * addShape(ITensor &input) noexcept
Add a shape layer to the network.
Definition: NvInfer.h:8091
IGatherLayer * addGather(ITensor &data, ITensor &indices, int32_t axis) noexcept
Add gather with mode GatherMode::kDEFAULT and specified axis and nbElementWiseDims=0.
Definition: NvInfer.h:7847
IAttention * addAttention(ITensor &query, ITensor &key, ITensor &value, AttentionNormalizationOp normOp, bool causal) noexcept
Add an attention to the network.
Definition: NvInfer.h:8755
bool unmarkWeightsRefittable(char const *name) noexcept
Unmark weights as refittable when the builder flag kREFIT_INDIVIDUAL is set.
Definition: NvInfer.h:8851
bool markWeightsRefittable(char const *name) noexcept
Mark weights as refittable when the builder flag kREFIT_INDIVIDUAL is set.
Definition: NvInfer.h:8839
IRotaryEmbeddingLayer * addRotaryEmbedding(ITensor &input, ITensor &cosCache, ITensor &sinCache, bool interleaved, int32_t rotaryEmbeddingDim) noexcept
Add a Rotary Position Embedding (RoPE) layer to the network.
Definition: NvInfer.h:8780
IDeconvolutionLayer * addDeconvolutionNd(ITensor &input, int64_t nbOutputMaps, Dims kernelSize, Weights kernelWeights, Weights biasWeights) noexcept
Add a multi-dimension deconvolution layer to the network.
Definition: NvInfer.h:8224
IResizeLayer * addResize(ITensor &input) noexcept
Add a resize layer to the network.
Definition: NvInfer.h:8278
IUnsqueezeLayer * addUnsqueeze(ITensor &input, ITensor &axes) noexcept
Add an unsqueeze layer to the network.
Definition: NvInfer.h:8904
IMatrixMultiplyLayer * addMatrixMultiply(ITensor &input0, MatrixOperation op0, ITensor &input1, MatrixOperation op1) noexcept
Add a MatrixMultiply layer to the network.
Definition: NvInfer.h:7903
ISoftMaxLayer * addSoftMax(ITensor &input) noexcept
Add a SoftMax layer to the network.
Definition: NvInfer.h:7555
bool unmarkDebug(ITensor &tensor) noexcept
Unmark a tensor as a debug tensor.
Definition: NvInfer.h:7431
IEinsumLayer * addEinsum(ITensor *const *inputs, int32_t nbInputs, char const *equation) noexcept
Add an Einsum layer to the network.
Definition: NvInfer.h:8597
void markOutput(ITensor &tensor) noexcept
Mark a tensor as a network output.
Definition: NvInfer.h:7397
IPaddingLayer * addPaddingNd(ITensor &input, Dims const &prePadding, Dims const &postPadding) noexcept
Add a padding layer to the network. Only 2D padding is currently supported.
Definition: NvInfer.h:8405
int32_t getNbOutputs() const noexcept
Get the number of outputs in the network.
Definition: NvInfer.h:7720
bool setWeightsName(Weights weights, char const *name) noexcept
Associate a name with all current uses of the given weights.
Definition: NvInfer.h:8429
bool unmarkUnfusedTensorsAsDebugTensors() noexcept
Undo the marking of unfused tensors as debug tensors.
Definition: NvInfer.h:7477
Forward declaration of IEngineInspector for use by other interfaces.
Definition: NvInferRuntime.h:51
Definition: NvInfer.h:3685
DataType getIndicesType() const noexcept
Return the NonZero layer indices type.
Definition: NvInfer.h:3709
bool setIndicesType(DataType type) noexcept
Set the indices type for the layer.
Definition: NvInfer.h:3697
virtual ~INonZeroLayer() noexcept=default
A normalization layer in a network definition.
Definition: NvInfer.h:6395
float getEpsilon() const noexcept
Get the epsilon value used for the normalization calculation.
Definition: NvInfer.h:6414
uint32_t getAxes() const noexcept
Get the axes value used for the normalization calculation.
Definition: NvInfer.h:6434
virtual ~INormalizationLayer() noexcept=default
void setEpsilon(float eps) noexcept
Set the epsilon value used for the normalization calculation.
Definition: NvInfer.h:6404
TRT_NODISCARD bool isV2() const noexcept
Returns true if this layer was created through addNormalizationV2().
Definition: NvInfer.h:6511
DataType getComputePrecision() const noexcept
Get the compute precision of this layer.
Definition: NvInfer.h:6501
apiv::VNormalizationLayer * mImpl
Definition: NvInfer.h:6517
int64_t getNbGroups() const noexcept
Get the number of groups used to split the channels for the normalization calculation.
Definition: NvInfer.h:6465
void setAxes(uint32_t axesMask) noexcept
Set the reduction axes for the normalization calculation.
Definition: NvInfer.h:6424
void setComputePrecision(DataType type) noexcept
Set the compute precision of this layer.
Definition: NvInfer.h:6491
void setNbGroups(int64_t nbGroups) noexcept
Set the number of groups used to split the channels in the normalization calculation.
Definition: NvInfer.h:6455
A OneHot layer in a network definition.
Definition: NvInfer.h:6017
virtual ~IOneHotLayer() noexcept=default
apiv::VOneHotLayer * mImpl
Definition: NvInfer.h:6038
void setAxis(int32_t axis) noexcept
Set the axis parameter.
Definition: NvInfer.h:6024
int32_t getAxis() const noexcept
Get the value of the axis parameter.
Definition: NvInfer.h:6032
Optimization profile for dynamic input dimensions and shape tensors.
Definition: NvInferRuntime.h:2672
Layer that represents a padding operation.
Definition: NvInfer.h:2882
Dims getPostPaddingNd() const noexcept
Get the padding that is applied at the end of the tensor.
Definition: NvInfer.h:2931
void setPrePaddingNd(Dims const &padding) noexcept
Set the padding that is applied at the start of the tensor.
Definition: NvInfer.h:2893
virtual ~IPaddingLayer() noexcept=default
void setPostPaddingNd(Dims const &padding) noexcept
Set the padding that is applied at the end of the tensor.
Definition: NvInfer.h:2919
Dims getPrePaddingNd() const noexcept
Get the padding that is applied at the start of the tensor.
Definition: NvInfer.h:2905
apiv::VPaddingLayer * mImpl
Definition: NvInfer.h:2937
Layer that represents a parametric ReLU operation.
Definition: NvInfer.h:3900
apiv::VParametricReLULayer * mImpl
Definition: NvInfer.h:3902
virtual ~IParametricReLULayer() noexcept=default
Single registration point for all plugins in an application. It is used to find plugin implementation...
Definition: NvInferRuntimeCommon.h:56
Plugin class for user-implemented layers.
Definition: NvInferRuntimePlugin.h:139
Layer type for pluginV2.
Definition: NvInfer.h:2619
virtual ~IPluginV2Layer() noexcept=default
apiv::VPluginV2Layer * mImpl
Definition: NvInfer.h:2632
IPluginV2 & getPlugin() noexcept
Get the plugin for the layer.
Definition: NvInfer.h:2626
Layer type for V3 plugins.
Definition: NvInfer.h:2646
virtual ~IPluginV3Layer() noexcept=default
IPluginV3 & getPlugin() noexcept
Get the plugin for the layer.
Definition: NvInfer.h:2653
apiv::VPluginV3Layer * mImpl
Definition: NvInfer.h:2659
A Pooling layer in a network definition.
Definition: NvInfer.h:1381
PoolingType getPoolingType() const noexcept
Get the type of activation to be performed.
Definition: NvInfer.h:1400
PaddingMode getPaddingMode() const noexcept
Get the padding mode.
Definition: NvInfer.h:1533
Dims getPostPadding() const noexcept
Get the padding.
Definition: NvInfer.h:1509
bool getAverageCountExcludesPadding() const noexcept
Get whether average pooling uses as a denominator the overlap area between the window and the unpadde...
Definition: NvInfer.h:1453
Dims getPrePadding() const noexcept
Get the pre-padding.
Definition: NvInfer.h:1481
void setPoolingType(PoolingType type) noexcept
Set the type of activation to be performed.
Definition: NvInfer.h:1390
void setWindowSizeNd(Dims const &windowSize) noexcept
Set the multi-dimension window size for pooling.
Definition: NvInfer.h:1546
void setPaddingMode(PaddingMode paddingMode) noexcept
Set the padding mode.
Definition: NvInfer.h:1522
Dims getWindowSizeNd() const noexcept
Get the multi-dimension window size for pooling.
Definition: NvInfer.h:1556
void setAverageCountExcludesPadding(bool exclusive) noexcept
Set whether average pooling uses as a denominator the overlap area between the window and the unpadde...
Definition: NvInfer.h:1442
void setPaddingNd(Dims const &padding) noexcept
Set the multi-dimension padding for pooling.
Definition: NvInfer.h:1600
float getBlendFactor() const noexcept
Get the blending factor for the max_average_blend mode: max_average_blendPool = (1-blendFactor)*maxPo...
Definition: NvInfer.h:1428
void setStrideNd(Dims const &stride) noexcept
Set the multi-dimension stride for pooling.
Definition: NvInfer.h:1571
Dims getStrideNd() const noexcept
Get the multi-dimension stride for pooling.
Definition: NvInfer.h:1581
virtual ~IPoolingLayer() noexcept=default
Dims getPaddingNd() const noexcept
Get the multi-dimension padding for pooling.
Definition: NvInfer.h:1612
void setPostPadding(Dims const &padding) noexcept
Set the multi-dimension post-padding for pooling.
Definition: NvInfer.h:1499
void setPrePadding(Dims const &padding) noexcept
Set the multi-dimension pre-padding for pooling.
Definition: NvInfer.h:1471
void setBlendFactor(float blendFactor) noexcept
Set the blending factor for the max_average_blend mode: max_average_blendPool = (1-blendFactor)*maxPo...
Definition: NvInfer.h:1415
A Quantize layer in a network definition.
Definition: NvInfer.h:5393
void setToType(DataType toType) noexcept
Set the Quantize layer output type.
Definition: NvInfer.h:5454
bool setBlockShape(Dims const &blockShape) noexcept
Set the shape of the quantization block.
Definition: NvInfer.h:5427
void setAxis(int32_t axis) noexcept
Set the quantization axis.
Definition: NvInfer.h:5414
TRT_NODISCARD Dims getBlockShape() const noexcept
Get the shape of the quantization block.
Definition: NvInfer.h:5438
int32_t getAxis() const noexcept
Get the quantization axis.
Definition: NvInfer.h:5403
virtual ~IQuantizeLayer() noexcept=default
DataType getToType() const noexcept
Return the Quantize layer output type.
Definition: NvInfer.h:5466
A RaggedSoftmax layer in a network definition.
Definition: NvInfer.h:3734
apiv::VRaggedSoftMaxLayer * mImpl
Definition: NvInfer.h:3736
virtual ~IRaggedSoftMaxLayer() noexcept=default
A recurrence layer in a network definition.
Definition: NvInfer.h:4606
virtual ~IRecurrenceLayer() noexcept=default
Layer that represents a reduction across a non-bool tensor.
Definition: NvInfer.h:2802
void setKeepDimensions(bool keepDimensions) noexcept
Set the boolean that specifies whether or not to keep the reduced dimensions for the layer.
Definition: NvInfer.h:2849
void setOperation(ReduceOperation op) noexcept
Set the reduce operation for the layer.
Definition: NvInfer.h:2809
ReduceOperation getOperation() const noexcept
Get the reduce operation for the layer.
Definition: NvInfer.h:2819
virtual ~IReduceLayer() noexcept=default
uint32_t getReduceAxes() const noexcept
Get the axes over which to reduce for the layer.
Definition: NvInfer.h:2839
void setReduceAxes(uint32_t reduceAxes) noexcept
Set the axes over which to reduce.
Definition: NvInfer.h:2829
apiv::VReduceLayer * mImpl
Definition: NvInfer.h:2865
bool getKeepDimensions() const noexcept
Get the boolean that specifies whether or not to keep the reduced dimensions for the layer.
Definition: NvInfer.h:2859
A resize layer in a network definition.
Definition: NvInfer.h:4089
void setSelectorForSinglePixel(ResizeSelector selector) noexcept
Set coordinate selector function when resized to single pixel.
Definition: NvInfer.h:4250
void setNearestRounding(ResizeRoundMode value) noexcept
Set rounding mode for nearest neighbor resize.
Definition: NvInfer.h:4274
virtual ~IResizeLayer() noexcept=default
int32_t getScales(int32_t size, float *scales) const noexcept
Copies resize scales to scales[0, ..., nbScales-1], where nbScales is the number of scales that were ...
Definition: NvInfer.h:4168
void setOutputDimensions(Dims const &dimensions) noexcept
Set the output dimensions.
Definition: NvInfer.h:4109
void setCubicCoeff(float A) noexcept
Set the coefficient 'A' used in cubic interpolation.
Definition: NvInfer.h:4306
void setScales(float const *scales, int32_t nbScales) noexcept
Set the resize scales.
Definition: NvInfer.h:4149
float getCubicCoeff() const noexcept
Get the coefficient 'A' used in cubic interpolation.
Definition: NvInfer.h:4316
ResizeSelector getSelectorForSinglePixel() const noexcept
Get the coordinate selector function when resized to single pixel.
Definition: NvInfer.h:4260
InterpolationMode getResizeMode() const noexcept
Get resize mode for an input tensor.
Definition: NvInfer.h:4190
void setCoordinateTransformation(ResizeCoordinateTransformation coordTransform) noexcept
Set coordinate transformation function.
Definition: NvInfer.h:4225
void setExcludeOutside(bool excludeFlag) noexcept
Set the state for excluding outside pixels.
Definition: NvInfer.h:4329
void setResizeMode(InterpolationMode interpolationMode) noexcept
Set resize mode for an input tensor.
Definition: NvInfer.h:4180
Dims getOutputDimensions() const noexcept
Get the output dimensions.
Definition: NvInfer.h:4119
ResizeRoundMode getNearestRounding() const noexcept
Get rounding mode for nearest neighbor resize.
Definition: NvInfer.h:4284
bool getExcludeOutside() const noexcept
Get the state for excluding outside pixels.
Definition: NvInfer.h:4339
ResizeCoordinateTransformation getCoordinateTransformation() const noexcept
Get coordinate transformation function.
Definition: NvInfer.h:4235
A ReverseSequence layer in a network definition.
Definition: NvInfer.h:6323
void setSequenceAxis(int32_t sequenceAxis) noexcept
Set the sequence axis. Default is 0.
Definition: NvInfer.h:6356
int32_t getBatchAxis() const noexcept
Return the batch axis. Return 1 if no batch axis was set.
Definition: NvInfer.h:6343
apiv::VReverseSequenceLayer * mImpl
Definition: NvInfer.h:6372
int32_t getSequenceAxis() const noexcept
Return the sequence axis. Return 0 if no sequence axis was set.
Definition: NvInfer.h:6366
void setBatchAxis(int32_t batchAxis) noexcept
Set the batch axis. Default is 1.
Definition: NvInfer.h:6333
virtual ~IReverseSequenceLayer() noexcept=default
Layer that implements Rotary Position Embedding (RoPE) (https://arxiv.org/abs/2104....
Definition: NvInfer.h:7171
TRT_NODISCARD int32_t getRotaryEmbeddingDim() const noexcept
Get the number of hidden dimensions participating in RoPE. The default value is 0,...
Definition: NvInfer.h:7211
virtual ~IRotaryEmbeddingLayer() noexcept=default
void setInterleaved(bool interleaved) noexcept
Set whether the input is in interleaved format, i.e., whether the 2-d vectors rotated are taken from ...
Definition: NvInfer.h:7178
TRT_NODISCARD bool setRotaryEmbeddingDim(int32_t rotaryEmbeddingDim) noexcept
Set the number of hidden dimensions participating in RoPE. The default value is 0,...
Definition: NvInfer.h:7200
apiv::VRotaryEmbeddingLayer * mImpl
Definition: NvInfer.h:7234
TRT_NODISCARD bool getInterleaved() const noexcept
Get whether the input is in interleaved format. The default value is false.
Definition: NvInfer.h:7189
A Scale layer in a network definition.
Definition: NvInfer.h:1778
Weights getScale() const noexcept
Get the scale value.
Definition: NvInfer.h:1835
Weights getPower() const noexcept
Get the power value.
Definition: NvInfer.h:1855
void setScale(Weights scale) noexcept
Set the scale value.
Definition: NvInfer.h:1825
void setPower(Weights power) noexcept
Set the power value.
Definition: NvInfer.h:1845
ScaleMode getMode() const noexcept
Get the scale mode.
Definition: NvInfer.h:1795
void setShift(Weights shift) noexcept
Set the shift value.
Definition: NvInfer.h:1805
void setChannelAxis(int32_t channelAxis) noexcept
Set the channel axis.
Definition: NvInfer.h:1891
Weights getShift() const noexcept
Get the shift value.
Definition: NvInfer.h:1815
virtual ~IScaleLayer() noexcept=default
void setMode(ScaleMode mode) noexcept
Set the scale mode.
Definition: NvInfer.h:1785
int32_t getChannelAxis() const noexcept
Get the channel axis.
Definition: NvInfer.h:1870
A scatter layer in a network definition. Supports several kinds of scattering.
Definition: NvInfer.h:5945
void setMode(ScatterMode mode) noexcept
Set the scatter mode.
Definition: NvInfer.h:5952
apiv::VScatterLayer * mImpl
Definition: NvInfer.h:5986
void setAxis(int32_t axis) noexcept
Set the axis used by ScatterMode::kELEMENTS.
Definition: NvInfer.h:5972
int32_t getAxis() const noexcept
Get the axis.
Definition: NvInfer.h:5980
ScatterMode getMode() const noexcept
Get the scatter mode.
Definition: NvInfer.h:5962
virtual ~IScatterLayer() noexcept=default
Select elements from two data tensors based on a condition tensor.
Definition: NvInfer.h:4914
virtual ~ISelectLayer() noexcept=default
Layer type for getting shape of a tensor.
Definition: NvInfer.h:3407
virtual ~IShapeLayer() noexcept=default
apiv::VShapeLayer * mImpl
Definition: NvInfer.h:3409
Layer type for shuffling data.
Definition: NvInfer.h:2970
apiv::VShuffleLayer * mImpl
Definition: NvInfer.h:3128
void setFirstTranspose(Permutation permutation) noexcept
Set the permutation applied by the first transpose operation.
Definition: NvInfer.h:2981
void setSecondTranspose(Permutation permutation) noexcept
Set the permutation applied by the second transpose operation.
Definition: NvInfer.h:3081
Dims getReshapeDimensions() const noexcept
Get the reshaped dimensions.
Definition: NvInfer.h:3034
void setReshapeDimensions(Dims const &dimensions) noexcept
Set the reshaped dimensions.
Definition: NvInfer.h:3021
Permutation getFirstTranspose() const noexcept
Get the permutation applied by the first transpose operation.
Definition: NvInfer.h:2993
virtual ~IShuffleLayer() noexcept=default
Permutation getSecondTranspose() const noexcept
Get the permutation applied by the second transpose operation.
Definition: NvInfer.h:3093
bool getZeroIsPlaceholder() const noexcept
Get meaning of 0 in reshape dimensions.
Definition: NvInfer.h:3122
void setZeroIsPlaceholder(bool zeroIsPlaceholder) noexcept
Set meaning of 0 in reshape dimensions.
Definition: NvInfer.h:3109
Slices an input tensor into an output tensor based on the offset and strides.
Definition: NvInfer.h:3222
void setStride(Dims const &stride) noexcept
Set the stride for computing the output slice data.
Definition: NvInfer.h:3291
apiv::VSliceLayer * mImpl
Definition: NvInfer.h:3390
virtual ~ISliceLayer() noexcept=default
void setSize(Dims const &size) noexcept
Set the dimensions of the output slice.
Definition: NvInfer.h:3262
void setAxes(Dims const &axes) noexcept
Set the axes for this ISliceLayer.
Definition: NvInfer.h:3369
void setStart(Dims const &start) noexcept
Set the start offset that the slice layer uses to create the output slice.
Definition: NvInfer.h:3233
Dims getStart() const noexcept
Get the start offset for the slice layer.
Definition: NvInfer.h:3248
void setMode(SampleMode mode) noexcept
Set the slice mode.
Definition: NvInfer.h:3316
Dims getSize() const noexcept
Get dimensions of the output slice.
Definition: NvInfer.h:3277
SampleMode getMode() const noexcept
Get the slice mode.
Definition: NvInfer.h:3326
Dims getStride() const noexcept
Get the stride for the output slice.
Definition: NvInfer.h:3306
Dims getAxes() const noexcept
Get the axes for this ISliceLayer.
Definition: NvInfer.h:3384
A Softmax layer in a network definition.
Definition: NvInfer.h:1922
void setAxes(uint32_t axes) noexcept
Set the axis along which softmax is computed. Currently, only one axis can be set.
Definition: NvInfer.h:1944
uint32_t getAxes() const noexcept
Get the axis along which softmax occurs.
Definition: NvInfer.h:1954
virtual ~ISoftMaxLayer() noexcept=default
Layer that represents a squeeze operation, removing unit dimensions of the first input tensor on a se...
Definition: NvInfer.h:6531
virtual ~ISqueezeLayer() noexcept=default
apiv::VSqueezeLayer * mImpl
Definition: NvInfer.h:6548
A tensor in a network definition.
Definition: NvInfer.h:187
void setAllowedFormats(TensorFormats formats) noexcept
Set allowed formats for an input or output tensor. By default all formats are allowed....
Definition: NvInfer.h:338
void setDimensions(Dims const &dimensions) noexcept
Set the dimensions of a tensor.
Definition: NvInfer.h:235
void setName(char const *name) noexcept
Set the tensor name.
Definition: NvInfer.h:204
bool isExecutionTensor() const noexcept
Whether the tensor is an execution tensor.
Definition: NvInfer.h:403
char const * getName() const noexcept
Get the tensor name.
Definition: NvInfer.h:216
bool isShapeTensor() const noexcept
Whether the tensor is a shape tensor.
Definition: NvInfer.h:382
bool isNetworkInput() const noexcept
Whether the tensor is a network input.
Definition: NvInfer.h:308
TRT_DEPRECATED void setType(DataType type) noexcept
Set the data type of a tensor.
Definition: NvInfer.h:285
bool isNetworkOutput() const noexcept
Whether the tensor is a network output.
Definition: NvInfer.h:316
DataType getType() const noexcept
Get the data type of a tensor.
Definition: NvInfer.h:300
apiv::VTensor * mImpl
Definition: NvInfer.h:450
virtual ~ITensor() noexcept=default
void setDimensionName(int32_t index, char const *name) noexcept
Name a dimension of an input tensor.
Definition: NvInfer.h:429
char const * getDimensionName(int32_t index) const noexcept
Get the name of an input dimension.
Definition: NvInfer.h:444
Dims getDimensions() const noexcept
Get the dimensions of a tensor.
Definition: NvInfer.h:249
TensorFormats getAllowedFormats() const noexcept
Get a bitmask of TensorFormat values that the tensor supports. For a shape tensor,...
Definition: NvInfer.h:351
Class to handle tactic timing info collected from builder.
Definition: NvInfer.h:9258
int64_t queryKeys(TimingCacheKey *keyBuffer, int64_t capacity) const noexcept
Query cache keys from Timing Cache.
Definition: NvInfer.h:9324
bool combine(ITimingCache const &inputCache, bool ignoreMismatch) noexcept
Combine input timing cache into local instance.
Definition: NvInfer.h:9295
TimingCacheValue query(TimingCacheKey const &key) const noexcept
Query value in a cache entry.
Definition: NvInfer.h:9341
virtual ~ITimingCache() noexcept=default
bool update(TimingCacheKey const &key, TimingCacheValue const &value) noexcept
Update values in a cache entry.
Definition: NvInfer.h:9363
apiv::VTimingCache * mImpl
Definition: NvInfer.h:9369
bool reset() noexcept
Empty the timing cache.
Definition: NvInfer.h:9305
Layer that represents a TopK reduction.
Definition: NvInfer.h:3447
void setK(int32_t k) noexcept
Set the static k value for the layer.
Definition: NvInfer.h:3478
void setReduceAxes(uint32_t reduceAxes) noexcept
Set which axes to reduce for the layer.
Definition: NvInfer.h:3502
TopKOperation getOperation() const noexcept
Get the operation for the layer.
Definition: NvInfer.h:3464
apiv::VTopKLayer * mImpl
Definition: NvInfer.h:3561
void setOperation(TopKOperation op) noexcept
Set the operation for the layer.
Definition: NvInfer.h:3454
bool setIndicesType(DataType type) noexcept
Set the indices type for the layer.
Definition: NvInfer.h:3543
int32_t getK() const noexcept
Get the k value for the layer.
Definition: NvInfer.h:3492
uint32_t getReduceAxes() const noexcept
Get the axes to reduce for the layer.
Definition: NvInfer.h:3512
virtual ~ITopKLayer() noexcept=default
DataType getIndicesType() const noexcept
Return the TopK layer indices type.
Definition: NvInfer.h:3555
A layer that represents a trip-count limiter.
Definition: NvInfer.h:4727
TripLimit getTripLimit() const noexcept
Get a trip limiter type.
Definition: NvInfer.h:4732
virtual ~ITripLimitLayer() noexcept=default
Layer that represents an unary operation.
Definition: NvInfer.h:2727
void setOperation(UnaryOperation op) noexcept
Set the unary operation for the layer.
Definition: NvInfer.h:2736
apiv::VUnaryLayer * mImpl
Definition: NvInfer.h:2752
UnaryOperation getOperation() const noexcept
Get the unary operation for the layer.
Definition: NvInfer.h:2746
virtual ~IUnaryLayer() noexcept=default
Layer that represents an unsqueeze operation, which reshapes the first input tensor by inserting unit...
Definition: NvInfer.h:6561
virtual ~IUnsqueezeLayer() noexcept=default
apiv::VUnsqueezeLayer * mImpl
Definition: NvInfer.h:6579
An Interface class for version control.
Definition: NvInferRuntimeBase.h:278
Version information associated with a TRT interface.
Definition: NvInferRuntimeBase.h:243
An array of weights used as a layer parameter.
Definition: NvInferRuntime.h:124
Definition: NvInferRuntimeBase.h:415
Definition: NvInferRuntime.h:1656
Definition: NvInferPluginBase.h:206
Definition: NvInfer.h:9607
virtual bool stepComplete(char const *phaseName, int32_t step) noexcept=0
Signal that a step of an optimizer phase has finished.
virtual ~IProgressMonitor() noexcept=default
IProgressMonitor()=default
virtual void phaseFinish(char const *phaseName) noexcept=0
Signal that a phase of the optimizer has finished.
virtual void phaseStart(char const *phaseName, char const *parentPhase, int32_t nbSteps) noexcept=0
Signal that a phase of the optimizer has started.
Definition: NvInferRuntime.h:666
IBuilder * createInferBuilder(ILogger &logger) noexcept
Create an instance of an IBuilder class.
Definition: NvInfer.h:10871
The TensorRT API version 1 namespace.
Definition: NvInferPluginBase.h:29
uint32_t TacticSources
Represents a collection of one or more TacticSource values combine using bitwise-OR operations.
Definition: NvInferRuntime.h:2958
ResizeSelector
The coordinate selector when resize to single pixel output.
Definition: NvInfer.h:3994
@ kFORMULA
Use formula to map the original index.
@ kUPPER
Select the upper left pixel.
EngineCapability
List of supported engine capability flows.
Definition: NvInferRuntime.h:76
MemoryPoolType
The type for memory pools used by TensorRT.
Definition: NvInfer.h:9380
ScaleMode
Controls how shift, scale and power are applied in a Scale layer.
Definition: NvInfer.h:1735
@ kUNIFORM
Identical coefficients across all elements of the tensor.
@ kCHANNEL
Per-channel coefficients.
RuntimePlatform
Describes the intended runtime platform (operating system and CPU architecture) for the execution of ...
Definition: NvInfer.h:8957
@ kNONE
Tensor is not an input or output.
HardwareCompatibilityLevel
Describes requirements of compatibility with GPU architectures other than that of the GPU on which th...
Definition: NvInfer.h:9499
@ kSAME_COMPUTE_CAPABILITY
CumulativeOperation
Enumerates the cumulative operations that may be performed by a Cumulative layer.
Definition: NvInfer.h:6595
BoundingBoxFormat
Representation of bounding box data used for the Boxes input tensor in INMSLayer.
Definition: NvInfer.h:6137
@ kCENTER_SIZES
(x_center, y_center, width, height) where (x_center, y_center) is the center point of the box
@ kCORNER_PAIRS
(x1, y1, x2, y2) where (x1, y1) and (x2, y2) are any pair of diagonal corners
constexpr int32_t EnumMax< BuilderFlag >() noexcept
Definition: NvInfer.h:9192
constexpr int32_t EnumMax< LayerType >() noexcept
Definition: NvInfer.h:121
ComputeCapability
Describes compute capability that an engine will be built for.
Definition: NvInfer.h:9548
@ kSM120
Target NVIDIA Blackwell GPU architecture (SM 12.0).
@ kSM75
Target NVIDIA Turing GPU architecture (SM 7.5).
@ kSM80
Target NVIDIA Ampere GPU architecture (SM 8.0).
@ kCURRENT
Use the compute capability of the current GPU in the environment.
@ kSM89
Target NVIDIA Ada Lovelace GPU architecture (SM 8.9).
@ kSM86
Target NVIDIA Ampere GPU architecture (SM 8.6).
UnaryOperation
Enumerates the unary operations that may be performed by a Unary layer.
Definition: NvInfer.h:2680
@ kISINF
Return true if input value equals +/- infinity for floating-point data type.
@ kCOSH
Hyperbolic cosine.
@ kACOSH
Inverse hyperbolic cosine.
@ kERF
Gauss error function.
@ kISNAN
Return true if input value is a NaN for floating-point data type.
@ kROUND
Round to nearest even for floating-point data type.
@ kATANH
Inverse hyperbolic tangent.
@ kASINH
Inverse hyperbolic sine.
@ kSIGN
Sign, If input > 0, output 1; if input < 0, output -1; if input == 0, output 0.
constexpr int32_t EnumMax< ReduceOperation >() noexcept
Definition: NvInfer.h:2789
constexpr int32_t EnumMax< TripLimit >() noexcept
Definition: NvInfer.h:4395
ActivationType
Enumerates the types of activation to perform in an activation layer.
Definition: NvInfer.h:140
@ kSELU
Selu activation: x>0 ? beta * x : beta * (alpha*exp(x) - alpha)
@ kSCALED_TANH
Scaled tanh activation: alpha*tanh(beta*x)
@ kRELU
Rectified linear activation.
@ kELU
Elu activation: x>=0 ? x : alpha * (exp(x) - 1).
@ kLEAKY_RELU
LeakyRelu activation: x>=0 ? x : alpha * x.
@ kSOFTSIGN
Softsign activation: x / (1+|x|)
@ kHARD_SIGMOID
Hard sigmoid activation: max(0, min(1, alpha*x+beta))
@ kTHRESHOLDED_RELU
Thresholded ReLU activation: x>alpha ? x : 0.
@ kSIGMOID
Sigmoid activation.
@ kCLIP
Clip activation: max(alpha, min(beta, x))
@ kGELU_TANH
GELU tanh activation: 0.5 * x * (1 + tanh(sqrt(2/pi) * (0.044715F * pow(x, 3) + x)))
@ kGELU_ERF
GELU erf activation: 0.5 * x * (1 + erf(sqrt(0.5) * x))
@ kSOFTPLUS
Parametric softplus activation: alpha*log(exp(beta*x)+1)
FillOperation
Enumerates the tensor fill operations that may performed by a fill layer.
Definition: NvInfer.h:4975
@ kRANDOM_UNIFORM
Randomly draw values from a uniform distribution.
@ kRANDOM_NORMAL
Randomly draw values from a normal distribution.
ResizeRoundMode
The rounding mode for nearest neighbor resize.
Definition: NvInfer.h:4024
@ kHALF_DOWN
Round half down.
PaddingMode
Enumerates the modes of padding to perform in convolution, deconvolution and pooling layer,...
Definition: NvInfer.h:913
@ kSAME_LOWER
Use SAME padding, with prePadding >= postPadding.
@ kEXPLICIT_ROUND_DOWN
Use explicit padding, rounding output size down.
@ kEXPLICIT_ROUND_UP
Use explicit padding, rounding output size up.
@ kSAME_UPPER
Use SAME padding, with prePadding <= postPadding.
TripLimit
Enum that describes kinds of trip limits.
Definition: NvInfer.h:4383
@ kWHILE
Tensor is a scalar of type kBOOL. Loop terminates when value is false.
@ kCOUNT
Tensor is a scalar of type kINT32 or kINT64 that contains the trip count.
uint32_t NetworkDefinitionCreationFlags
Represents one or more NetworkDefinitionCreationFlag flags using binary OR operations....
Definition: NvInfer.h:10551
PreviewFeature
Define preview features.
Definition: NvInfer.h:9455
@ kRUNTIME_ACTIVATION_RESIZE_10_10
@ kALIASED_PLUGIN_IO_10_03
TilingOptimizationLevel
Define the optimization levels for Tiling.
Definition: NvInfer.h:9574
@ kFAST
Use a fast algorithm and heuristic based strategy. Slightly increases engine build time.
@ kFULL
Increase search space even wider. Significantly increases engine build time.
constexpr int32_t EnumMax< GatherMode >() noexcept
Definition: NvInfer.h:2439
DataType
The type of weights and tensors. The datatypes other than kBOOL, kINT32, and kINT64 are "activation d...
Definition: NvInferRuntimeBase.h:145
uint32_t BuilderFlags
Represents one or more BuilderFlag values using binary OR operations, e.g., 1U << BuilderFlag::kFP16 ...
Definition: NvInfer.h:8989
DeviceType
The device that this layer/network will execute on.
Definition: NvInferRuntime.h:1350
constexpr int32_t EnumMax< ScaleMode >() noexcept
Definition: NvInfer.h:1747
LayerType
The type values of layer classes.
Definition: NvInfer.h:57
@ kGRID_SAMPLE
Grid sample layer.
@ kRAGGED_SOFTMAX
Ragged softmax layer.
@ kDECONVOLUTION
Deconvolution layer.
@ kASSERTION
Assertion layer.
@ kATTENTION_INPUT
Attention Input.
@ kMATRIX_MULTIPLY
Matrix multiply layer.
@ kCONDITION
Condition layer.
@ kCUMULATIVE
Cumulative layer.
@ kCONDITIONAL_INPUT
Conditional Input layer.
@ kIDENTITY
Identity layer.
@ kNORMALIZATION
Normalization layer.
@ kQUANTIZE
Quantize layer.
@ kCONVOLUTION
Convolution layer.
@ kPARAMETRIC_RELU
Parametric ReLU layer.
@ kATTENTION_OUTPUT
Attention Output.
@ kUNSQUEEZE
Unsqueeze Layer.
@ kCONCATENATION
Concatenation layer.
@ kREVERSE_SEQUENCE
Reverse sequence layer.
@ kROTARY_EMBEDDING
Rotary Embedding layer.
@ kRECURRENCE
Loop Recurrence layer.
@ kDEQUANTIZE
Dequantize layer.
@ kPLUGIN_V3
PluginV3 layer.
@ kITERATOR
Loop Iterator layer.
@ kTRIP_LIMIT
Loop Trip limit layer.
@ kDYNAMIC_QUANTIZE
Dynamic Quantize layer.
@ kUNARY
UnaryOp operation Layer.
@ kACTIVATION
Activation layer.
@ kELEMENTWISE
Elementwise layer.
@ kPLUGIN_V2
PluginV2 layer.
@ kLOOP_OUTPUT
Loop output layer.
@ kCONDITIONAL_OUTPUT
Conditional Output layer.
@ kCONSTANT
Constant layer.
@ kNON_ZERO
NonZero layer.
@ kKVCACHE_UPDATE
KV Cache Update layer.
SampleMode
Controls how ISliceLayer and IGridSample handle out-of-bounds coordinates.
Definition: NvInfer.h:3138
@ kCLAMP
Out of bounds indices are clamped to bounds.
@ kSTRICT_BOUNDS
Fail with error when the coordinates are out of bounds.
@ kWRAP
Coordinates wrap around periodically.
GatherMode
Control form of IGatherLayer.
Definition: NvInfer.h:2427
@ kDEFAULT
Similar to ONNX Gather.
@ kELEMENT
Similar to ONNX GatherElements.
@ kND
Similar to ONNX GatherND.
uint32_t TensorFormats
It is capable of representing one or more TensorFormat by binary OR operations, e....
Definition: NvInfer.h:132
ProfilingVerbosity
List of verbosity levels of layer information exposed in NVTX annotations and in IEngineInspector.
Definition: NvInferRuntime.h:2970
NetworkDefinitionCreationFlag
List of immutable network properties expressed at network creation time. NetworkDefinitionCreationFla...
Definition: NvInfer.h:10562
ElementWiseOperation
Enumerates the binary operations that may be performed by an ElementWise layer.
Definition: NvInfer.h:2337
@ kSUB
Subtract the second element from the first.
@ kSUM
Sum of the two elements.
@ kPROD
Product of the two elements.
@ kFLOOR_DIV
Floor division of the first element by the second.
@ kEQUAL
Check if two elements are equal.
@ kAND
Logical AND of two elements.
@ kOR
Logical OR of two elements.
@ kMIN
Minimum of the two elements.
@ kPOW
The first element to the power of the second element.
@ kLESS
Check if element in first tensor is less than corresponding element in second tensor.
@ kGREATER
Check if element in first tensor is greater than corresponding element in second tensor.
@ kXOR
Logical XOR of two elements.
@ kDIV
Divide the first element by the second.
constexpr int32_t EnumMax< SampleMode >() noexcept
Definition: NvInfer.h:3154
InterpolationMode
Enumerates various modes of interpolation.
Definition: NvInfer.h:3912
@ kNEAREST
ND (0 < N <= 8) nearest neighbor resizing.
@ kCUBIC
Supports bicubic (2D) interpolation.
@ kLINEAR
Supports linear (1D), bilinear (2D), and trilinear (3D) interpolation.
BuilderFlag
List of valid modes that the builder can enable when creating an engine from a network definition.
Definition: NvInfer.h:8999
@ kWEIGHT_STREAMING
Enable weight streaming for the current engine.
@ kDEBUG
Enable debugging of layers via synchronizing after every layer.
@ kGPU_FALLBACK
Enable layers marked to execute on GPU if layer cannot execute on DLA.
@ kSPARSE_WEIGHTS
Allow the builder to examine weights and use optimized functions when weights have suitable sparsity.
@ kERROR_ON_TIMING_CACHE_MISS
@ kEDITABLE_TIMING_CACHE
Enable editable timing cache.
@ kPREFER_PRECISION_CONSTRAINTS
@ kDISTRIBUTIVE_INDEPENDENCE
@ kSTRIP_PLAN
Strip the refittable weights from the engine plan file.
@ kMONITOR_MEMORY
Enable memory monitor during build time.
@ kDISABLE_TIMING_CACHE
Disable reuse of timing information across identical layers.
@ kDISABLE_COMPILATION_CACHE
@ kREFIT
Enable building a refittable engine.
@ kOBEY_PRECISION_CONSTRAINTS
@ kREJECT_EMPTY_ALGORITHMS
constexpr int32_t EnumMax< TopKOperation >() noexcept
Definition: NvInfer.h:3430
TENSORRTAPI nvinfer1::IPluginRegistry * getBuilderPluginRegistry(nvinfer1::EngineCapability capability) noexcept
Return the plugin registry for building a Standard engine, or nullptr if no registry exists.
constexpr int32_t EnumMax< MemoryPoolType >() noexcept
Definition: NvInfer.h:9441
TopKOperation
Enumerates the operations that may be performed by a TopK layer.
Definition: NvInfer.h:3419
ReduceOperation
Enumerates the reduce operations that may be performed by a Reduce layer.
Definition: NvInfer.h:2775
constexpr int32_t EnumMax< LoopOutput >() noexcept
Definition: NvInfer.h:4372
constexpr int32_t EnumMax< NetworkDefinitionCreationFlag >() noexcept
Definition: NvInfer.h:10581
ScatterMode
Control form of IScatterLayer.
Definition: NvInfer.h:5871
MatrixOperation
Enumerates the operations that may be performed on a tensor by IMatrixMultiplyLayer before multiplica...
Definition: NvInfer.h:3572
@ kTRANSPOSE
Like kNONE, but transpose the matrix dimensions.
ResizeCoordinateTransformation
The resize coordinate transformation function.
Definition: NvInfer.h:3940
constexpr int32_t EnumMax< UnaryOperation >() noexcept
Definition: NvInfer.h:2714
LoopOutput
Enum that describes kinds of loop outputs.
Definition: NvInfer.h:4355
@ kLAST_VALUE
Output value is value of tensor for last iteration.
@ kCONCATENATE
Output value is concatenation of values of tensor for each iteration, in forward order.
@ kREVERSE
Output value is concatenation of values of tensor for each iteration, in reverse order.
constexpr int32_t EnumMax< BoundingBoxFormat >() noexcept
Definition: NvInfer.h:6150
constexpr int32_t EnumMax< MatrixOperation >() noexcept
Definition: NvInfer.h:3600
KVCacheMode
Enumerates the KVCache modes that may be performed by a KVCacheUpdate layer.
Definition: NvInfer.h:7244
PoolingType
The type of pooling to perform in a pooling layer.
Definition: NvInfer.h:1349
@ kAVERAGE
Average over elements. If the tensor is padded, the count includes the padding.
@ kMAX
Maximum over elements.
@ kMAX_AVERAGE_BLEND
Blending between max and average pooling: (1-blendFactor)*maxPool + blendFactor*avgPool.
v_1_0::IProgressMonitor IProgressMonitor
Definition: NvInfer.h:9690
constexpr int32_t EnumMax< FillOperation >() noexcept
Definition: NvInfer.h:5006
AttentionNormalizationOp
Enumerates the operations that may be performed by the normalization in the attention subgraph.
Definition: NvInfer.h:6730
constexpr int32_t EnumMax< ScatterMode >() noexcept
Definition: NvInfer.h:5882
Represents a permutation of dimensions.
Definition: NvInfer.h:2947
Declaration of EnumMaxImpl struct to store maximum number of elements in an enumeration type.
Definition: NvInferRuntimeBase.h:128
The key to retrieve timing cache entries.
Definition: NvInfer.h:9218
Definition: NvInfer.h:9232
uint64_t tacticHash
Hash of the selected tactic.
Definition: NvInfer.h:9234
float timingMSec
Timing of this tactic in milliseconds. Negative numbers and NaN are invalid values.
Definition: NvInfer.h:9236