KITT STT · 2026-09-08 · v5.10 / LoRA v2 REBASE 後重測

Orin 與 RTX 4090
三後端效能與記憶體

正文全部使用這次重測數據:CUDA、Online TRT、Offline TRT 都跑 3/6/15 秒的模型與完整 STT 服務。舊數字只放在 4090 的歷史附錄,Orin 沒有混入上一輪數據。

目前基準:a24a2fe(已 rebase 至 origin/main@740950f)+尚未 commit 的 Offline TRT relative-context 修正。這個修正讓 ONNX Runtime 1.24 接受離線 bundle 的相對 cache 路徑,已在 Orin 實機 builder 與正式 rollout 驗證。

FP323 / 6 / 15 秒bulk / realtimeRAM / VRAM108 / 108 主服務結果成功84 / 84 個 15 秒複測成功正式 Orin:Offline TRT

1 · 結論與選型

RTX 4090 Offline TRT · bulk-32.2% ~ -5.6%相對同音長 CUDA
Orin Offline TRT · bulk-33.5% ~ -9.7%相對同音長 CUDA
推論後 cgroup 節省Orin 55.5%Offline TRT 相對 Online TRT
主要完整服務結果108 / 108兩平台 × 三後端 × 三輪

Orin 的上線選型是 Offline TRT。它在 bulk 3/6/15 秒都比 CUDA 快,且推論後的 cgroup current 是 3841 MiB,較 Online TRT 的 8630 MiB 少 55.5%。4090 也呈現相同記憶體方向,Offline TRT 較 Online TRT 少 60.0%。

複測後的差異:4090 舊資料的 15 秒 50–60% TRT 加速沒有重現;七輪複測是 bulk 約 7%、realtime 約 11–15%。Orin 的 15 秒 realtime 則在約 180 與 222 ms 間形成雙峰,Online/Offline 都會出現,因此不能用單次中位數宣稱兩者誰較快;bulk 約 220 ms 的結果穩定。

完整服務 final ASR latency 與直接 recognizer 的數值不相等,因為計時範圍不同。第 3、4 節量 accept_waveform + decode_stream,第 5 節從 VAD stop 後的 final ASR 路徑開始量。

2 · 測試方法與邊界

2.1 同一份 code 與音訊

  • branch:feat/orin-tensorrt;HEAD:a24a2fee4dfd;上游:740950fe61de
  • 兩平台的 LoRA v2 model.onnx 與 tokens SHA-256 相同;3/6/15 秒 WAV 也固定並記錄 hash。
  • 4090 使用本次建出的 x86 image;Orin 使用同版 ARM64 runtime/builder image。TensorRT engine 都在各自目標 GPU 建立。
  • 只比較同一平台內的 CUDA/Online TRT/Offline TRT;不以絕對毫秒排名兩台不同硬體。

2.2 重複與計時

  • 模型 graph 與 provider proof 分開跑;direct recognizer 每個音長使用新程序。
  • 主服務每後端跑 3 輪,單一 WebSocket 依序送 3/6/15 秒,bulk 與 realtime 各一組;圖表採三輪中位數。兩台另各跑每後端 7 次 15 秒 bulk/realtime。
  • 所有主服務與七輪複測統一使用 warmup=0,後端順序在複測改為 Offline → CUDA → Online,降低固定順序偏差。
  • 滑鼠 hover 會顯示同平台、同音長的 CUDA/Online TRT/Offline TRT 毫秒、相對 CUDA 百分比與速度倍數。
使用的腳本與實際手法
腳本用在哪裡手法
recheck2-4090-full-warm0.shRTX 4090 主服務以本次 x86 runtime image 對三後端各跑三輪 3/6/15 秒與 RAM/VRAM。
recheck2-4090-15s.shRTX 4090 不一致複測每個後端建立獨立新服務,連續跑 7 次 15 秒 bulk/realtime。
run-orin-warm0.pyOrin 主服務CUDA、Online TRT、Offline TRT 各 3 輪 3/6/15 秒 bulk/realtime;warmup=0。
recheck2-orin-15s.pyOrin 不一致複測以暫用 Pod 對三後端各連續跑 7 次 15 秒,完成後保留正式 Offline deployment。
run-orin.pyprovider_recheck.py模型層/provider proof直接量 graph、recognizer、provider profiler 與 target-built Offline bundle。
deploy.shbuild_offline_trt_bundle.py正式 Orin套用 Offline overlay,builder Job 比對指紋後建置或重用 target-built bundle,Deployment 等待完成標記才啟動。
service-memory.py兩平台完整服務讀 PID 1 的 statussmaps_rollup 與 cgroup ready/end;4090 另讀 nvidia-smi 整卡 VRAM。

Direct recognizer 是 decode 指標,不是純 GPU kernel 時間;完整服務的 server_latency_ms 是 VAD stop 後的 final ASR,兩者不能直接換算。Recognizer JSON 雖保留 warmup=10 參數欄位,該分支實際只先做 1 次 3 秒 decode,再收樣本。

3 · RTX 4090 模型後端

Recognizer latency 的範圍:accept_waveform + decode_stream,包括音訊送入與 feature preparation,不含 WebSocket、VAD、ITN 與模型載入。固定 shape graph 表最接近單純 ORT 模型圖的比較。

0132639523s6s15smsCUDAOnline TRTOffline TRT3 秒 · 相對 CUDA CUDA 12.36 ms 基準 · 1.00× Online TRT 16.44 ms +33.0% · 0.75× Offline TRT 16.32 ms +32.1% · 0.76×6 秒 · 相對 CUDA CUDA 16.92 ms 基準 · 1.00× Online TRT 21.71 ms +28.3% · 0.78× Offline TRT 17.04 ms +0.7% · 0.99×15 秒 · 相對 CUDA CUDA 33.49 ms 基準 · 1.00× Online TRT 29.02 ms -13.4% · 1.15× Offline TRT 46.47 ms +38.8% · 0.72×

三條線顯示本輪直接 recognizer 的 p50;hover 可看每個音長的三後端值與相對 CUDA。

精確數值
音長後端p50 msp95 ms載入 s相對 CUDA
3sCUDA12.3612.431.989+0.0%
3sOnline TRT16.4416.5647.980+33.0%
3sOffline TRT16.3216.542.708+32.1%
6sCUDA16.9224.301.319+0.0%
6sOnline TRT21.7129.8811.307+28.3%
6sOffline TRT17.0423.522.531+0.7%
15sCUDA33.4945.212.254+0.0%
15sOnline TRT29.0234.4710.720-13.4%
15sOffline TRT46.4762.501.777+38.8%
固定 shape graph 與 provider 證明
後端T=50 p50T=100 p50T=250 p50profiler 節點
CUDA8.548.9411.34{'CUDAExecutionProvider': 2908, 'CPUExecutionProvider': 785}
Online TRT9.026.1410.23{'TensorrtExecutionProvider': 1}
Offline TRT6.095.839.76{'TensorrtExecutionProvider': 1}

4 · Orin AGX 模型後端

Orin 的 direct recognizer 在 3/6/15 秒均由 Online TRT/Offline TRT 低於 CUDA;Offline 3、6、15 秒分別相對 CUDA -38.5%、-27.3%、-8.7%。

0254974993s6s15smsCUDAOnline TRTOffline TRT3 秒 · 相對 CUDA CUDA 45.15 ms 基準 · 1.00× Online TRT 28.66 ms -36.5% · 1.58× Offline TRT 27.78 ms -38.5% · 1.63×6 秒 · 相對 CUDA CUDA 54.48 ms 基準 · 1.00× Online TRT 40.08 ms -26.4% · 1.36× Offline TRT 39.62 ms -27.3% · 1.37×15 秒 · 相對 CUDA CUDA 88.11 ms 基準 · 1.00× Online TRT 81.25 ms -7.8% · 1.08× Offline TRT 80.49 ms -8.7% · 1.09×

每個音長的新程序 direct recognizer p50;hover 以 CUDA 為固定基準。

精確數值
音長後端p50 msp95 ms載入 s相對 CUDA
3sCUDA45.1545.203.309+0.0%
3sOnline TRT28.6628.8369.029-36.5%
3sOffline TRT27.7828.058.038-38.5%
6sCUDA54.4879.443.000+0.0%
6sOnline TRT40.0855.0316.752-26.4%
6sOffline TRT39.6252.007.964-27.3%
15sCUDA88.11106.342.992+0.0%
15sOnline TRT81.2588.9116.424-7.8%
15sOffline TRT80.4985.627.950-8.7%
固定 shape graph 與 provider 證明
後端T=50 p50T=100 p50T=250 p50profiler 節點
CUDA36.7237.3644.94{'CUDAExecutionProvider': 2908, 'CPUExecutionProvider': 785}
Online TRT20.3520.9840.21{'TensorrtExecutionProvider': 1}
Offline TRT19.2620.1837.88{'TensorrtExecutionProvider': 1}

以同一支 build_offline_trt_bundle.py --force 完整建置並驗證:Orin 80.78 秒;4090 27.57 秒。兩者 runtime 與 GPU 架構不同;這是產生平台專屬 EP context/engine 的一次性成本,不是每次服務啟動成本。

5 · 完整 STT 服務的 final ASR latency

這裡是服務 final ASR,不是第 3、4 節的 direct recognizer。計時從 VAD stop 後進入 final ASR,包含尾段處理、prep、lock、decode 與 ITN;不含先前 realtime interim 累積與送音時間。因此應以各節自身的 CUDA 基準比較,不能把兩節百分比相乘或相減。

5.1 RTX 4090

0234669923s6s15smsCUDAOnline TRTOffline TRT3 秒 · 相對 CUDA CUDA 31.71 ms 基準 · 1.00× Online TRT 23.24 ms -26.7% · 1.36× Offline TRT 21.50 ms -32.2% · 1.47×6 秒 · 相對 CUDA CUDA 42.17 ms 基準 · 1.00× Online TRT 32.44 ms -23.1% · 1.30× Offline TRT 34.56 ms -18.0% · 1.22×15 秒 · 相對 CUDA CUDA 82.45 ms 基準 · 1.00× Online TRT 75.49 ms -8.4% · 1.09× Offline TRT 77.84 ms -5.6% · 1.06×

三輪 warmup=0 主測;TRT 的 15 秒優勢縮小,七輪結果見第 7 節。

0204060803s6s15smsCUDAOnline TRTOffline TRT3 秒 · 相對 CUDA CUDA 38.60 ms 基準 · 1.00× Online TRT 28.92 ms -25.1% · 1.33× Offline TRT 26.75 ms -30.7% · 1.44×6 秒 · 相對 CUDA CUDA 49.53 ms 基準 · 1.00× Online TRT 34.59 ms -30.2% · 1.43× Offline TRT 42.81 ms -13.6% · 1.16×15 秒 · 相對 CUDA CUDA 70.24 ms 基準 · 1.00× Online TRT 71.21 ms +1.4% · 0.99× Offline TRT 67.04 ms -4.6% · 1.05×

三輪 warmup=0 主測;15 秒三後端接近,七輪用來判斷穩定性。

精確數值
送音音長後端三輪中位數 ms範圍 ms相對 CUDA
bulk3sCUDA31.7130.42–35.40+0.0%
bulk3sOnline TRT23.2422.02–25.36-26.7%
bulk3sOffline TRT21.5021.28–24.46-32.2%
bulk6sCUDA42.1742.06–46.23+0.0%
bulk6sOnline TRT32.4432.32–34.89-23.1%
bulk6sOffline TRT34.5633.07–35.88-18.0%
bulk15sCUDA82.4579.73–88.65+0.0%
bulk15sOnline TRT75.4975.09–83.16-8.4%
bulk15sOffline TRT77.8474.93–102.36-5.6%
realtime3sCUDA38.6031.54–45.38+0.0%
realtime3sOnline TRT28.9225.20–30.20-25.1%
realtime3sOffline TRT26.7520.02–36.02-30.7%
realtime6sCUDA49.5344.10–49.96+0.0%
realtime6sOnline TRT34.5932.39–46.54-30.2%
realtime6sOffline TRT42.8139.86–51.43-13.6%
realtime15sCUDA70.2469.04–75.13+0.0%
realtime15sOnline TRT71.2169.04–75.40+1.4%
realtime15sOffline TRT67.0465.81–68.36-4.6%

5.2 Orin AGX

0681362042723s6s15smsCUDAOnline TRTOffline TRT3 秒 · 相對 CUDA CUDA 126.92 ms 基準 · 1.00× Online TRT 84.60 ms -33.3% · 1.50× Offline TRT 84.44 ms -33.5% · 1.50×6 秒 · 相對 CUDA CUDA 152.80 ms 基準 · 1.00× Online TRT 103.63 ms -32.2% · 1.47× Offline TRT 110.24 ms -27.9% · 1.39×15 秒 · 相對 CUDA CUDA 243.12 ms 基準 · 1.00× Online TRT 220.80 ms -9.2% · 1.10× Offline TRT 219.64 ms -9.7% · 1.11×

Offline TRT 在三個 bulk 音長的中位數均低於 CUDA。

0631251882513s6s15smsCUDAOnline TRTOffline TRT3 秒 · 相對 CUDA CUDA 123.29 ms 基準 · 1.00× Online TRT 68.59 ms -44.4% · 1.80× Offline TRT 68.73 ms -44.3% · 1.79×6 秒 · 相對 CUDA CUDA 133.25 ms 基準 · 1.00× Online TRT 90.65 ms -32.0% · 1.47× Offline TRT 91.40 ms -31.4% · 1.46×15 秒 · 相對 CUDA CUDA 208.59 ms 基準 · 1.00× Online TRT 180.86 ms -13.3% · 1.15× Offline TRT 223.92 ms +7.3% · 0.93×

15 秒會落在約 180/222 ms 兩群;第 7 節列出七輪範圍。

精確數值
送音音長後端三輪中位數 ms範圍 ms相對 CUDA
bulk3sCUDA126.92124.69–127.40+0.0%
bulk3sOnline TRT84.6084.25–84.77-33.3%
bulk3sOffline TRT84.4477.04–85.09-33.5%
bulk6sCUDA152.80152.50–158.44+0.0%
bulk6sOnline TRT103.63103.50–109.73-32.2%
bulk6sOffline TRT110.24105.21–110.66-27.9%
bulk15sCUDA243.12241.65–252.72+0.0%
bulk15sOnline TRT220.80219.67–235.42-9.2%
bulk15sOffline TRT219.64218.08–233.67-9.7%
realtime3sCUDA123.29121.53–135.33+0.0%
realtime3sOnline TRT68.5964.88–72.12-44.4%
realtime3sOffline TRT68.7368.22–69.53-44.3%
realtime6sCUDA133.25133.20–153.32+0.0%
realtime6sOnline TRT90.6590.14–91.05-32.0%
realtime6sOffline TRT91.4091.19–91.54-31.4%
realtime15sCUDA208.59208.51–247.52+0.0%
realtime15sOnline TRT180.86179.69–224.94-13.3%
realtime15sOffline TRT223.92179.19–225.47+7.3%

6 · 記憶體:RAM / VRAM,不含 disk

主圖先看 cgroup current:它是整個容器現在被計帳的 RAM,包含檔案快取。可用按鈕切換「推論後」與「載入完成」;PSS、RSS、VmHWM 與 cgroup peak 留在詳細表與第二張圖。

6.1 RTX 4090 完整服務

MiBCUDACUDA:2014.01 MiB2014Online TRTOnline TRT:7643.71 MiB7644Offline TRTOffline TRT:3058.70 MiB3059

推論後時,以 CUDA 的容器計帳記憶體最低;同一張固定尺度可直接比較切換前後。

MiBCUDACUDA:1901.11 MiB1901Online TRTOnline TRT:7540.01 MiB7540Offline TRTOffline TRT:2949.81 MiB2950

載入完成時,以 CUDA 的容器計帳記憶體最低;同一張固定尺度可直接比較切換前後。

MiBCUDA · PSSCUDA · PSS:2371.13 MiB2371CUDA · RSSCUDA · RSS:2378.18 MiB2378CUDA · VmHWMCUDA · VmHWM:2411.01 MiB2411Online TRT · PSSOnline TRT · PSS:9057.88 MiB9058Online TRT · RSSOnline TRT · RSS:9065.01 MiB9065Online TRT · VmHWMOnline TRT · VmHWM:9638.14 MiB9638Offline TRT · PSSOffline TRT · PSS:2102.94 MiB2103Offline TRT · RSSOffline TRT · RSS:2110.12 MiB2110Offline TRT · VmHWMOffline TRT · VmHWM:2917.75 MiB2918

PSS、RSS 與程序峰值的口徑不同;容量決策先看 cgroup current,再用這張圖判讀程序共享頁與歷史峰值。

完整記憶體數值
後端時點cgroup currentPSSRSSVmHWMcgroup peak
CUDA載入完成1901.112258.272265.412359.092001.46
CUDA推論後2014.012371.132378.182411.012411.02
Online TRT載入完成7540.018955.078962.129638.148225.70
Online TRT推論後7643.719057.889065.019638.148225.70
Offline TRT載入完成2949.811994.222001.322917.753875.99
Offline TRT推論後3058.702102.942110.122917.753875.99

6.2 Orin AGX 完整服務

MiBCUDACUDA:3912.67 MiB3913Online TRTOnline TRT:8629.85 MiB8630Offline TRTOffline TRT:3840.65 MiB3841

推論後時,以 Offline TRT 的容器計帳記憶體最低;同一張固定尺度可直接比較切換前後。

MiBCUDACUDA:3788.12 MiB3788Online TRTOnline TRT:8453.74 MiB8454Offline TRTOffline TRT:3653.68 MiB3654

載入完成時,以 Offline TRT 的容器計帳記憶體最低;同一張固定尺度可直接比較切換前後。

MiBCUDA · PSSCUDA · PSS:1744.22 MiB1744CUDA · RSSCUDA · RSS:4010.12 MiB4010CUDA · VmHWMCUDA · VmHWM:4053.75 MiB4054Online TRT · PSSOnline TRT · PSS:6412.33 MiB6412Online TRT · RSSOnline TRT · RSS:8905.12 MiB8905Online TRT · VmHWMOnline TRT · VmHWM:9447.70 MiB9448Offline TRT · PSSOffline TRT · PSS:1570.06 MiB1570Offline TRT · RSSOffline TRT · RSS:3990.62 MiB3991Offline TRT · VmHWMOffline TRT · VmHWM:4286.32 MiB4286

PSS、RSS 與程序峰值的口徑不同;容量決策先看 cgroup current,再用這張圖判讀程序共享頁與歷史峰值。

完整記憶體數值
後端時點cgroup currentPSSRSSVmHWMcgroup peak
CUDA載入完成3788.121640.823884.713908.00kernel 未提供
CUDA推論後3912.671744.224010.124053.75kernel 未提供
Online TRT載入完成8453.746309.408726.879447.70kernel 未提供
Online TRT推論後8629.856412.338905.129447.70kernel 未提供
Offline TRT載入完成3653.681457.863803.244286.32kernel 未提供
Offline TRT推論後3840.651570.063990.624286.32kernel 未提供

6.3 模型後端本身:直接 recognizer

MiBCUDACUDA:1104.79 MiB1105Online TRTOnline TRT:5834.54 MiB5835Offline TRTOffline TRT:588.89 MiB589

每個音長使用新程序;圖中取 3、6、15 秒三個 end 快照的中位數,能看出模型後端本身的容器記憶體成本。

直接 recognizer 記憶體中位數
後端cgroup currentPSSRSSVmHWM
CUDA1104.791318.781323.221354.52
Online TRT5834.547532.297537.369411.94
Offline TRT588.89963.31968.431571.82
MiBCUDACUDA:2187.54 MiB2188Online TRTOnline TRT:7759.07 MiB7759Offline TRTOffline TRT:850.67 MiB851

每個音長使用新程序;圖中取 3、6、15 秒三個 end 快照的中位數,能看出模型後端本身的容器記憶體成本。

直接 recognizer 記憶體中位數
後端cgroup currentPSSRSSVmHWM
CUDA2187.541097.732299.202348.36
Online TRT7759.075522.387027.828613.00
Offline TRT850.67864.862174.702280.00

6.4 首次建 engine、暖快取與 Offline 載入

平台Online TRT 空 cache 載入 sOnline TRT 暖 cache 載入 sOffline artifact 冷建 sOffline TRT 載入 s
409047.98011.01427.5702.531
Orin69.02916.58880.7797.964
Orin Online TRT cold-cache 完整服務記憶體
時點cgroup current MiBPSS MiBRSS MiBVmHWM MiB
載入完成9157.186200.108736.509380.16
首次 3 秒推論後9210.146223.588787.199380.16

6.5 RTX 4090 整卡 VRAM

MiBCUDACUDA:2495.00 MiB2495Online TRTOnline TRT:2659.00 MiB2659Offline TRTOffline TRT:2653.00 MiB2653

整卡 VRAM 含背景程序,所以圖表只把同測項前後差當近似增量。

VRAM 原始快照
後端測前 MiB推論後 MiB增量
CUDA25405035+2495
Online TRT25405199+2659
Offline TRT25405193+2653

6.6 指標、平台與手法

指標RTX 4090Orin測什麼/怎麼測
cgroup current整個容器目前被計帳的 RAM,含檔案快取;讀 /sys/fs/cgroup/memory.current,主圖優先看這個。
PSS程序按比例分攤共享頁;讀 PID 1 的 smaps_rollup
RSS程序常駐 RAM,共享頁在每個程序都完整計入;讀 PID 1 的 VmRSS
VmHWM程序啟動至今最高 RSS;讀 PID 1 的 VmHWM
cgroup peakkernel 未提供容器歷史最高計帳 RAM;4090 讀 memory.peak,Orin 不填零。
MemTotal / MemAvailable整台主機總 RAM 與當下可用 RAM,只作背景交叉檢查。
GPU memory.used不另拆4090 以 nvidia-smi 讀整卡 VRAM;Orin CPU/GPU 共用 LPDDR,沒有獨立 per-process VRAM。

7 · 新舊差異與不一致

正文只使用本輪 rebase 後的 v5.10/LoRA v2 數據。歷史附錄僅保留上一輪 cycle 的 4090 CUDA/Online TRT,用來看重測差異;它不是這輪的主結論。Orin 沒有歷史數據混入。

4090 上一輪與本輪逐項差異
後端送音音長上一輪 ms本輪 ms本輪差異
CUDAbulk3s22.4531.71+41.2%
CUDAbulk6s26.8342.17+57.2%
CUDAbulk15s72.6482.45+13.5%
CUDArealtime3s28.2138.60+36.8%
CUDArealtime6s30.5549.53+62.1%
CUDArealtime15s74.5570.24-5.8%
Online TRTbulk3s13.3423.24+74.2%
Online TRTbulk6s17.9732.44+80.5%
Online TRTbulk15s75.1075.49+0.5%
Online TRTrealtime3s17.9828.92+60.8%
Online TRTrealtime6s13.3734.59+158.7%
Online TRTrealtime15s54.4471.21+30.8%

7.1 15 秒七輪控制複測

平台送音後端中位數 ms範圍 msMAD ms相對 CUDA
RTX 4090bulkCUDA81.0379.65–89.051.11+0.0%
RTX 4090bulkOnline TRT75.1774.48–82.840.52-7.2%
RTX 4090bulkOffline TRT75.4274.63–82.530.40-6.9%
RTX 4090realtimeCUDA80.7769.41–86.083.39+0.0%
RTX 4090realtimeOnline TRT68.5363.07–76.283.62-15.2%
RTX 4090realtimeOffline TRT71.7062.05–76.564.17-11.2%
OrinbulkCUDA238.19237.91–251.850.28+0.0%
OrinbulkOnline TRT220.64219.62–232.860.43-7.4%
OrinbulkOffline TRT220.11219.28–234.380.36-7.6%
OrinrealtimeCUDA205.78203.02–238.211.37+0.0%
OrinrealtimeOnline TRT221.46180.38–223.922.46+7.6%
OrinrealtimeOffline TRT181.75178.95–226.780.48-11.7%

RTX 4090:舊主測 CUDA 15 秒曾漂到約 189 ms,造成 50–60% 的表面加速。這次相同 warmup、獨立新服務與輪替順序後,七輪 bulk 的 Online/Offline TRT 分別為 -7.2%/-6.9%,realtime 為 -15.2%/-11.2%;TRT 仍快,但幅度較小。

Orin:Online TRT realtime 七輪是 180.38, 181.31, 221.46, 222.14, 223.92, 181.39, 222.45 ms;Offline TRT 是 221.66, 181.64, 181.61, 181.75, 226.78, 182.23, 178.95 ms。兩者都出現約 180/222 ms 雙峰,中位數由兩群各自出現幾次決定;目前只能說 Offline/Online bulk 都穩定快於 CUDA,不能用這組 realtime 排名 Online 與 Offline。

MAD 是相對中位數的絕對偏差中位數。完整原始樣本、失敗嘗試與排除原因都保留在下載 JSON。

8 · Build、部署與驗證

項目時間說明
4090 基礎 image build19.85 s本輪 x86 基礎 image build。
4090 TensorRT 測試層334.23 s安裝 TensorRT 的測試 image layer。
Orin Online TRT skaffold deploy -p orin-online33.78 sSkaffold rollout 33.167 s;這筆不是完整 deploy.sh
Orin Offline TRT 首次實機 build/deploy374.74 s包含 target builder Job;Skaffold rollout 154.742 s。
Orin Offline TRT 最終 deploy-only58.03 sbundle 指紋相同而重用;Skaffold rollout 25.539 s。

Dockerfile.orin 的 sherpa-onnx build jobs 使用 max(1, floor(nproc / 2));本輪量測 image 的依賴層有 cache 命中,不能從 deploy 總時間推導這項變更的加速比例。

最終正式 Orin:registry.devops.foxconn.com/srdc/agent/stt/kitt-stt:v5.10.0-remeasure-20260908-relative-context-wip-orin;Pod Running,restart 0,Offline init exit {'wait-offline-trt-bundle': 0}。bundle .complete 已存在,context model 12,260 bytes,sm87 engine 986,486,764 bytes。最終 production smoke:bulk 3 秒 ok、realtime 3 秒 ok。

8.1 Orin Online/Offline YAML 與 bundle

deployment/k3s-orin/base 放共用 Deployment/Service/Route;overlays/online 掛 Online TRT config;overlays/offline 加入 builder Job、等待 init container 與 Offline bundle mount。切換由 YAML overlay/Skaffold profile 決定,deploy.sh 不在 runtime config 內硬改 provider。

Offline bundle 的模型、config、builder、ORT、TensorRT、裝置指紋有變化時才重建;這輪 Orin bundle 建在 sm87 上,沒有使用 4090 的 sm89 engine。這次正式 deploy-only 顯示 Offline TensorRT bundle is current,之後 pod 等待 Offline 完成標記並已成功 rollout。

8.2 驗證結果與限制

8.3 名詞

名詞本報告的意思
Online TRT服務讀完整 ONNX,在目標 GPU 建圖或命中 engine cache。
Offline TRT / EP context model先在目標機產生 ONNX context,載入時引用外部 TensorRT engine;此輪的目的包含降低服務建圖 RAM。
sm87 / sm89NVIDIA compute capability;Orin 為 sm87、RTX 4090 為 sm89,TensorRT engine 不跨機搬用。
VADVoice Activity Detection;完整服務 final ASR latency 從 VAD stop 後開始。
PSS / RSS / VmHWM程序記憶體的分攤、常駐與歷史峰值口徑;容量主判斷仍看 cgroup current。
VRAM4090 的獨立顯存;Orin CPU/GPU 共用 LPDDR,所以不建立假想的獨立 VRAM 欄。

下載本輪完整 JSON(含每輪 raw sample、記憶體快照、provider proof、部署資料與 4090 歷史比較)