tensorrt 0.1.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 165592be0806398f6bb72846feb414eae2947e592cdba7876f91a92a1850d352
4
- data.tar.gz: 7f585077dec7ee5de44362d6b93a365ec696b112cd63085006ea6c613e392870
3
+ metadata.gz: 8a0f3db3e3097f404638a13f66c9ce734f2eece4fad78c8cb3a7c7285b9bf26d
4
+ data.tar.gz: e154c61c9e7c38b89851fb4351551232da0c06e6ffba4cb051904c0fd4ade987
5
5
  SHA512:
6
- metadata.gz: 33fff8454d89035f4785c556e13207b132ae8677839b3eee073cc69bad3ab621390b41e96fb4eb94542ec00ca29f7c67fee04e24597e971d2f4244af3060d895
7
- data.tar.gz: 45a0cf35ed380cb77a3d944f8355cd8945184b3584f137d5e6de8f0d1cf32f34778a53f2c782253e7f4e91310fdf0e8134a58db0f8cfc469670212d0890c3acb
6
+ metadata.gz: 6105c9e148a53c09426043ab400d3750b2a62e1074512451302447e3a33ffbec8b23c233d8ec93d2f4a8a4ea29a1f43cacfc34a3117f841ac27fe635ca7037ba
7
+ data.tar.gz: a84a24ba7fbe0d2da9ff111d6245b0f46ca7bad7495f6dd2ab364ea1af5c364f07930d54bc440da54f3358f26086a13d73e20b1b528ce552724febb2d4f60e53
@@ -29,9 +29,13 @@ public:
29
29
  }
30
30
  };
31
31
 
32
+ static TRTLogger& get_logger() {
33
+ static TRTLogger instance;
34
+ return instance;
35
+ }
36
+
32
37
  class TRTEngine {
33
38
  private:
34
- TRTLogger logger;
35
39
  std::unique_ptr<nvinfer1::IRuntime> runtime;
36
40
  std::unique_ptr<nvinfer1::ICudaEngine> engine;
37
41
  std::unique_ptr<nvinfer1::IExecutionContext> context;
@@ -40,6 +44,7 @@ private:
40
44
 
41
45
  public:
42
46
  TRTEngine(const std::string& engine_path, bool verbose = false) {
47
+ auto& logger = get_logger();
43
48
  logger.verbose = verbose;
44
49
 
45
50
  std::ifstream file(engine_path, std::ios::binary);
@@ -110,7 +115,21 @@ public:
110
115
 
111
116
  size_t get_tensor_bytes(const std::string& name) const {
112
117
  auto dims = engine->getTensorShape(name.c_str());
113
- size_t bytes = sizeof(float);
118
+ auto dtype = engine->getTensorDataType(name.c_str());
119
+ size_t element_size;
120
+ switch (dtype) {
121
+ case nvinfer1::DataType::kINT64: element_size = 8; break;
122
+ case nvinfer1::DataType::kFLOAT:
123
+ case nvinfer1::DataType::kINT32: element_size = 4; break;
124
+ case nvinfer1::DataType::kHALF:
125
+ case nvinfer1::DataType::kBF16: element_size = 2; break;
126
+ case nvinfer1::DataType::kINT8:
127
+ case nvinfer1::DataType::kBOOL:
128
+ case nvinfer1::DataType::kFP8:
129
+ case nvinfer1::DataType::kUINT8: element_size = 1; break;
130
+ default: element_size = 4; break;
131
+ }
132
+ size_t bytes = element_size;
114
133
  for (int i = 0; i < dims.nbDims; i++) {
115
134
  bytes *= dims.d[i];
116
135
  }
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module TensorRT
4
+ VERSION = '1.0.2'
5
+ end
data/tensorrt.gemspec CHANGED
@@ -1,9 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require_relative "lib/tensorrt/version"
4
+
3
5
  Gem::Specification.new do |spec|
4
6
  spec.name = "tensorrt"
5
- spec.version = "0.1.0"
6
- spec.author = "Pete Mtasyburka"
7
+ spec.version = TensorRT::VERSION
8
+ spec.author = "Pete Matsyburka"
7
9
  spec.email = ["pete@docuseal.com"]
8
10
 
9
11
  spec.summary = "Minimal TensorRT bindings for Ruby using Rice"
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tensorrt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
- - Pete Mtasyburka
7
+ - Pete Matsyburka
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-12-28 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: rice
@@ -79,6 +79,7 @@ files:
79
79
  - ext/tensorrt_rb/tensorrt_rb.cpp
80
80
  - lib/tensorrt.rb
81
81
  - lib/tensorrt/cuda.rb
82
+ - lib/tensorrt/version.rb
82
83
  - tensorrt.gemspec
83
84
  homepage: https://github.com/docusealco/tensorrt-rb
84
85
  licenses:
@@ -98,7 +99,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
98
99
  - !ruby/object:Gem::Version
99
100
  version: '0'
100
101
  requirements: []
101
- rubygems_version: 3.6.2
102
+ rubygems_version: 4.0.3
102
103
  specification_version: 4
103
104
  summary: Minimal TensorRT bindings for Ruby using Rice
104
105
  test_files: []