ReUseX
0.0.5
3D Point Cloud Processing for Building Reuse
Toggle main menu visibility
Loading...
Searching...
No Matches
tensorrt.hpp
Go to the documentation of this file.
1
#pragma once
2
#include <memory>
3
#include <string>
4
#include <unordered_map>
5
#include <vector>
6
7
namespace
reusex::vision::tensor_rt::TensorRT
{
8
9
enum class
DType
:
int
{
10
FLOAT
= 0,
11
HALF
= 1,
12
INT8
= 2,
13
INT32
= 3,
14
BOOL
= 4,
15
UINT8
= 5,
16
FP8
= 6,
17
BF16
= 7,
18
INT64
= 8,
19
INT4
= 9,
20
NONE
= -1
21
};
22
23
class
Engine
{
24
public
:
25
virtual
~Engine
() =
default
;
26
virtual
bool
27
forward
(
const
std::unordered_map<std::string, const void *> &bindings,
28
void
*stream =
nullptr
,
void
*input_consum_event =
nullptr
) = 0;
29
virtual
int
index
(
const
std::string &name) = 0;
30
virtual
std::vector<int>
run_dims
(
const
std::string &name) = 0;
31
virtual
std::vector<int>
run_dims
(
int
ibinding) = 0;
32
virtual
std::vector<int>
static_dims
(
const
std::string &name) = 0;
33
virtual
std::vector<int>
static_dims
(
int
ibinding) = 0;
34
virtual
int
numel
(
const
std::string &name) = 0;
35
virtual
int
numel
(
int
ibinding) = 0;
36
virtual
int
num_bindings
() = 0;
37
virtual
bool
is_input
(
int
ibinding) = 0;
38
virtual
bool
is_input
(
const
std::string &name) = 0;
39
virtual
bool
set_run_dims
(
const
std::string &name,
40
const
std::vector<int> &dims) = 0;
41
virtual
bool
set_run_dims
(
int
ibinding,
const
std::vector<int> &dims) = 0;
42
virtual
DType
dtype
(
const
std::string &name) = 0;
43
virtual
DType
dtype
(
int
ibinding) = 0;
44
virtual
bool
has_dynamic_dim
() = 0;
45
virtual
void
print
(
const
char
*name =
"TensorRT-Engine"
) = 0;
46
};
47
48
std::shared_ptr<Engine>
load
(
const
std::string &file);
49
};
// namespace reusex::vision::tensor_rt::TensorRT
reusex::vision::tensor_rt::TensorRT::Engine
Definition
tensorrt.hpp:23
reusex::vision::tensor_rt::TensorRT::Engine::run_dims
virtual std::vector< int > run_dims(const std::string &name)=0
reusex::vision::tensor_rt::TensorRT::Engine::numel
virtual int numel(const std::string &name)=0
reusex::vision::tensor_rt::TensorRT::Engine::set_run_dims
virtual bool set_run_dims(const std::string &name, const std::vector< int > &dims)=0
reusex::vision::tensor_rt::TensorRT::Engine::dtype
virtual DType dtype(const std::string &name)=0
reusex::vision::tensor_rt::TensorRT::Engine::print
virtual void print(const char *name="TensorRT-Engine")=0
reusex::vision::tensor_rt::TensorRT::Engine::forward
virtual bool forward(const std::unordered_map< std::string, const void * > &bindings, void *stream=nullptr, void *input_consum_event=nullptr)=0
reusex::vision::tensor_rt::TensorRT::Engine::index
virtual int index(const std::string &name)=0
reusex::vision::tensor_rt::TensorRT::Engine::set_run_dims
virtual bool set_run_dims(int ibinding, const std::vector< int > &dims)=0
reusex::vision::tensor_rt::TensorRT::Engine::static_dims
virtual std::vector< int > static_dims(int ibinding)=0
reusex::vision::tensor_rt::TensorRT::Engine::static_dims
virtual std::vector< int > static_dims(const std::string &name)=0
reusex::vision::tensor_rt::TensorRT::Engine::num_bindings
virtual int num_bindings()=0
reusex::vision::tensor_rt::TensorRT::Engine::run_dims
virtual std::vector< int > run_dims(int ibinding)=0
reusex::vision::tensor_rt::TensorRT::Engine::dtype
virtual DType dtype(int ibinding)=0
reusex::vision::tensor_rt::TensorRT::Engine::numel
virtual int numel(int ibinding)=0
reusex::vision::tensor_rt::TensorRT::Engine::is_input
virtual bool is_input(const std::string &name)=0
reusex::vision::tensor_rt::TensorRT::Engine::~Engine
virtual ~Engine()=default
reusex::vision::tensor_rt::TensorRT::Engine::is_input
virtual bool is_input(int ibinding)=0
reusex::vision::tensor_rt::TensorRT::Engine::has_dynamic_dim
virtual bool has_dynamic_dim()=0
reusex::vision::tensor_rt::TensorRT
Definition
tensorrt.hpp:7
reusex::vision::tensor_rt::TensorRT::DType
DType
Definition
tensorrt.hpp:9
reusex::vision::tensor_rt::TensorRT::DType::INT64
@ INT64
Definition
tensorrt.hpp:18
reusex::vision::tensor_rt::TensorRT::DType::INT32
@ INT32
Definition
tensorrt.hpp:13
reusex::vision::tensor_rt::TensorRT::DType::HALF
@ HALF
Definition
tensorrt.hpp:11
reusex::vision::tensor_rt::TensorRT::DType::INT4
@ INT4
Definition
tensorrt.hpp:19
reusex::vision::tensor_rt::TensorRT::DType::BOOL
@ BOOL
Definition
tensorrt.hpp:14
reusex::vision::tensor_rt::TensorRT::DType::NONE
@ NONE
Definition
tensorrt.hpp:20
reusex::vision::tensor_rt::TensorRT::DType::FP8
@ FP8
Definition
tensorrt.hpp:16
reusex::vision::tensor_rt::TensorRT::DType::FLOAT
@ FLOAT
Definition
tensorrt.hpp:10
reusex::vision::tensor_rt::TensorRT::DType::UINT8
@ UINT8
Definition
tensorrt.hpp:15
reusex::vision::tensor_rt::TensorRT::DType::INT8
@ INT8
Definition
tensorrt.hpp:12
reusex::vision::tensor_rt::TensorRT::DType::BF16
@ BF16
Definition
tensorrt.hpp:17
reusex::vision::tensor_rt::TensorRT::load
std::shared_ptr< Engine > load(const std::string &file)
libs
reusex
include
vision
tensor_rt
common
tensorrt.hpp
Generated by
1.17.0