Jump to content

TensorRT: Difference between revisions

From Haidhi Wiki
Created page with "High performance inference engine. <br> pertama-tama download <code>tar.gz</code>-nya di https://developer.nvidia.com/tensorrt-rtx <syntaxhighlight lang=bash> tar -xf TensorRT-RTX-1.1.1.26.Linux.x86_64-gnu.cuda-12.9.tar.gz cd TensorRT-RTX-1.1.1.26 export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH # masukin .bashrc atau .zshrc ln -s $(realpath tensorrt_rtx) /usr/local/bin/trtexec <syntaxhighlight> Convert <syntaxhighlight lang=bash> # Konversi dasar ONNX ke TensorRT trtex..."
 
No edit summary
Line 7: Line 7:
ln -s $(realpath tensorrt_rtx) /usr/local/bin/trtexec
ln -s $(realpath tensorrt_rtx) /usr/local/bin/trtexec
<syntaxhighlight>
<syntaxhighlight>
Convert
<syntaxhighlight lang=bash>
# Konversi dasar ONNX ke TensorRT
# Konversi dasar ONNX ke TensorRT
trtexec --onnx=mobilenetv2-7.onnx --saveEngine=mobilenetv2.trt
trtexec --onnx=mobilenetv2-7.onnx --saveEngine=mobilenetv2.trt
Line 58: Line 56:
         --exportOutput=test_result.json \
         --exportOutput=test_result.json \
         --verbose
         --verbose
<syntaxhighlight>
<syntaxhighlight lang=bash>

Revision as of 13:40, 26 September 2025

High performance inference engine.
pertama-tama download tar.gz-nya di https://developer.nvidia.com/tensorrt-rtx <syntaxhighlight lang=bash> tar -xf TensorRT-RTX-1.1.1.26.Linux.x86_64-gnu.cuda-12.9.tar.gz cd TensorRT-RTX-1.1.1.26 export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH # masukin .bashrc atau .zshrc ln -s $(realpath tensorrt_rtx) /usr/local/bin/trtexec <syntaxhighlight>

  1. Konversi dasar ONNX ke TensorRT

trtexec --onnx=mobilenetv2-7.onnx --saveEngine=mobilenetv2.trt

  1. Konversi dengan optimasi tambahan (direkomendasikan)

trtexec --onnx=mobilenetv2-7.onnx \

       --saveEngine=mobilenetv2_optimized.trt \
       --minShapes=data:1x3x224x224 \
       --optShapes=data:1x3x224x224 \
       --maxShapes=data:1x3x224x224 \
       --builderOptimizationLevel=5 \
       --avgTiming=16 \
       --memPoolSize=workspace:2G \
       --verbose
  1. Konversi dengan dynamic shapes (jika perlu batch size fleksibel)

trtexec --onnx=mobilenetv2-7.onnx \

       --saveEngine=mobilenetv2_dynamic.trt \
       --minShapes=data:1x3x224x224 \
       --optShapes=data:4x3x224x224 \
       --maxShapes=data:16x3x224x224 \
       --builderOptimizationLevel=5 \
       --verbose
  1. Konversi dengan precision FP16 untuk performa lebih cepat (jika GPU mendukung)

trtexec --onnx=mobilenetv2-7.onnx \

       --saveEngine=mobilenetv2_fp16.trt \
       --minShapes=data:1x3x224x224 \
       --optShapes=data:1x3x224x224 \
       --maxShapes=data:1x3x224x224 \
       --fp16 \
       --builderOptimizationLevel=5 \
       --verbose
  1. Konversi dengan hardware compatibility (untuk portabilitas GPU)

trtexec --onnx=mobilenetv2-7.onnx \

       --saveEngine=mobilenetv2_compatible.trt \
       --minShapes=data:1x3x224x224 \
       --optShapes=data:1x3x224x224 \
       --maxShapes=data:1x3x224x224 \
       --hardwareCompatibilityLevel=ampere+ \
       --verbose
  1. Test inference setelah konversi

trtexec --loadEngine=mobilenet.trt \

       --shapes=data:1x3x224x224 \
       --iterations=100 \
       --avgRuns=10 \
       --exportOutput=test_result.json \
       --verbose

<syntaxhighlight lang=bash>