Skip to content

Commit

Permalink
Merge pull request #62 from KiwiBryn/CUDA-TensorRT-ROCm-advanced-conf…
Browse files Browse the repository at this point in the history
…iguration

Support CUDA, TensorRT & ROCm execution provider advanced settings
  • Loading branch information
dme-compunet committed Jun 23, 2024
2 parents f165449 + 4fdd9ba commit c043c0b
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 9 deletions.
13 changes: 8 additions & 5 deletions Source/YoloV8/Builder/IYoloV8Builder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,20 @@ public interface IYoloV8Builder

#if GPURELEASE

public IYoloV8Builder UseCuda(int deviceId = 0);
public IYoloV8Builder UseCuda(int deviceId = 0);
public IYoloV8Builder UseCuda(OrtCUDAProviderOptions options);

public IYoloV8Builder UseRocm(int deviceId = 0);
public IYoloV8Builder UseRocm(int deviceId = 0);
public IYoloV8Builder UseRocm(OrtROCMProviderOptions options);

public IYoloV8Builder UseTensorrt(int deviceId = 0);
public IYoloV8Builder UseTensorrt(int deviceId = 0);
public IYoloV8Builder UseTensorrt(OrtTensorRTProviderOptions options);

public IYoloV8Builder UseTvm(string settings = "");
public IYoloV8Builder UseTvm(string settings = "");

#endif

public IYoloV8Builder WithMetadata(YoloV8Metadata metadata);
public IYoloV8Builder WithMetadata(YoloV8Metadata metadata);

public IYoloV8Builder WithConfiguration(Action<YoloV8Configuration> configure);

Expand Down
11 changes: 7 additions & 4 deletions Source/YoloV8/Builder/YoloV8Builder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,13 +39,16 @@ public IYoloV8Builder UseOnnxModel(BinarySelector model)

#if GPURELEASE

public IYoloV8Builder UseCuda(int deviceId) => WithSessionOptions(SessionOptions.MakeSessionOptionWithCudaProvider(deviceId));
public IYoloV8Builder UseCuda(int deviceId) => WithSessionOptions(SessionOptions.MakeSessionOptionWithCudaProvider(deviceId));
public IYoloV8Builder UseCuda(OrtCUDAProviderOptions options) => WithSessionOptions(SessionOptions.MakeSessionOptionWithCudaProvider(options));

public IYoloV8Builder UseRocm(int deviceId) => WithSessionOptions(SessionOptions.MakeSessionOptionWithRocmProvider(deviceId));
public IYoloV8Builder UseRocm(int deviceId) => WithSessionOptions(SessionOptions.MakeSessionOptionWithRocmProvider(deviceId));
public IYoloV8Builder UseRocm(OrtROCMProviderOptions options) => WithSessionOptions(SessionOptions.MakeSessionOptionWithRocmProvider(options));

public IYoloV8Builder UseTensorrt(int deviceId) => WithSessionOptions(SessionOptions.MakeSessionOptionWithTensorrtProvider(deviceId));
public IYoloV8Builder UseTensorrt(int deviceId) => WithSessionOptions(SessionOptions.MakeSessionOptionWithTensorrtProvider(deviceId));
public IYoloV8Builder UseTensorrt(OrtTensorRTProviderOptions options) => WithSessionOptions(SessionOptions.MakeSessionOptionWithTensorrtProvider(options));

public IYoloV8Builder UseTvm(string settings = "") => WithSessionOptions(SessionOptions.MakeSessionOptionWithTvmProvider(settings));
public IYoloV8Builder UseTvm(string settings = "") => WithSessionOptions(SessionOptions.MakeSessionOptionWithTvmProvider(settings));

#endif

Expand Down

0 comments on commit c043c0b

Please sign in to comment.