TensorRT推理
#include <iostream>
#include "NvInfer.h"
#include "NvOnnxParser.h"
#include "NvInferPlugin.h"
using namespace nvinfer1;
using namespace std;
int main(int argc, char** argv)
{
// create TensorRT inference engine
IBuilder* builder = createInferBuilder(gLogger);
INetworkDefinition* network = builder->createNetwork();
// create ONNX parser
IParser* parser = createParser(*network, gLogger);
parser->parseFromFile("model.onnx", -1);
// build TensorRT engine
builder->setMaxBatchSize(1);
builder->setMaxWorkspaceSize(1 << 30);
ICudaEngine* engine = builder->buildCudaEngine(*network);
// create execution context
IExecutionContext* context = engine->createExecutionContext();
// create input and output buffers
float* input = new float[3 * 224 * 224];
float* output = new float[1000];
// run inference
context->execute(1, { { 0, input } }, { { 0, output } });
// print results
for (int i = 0; i < 1000; i++)
{
&nbs