如何測試美國伺服器的推理效率

當你在美國伺服器上部署 AI 工作負載時,需要對推理效率進行度量。MLPerf Inference 等產業標準基準測試,可以為你提供清晰的伺服器效能比較。例如,像 SR650a V4 和 SR680a V4 這樣的美國頂級伺服器型號,在 AI 和機器學習任務的效率方面處於領先地位。Amazon SageMaker 協助你在大規模情境下管理深度學習推理,而 NVIDIA Triton Inference Server 則支援高吞吐量 AI。你會發現,SageMaker 能與 AWS 無縫協同,用於可擴展的 AI 推理。當你使用 SageMaker 時,就可以改進推理效能,並優化機器學習工作負載。
關鍵重點
- 使用 MLPerf Inference 基準測試來衡量美國伺服器上的 AI 效能。
- 透過調整批大小與採用較小的模型來優化延遲與吞吐量。
- 監控資源使用率,確保硬體與能源使用的高效率。
- 運用 Amazon SageMaker 實現可擴展的 AI 推理與效能調校。
- 謹慎準備資料,以提升推理的準確性與一致性。
推理效率指標
延遲與吞吐量
你需要衡量延遲與吞吐量,來了解 AI 工作負載在美國伺服器上的表現。延遲表示模型對使用者請求做出回應所需的時間。尤其在即時應用中,如果你有嚴格的延遲要求,就應同時關注端到端延遲與模型延遲。在做任何變更之前,先建立推理延遲的基線。你可以透過使用較小的模型或量化模型來改善模型延遲。重點最佳化預填階段(prefill),並使用高效路由,以降低首 token 時間(time to first token)。吞吐量則衡量系統每秒可以處理多少 token 或請求。token 吞吐量代表每張 GPU 每秒產生的 token 數,有助於你了解 AI 系統的整體吞吐能力。
提示:透過調整批大小,在不顯著增加延遲的前提下最大化吞吐量。
資源使用率
資源使用率反映了 AI 模型在硬體與能源使用上的效率。你可以使用基準測試框架來度量每個請求的延遲、吞吐量與 GPU 功耗。這些框架還會納入電源使用效率(PUE)、水資源使用效率(WUE)以及碳強度因子(CIF)等指標。工作負載能力通常以每秒浮點運算次數(FLOPS)衡量,用來表示伺服器的運算能力。AI 伺服器可以達到兆億級 FLOPS,但實際表現仍取決於硬體最佳化與基礎設施狀況。下表展示不同因素對推理效率的影響:
| 因素 | 對推理效率的影響 |
|---|---|
| 基礎設施 | 是 AI 推理永續性的關鍵決定因素。 |
| 硬體最佳化 | 實際成果會因部署條件與硬體效率而產生差異。 |
| 能源使用 | 模型設計可提升理論效率,但真實能耗仍會有所不同。 |
| 資料中心低效能 | 高耗水足跡往往源自資料中心效率不佳,而不僅是模型本身特性。 |
準確性與一致性
你也必須檢查準確性與一致性,以確保 AI 推理可靠。由 MLCommons 建立的 MLPerf 基準,為硬體、軟體與服務的訓練與推理效能提供客觀評估。這些基準在嚴謹條件下,測試包括深度學習與機器學習在內的多種模型架構。一致性代表模型在多次執行中會給出相同或高度相似的結果。下圖(假定存在)對比了不同後端與執行模式下推理結果不一致的情況:
測試環境建置
硬體與網路
要在美國伺服器上獲得高效的 AI 推理,你需要合理的硬體與網路配置。對多數生產部署而言,一台配備 4 張 GPU 的 2U 伺服器通常足以應付。如果你追求最大吞吐量與更佳散熱表現,4U 伺服器會是更佳選擇。配備 96 GB 顯示記憶體的 RTX PRO 6000 Blackwell GPU 適合小型團隊,而更大規模部署則可採用 4 張或 8 張 GPU 的組合。AMD EPYC 9005 處理器擁有大量 PCIe Gen 5 通道與強大記憶體頻寬,非常適合多 GPU 推理情境。AI 應用對網路效能也有很高要求。對於即時影音分析與深度學習模型訓練而言,高頻寬至關重要。如果頻寬不足,你可能會遇到訓練時間拉長或即時流程失敗的問題。大型 AI 模型同樣需要可觀的記憶體頻寬,以實現快速資料傳輸。當你增加 GPU 數量時,系統延遲有機會降低,但前提是網路頻寬足以支撐。
提示:在擴展 AI 工作負載之前,務必先檢查並確認你的網路頻寬是否充足。
軟體、框架與 Amazon SageMaker
在 AWS 上進行可擴展的 AI 推理,建議使用 SageMaker。SageMaker 與 NVIDIA Triton Inference Server 深度整合,可在模型服務中最大化吞吐量、最小化延遲。SageMaker 支援包括 TensorRT、TensorFlow、PyTorch 與 ONNX 在內的主流 AI 框架。SageMaker Inference Recommender 能協助你選擇合適的運算執行個體類型、執行個體數量與推理最佳化方式,從而免去大量繁瑣工作,讓你可以更快地進行實驗與調校。多執行緒可以顯著提升吞吐量,尤其是在 GPU 上部署 Transformer 模型時。批次處理(batching)則是另一項關鍵技術。SageMaker 與 NVIDIA Triton Inference Server 都支援批次處理,透過批次處理可以提升吞吐量並降低延遲。MLPerf Inference 為你的 AI 工作負載提供標準化基準。你可以使用 SageMaker Inference Recommender 測試不同配置,為你的即時端點找到最佳方案。
| 特性 | 優點 |
|---|---|
| SageMaker + NVIDIA Triton | 高吞吐量、低延遲的模型服務能力 |
| SageMaker Inference Recommender | 自動選擇執行個體類型與最佳化策略 |
| 多執行緒與批次處理 | 提升吞吐量並降低延遲 |
| MLPerf Inference 基準 | 標準化的效能量測方式 |
資料準備
為了獲得準確的推理基準測試結果,你必須謹慎準備資料。系統化的參數選擇,有助於你更有效率地測試 AI 模型。對於即時服務,可以設定延遲門檻,例如 LLM 互動中每個 token 50 ms 的上限。採用合成資料與真實資料並行的方式,評估模型在不同資料型態上的表現。良好的實驗設計與合理的取樣策略,能幫助你有效探索大量參數組合。資料前處理在推理效率中也扮演重要角色。如果你在 CPU 上進行前處理,可能會出現瓶頸。像 NVIDIA DALI 這類工具可以將前處理工作卸載到 GPU 上,從而降低延遲、提升吞吐量。當你將 DALI 與 NVIDIA Triton Inference Server 整合時,可以在 GPU 上完成資料解碼與縮放,盡量減少通訊開銷。SageMaker 支援這些工作流程,協助你更輕鬆地最佳化 AI 模型部署。SageMaker Inference Recommender 也能協助你測試批次策略與前處理流程,進而為端點找到最佳配置。
注意:在 AWS 上實現可靠的 AI 推理結果,離不開合理的資料準備與批次策略。
執行推理基準測試
MLPerf Inference 與其他工具
你可以透過執行 MLPerf Inference 基準測試,來衡量美國伺服器上的推理效率。MLPerf Inference 是針對 AI、深度學習與機器學習工作負載的領先基準測試套件,協助你比較不同硬體與軟體組合的效能。要開始測試,你需要依照下列步驟準備環境並確保結果準確:
- 安裝 MLCommons CM 框架,該框架提供用於 AI 基準測試的自動化配方。
- 使用圖形介面產生 CM 指令,以自訂並執行 MLPerf Inference 基準測試。
- 透過
pip install tensorflow與pip install tensorflow-io安裝 TensorFlow 作為後端。 - 設定環境變數以啟用 oneDNN,並配置 16 位浮點儲存格式,以提升效率。
- 使用
wget -q https://zenodo.org/record/2535873/files/resnet50_v1.pb下載你要測試的機器學習模型,例如resnet50-v1.5。 - 下載適用於該模型的資料集,例如 imagenet2012 驗證集。
- 使用指令
./run_local.sh tf resnet50 cpu在伺服器上執行基準測試。
你也可以使用其他工具,例如支援 TensorRT 後端的 NVIDIA Triton Inference Server,用於高吞吐量 AI 工作負載。Triton 內建批次處理、模型版本管理以及多框架部署等功能,有助於你最佳化模型延遲與整體吞吐量。
提示:務必使用標準化的基準測試工具,確保結果公平且可重複。
執行 AI 工作負載
在為推理基準測試執行 AI 工作負載時,你需要設定測試情境,使其儘可能貼近真實使用場景。應同時關注即時推理與批次處理。下表展示常見測試類型、關鍵參數以及需要追蹤的指標:
| 測試類型 | 參數 | 指標 |
|---|---|---|
| 訓練測試 | 批大小、模型大小 | 吞吐量(樣本/秒)、GPU 名稱 |
| 推理測試 | 模型名稱、最大並發數 | 每秒 token 數、平均延遲、GPU 名稱 |
你可以使用隨機取樣等技術,為測試挑選具代表性的資料點。線性最佳化有助於你找到批次處理與 TensorRT 設定的最佳組合;貝氏推論則可在資料有限的情況下估計效能表現,特別適用於存在不確定性的情境。這些方法能協助你將 AI 工作負載調校至更高效率與更佳效能。
你也需要重視批次處理策略。批次處理透過將多個推理請求合併處理,以提升吞吐量。NVIDIA Triton Inference Server 與 TensorRT 都支援動態批次處理,可以根據負載變化調整批大小。對於即時推理而言,這種方式可在降低模型延遲的同時提升整體吞吐量。
注意:合理的批次處理策略與 TensorRT 最佳化,是實現高效能 AI 推理的關鍵。
蒐集效能資料
在基準測試過程中,你需要蒐集詳盡的效能資料。Perf Analyzer 等工具可以協助你監控伺服器端指標,包括 GPU 使用率與功耗。你可透過 --collect-metrics 命令列選項啟用指標蒐集。預設情況下,指標會暴露在 localhost:8002/metrics,你也可以使用 --metrics-url 選項變更此位址。預設蒐集間隔為 1000 毫秒,可利用 --metrics-interval 參數進行調整。
Perf Analyzer 會在多 GPU 系統中彙總每張 GPU 的指標。你可以利用 -f <filename> 與 --verbose-csv 選項,將結果匯出為 CSV 檔案,方便後續分析趨勢並識別效能瓶頸。
在進行負載測試時,你應當變化推理請求的速率與分佈型態,因為這些因素對延遲與吞吐量的影響極大。例如:
- 超大規模雲端環境的基準測試會特別關注整體叢集效率與服務一致性。
- 在地企業環境更強調於受控基礎設施內的效能驗證。
- 邊緣推理情境則尤其關注低延遲與功耗限制。
- 嵌入式或工業部署則更重視決定性與長期穩定運作。
你可以根據這些洞見,針對不同部署情境調整 TensorRT 與批次處理設定。效能調校需要你仔細分析蒐集到的資料,並據此做出調整,以提升推理效率。
提示:在負載測試中務必持續監控模型延遲、吞吐量與資源使用情況,確保 AI 工作負載達到預期效能目標。
結果分析與最佳化
識別瓶頸
你需要對基準測試結果進行深入分析,以找出限制推理效率的瓶頸。常見問題包括高延遲、低吞吐量以及記憶體限制。當你執行 AI 工作負載時,可能會發現大型語言模型是以 token 為單位逐一生成,這會在長提示詞情境下明顯增加模型延遲。在請求量大、延遲高的情況下,伺服器可能出現當機或逾時。流中批次處理(inflight batching)可以有所助益,但同時也必須密切留意記憶體需求。更大的模型與更長的提示詞都會消耗更多顯示記憶體。隨著模型變大,能耗也會上升,而使用高階設備進行擴充則會帶來更高成本。管理模型更新與版本迭代同樣關鍵,有助於平順完成模型部署。
- 延遲:LLM 以 token 逐步生成,導致預測時間拉長。
- 吞吐量:高請求量疊加高延遲,可能導致伺服器當機。
- 記憶體:更大的模型與更長的提示詞需要更多 VRAM。
- 能耗:大型模型對功率需求更高。
- 可擴展性:高階機器在擴充時成本更高。
- 模型更新:版本管理是穩定部署的關鍵一步。
提示:在分析瓶頸時,要特別關注 GPU 使用率與網路基礎設施;僅依賴傳統 CPU 指標,往往無法真實反映 AI 推理效能。
最佳化推理效率
你可以透過多種最佳化策略來提升推理效率。量化(quantization)透過降低模型精度,減少記憶體占用並加快推理速度。連續批次處理(continuous batching)則以動態方式聚合推理請求,以最大化吞吐量。KV 快取(KV caching)可以避免重複運算,加快 token 生成。提前結束機制(early exit)允許模型在不必完整通過所有層的情況下提前給出結果,節省時間。低秩分解(low-rank factorization)將大型矩陣分解為較小的矩陣,以獲得更高運算速度與更低記憶體占用。基礎設施最佳化則透過改良網路架構,降低資料傳輸時間。快取與備忘錄(caching vs. memoization)會儲存中間結果,為後續請求提供更快回應。透過平行化與批次處理,你可以運用多台伺服器與多張 GPU,以獲得更佳的整體效能。
| 策略 | 說明 |
|---|---|
| 量化 | 降低模型精度,以減少記憶體占用並加速推理。 |
| 提前結束機制 | 允許模型在並非所有層完成運算時就給出預測結果。 |
| 低秩分解 | 將大型矩陣分解為較小矩陣,以獲得更高速度與更低記憶體占用。 |
| 連續批次處理 | 以動態方式聚合請求,進而提升吞吐量。 |
| KV 快取 | 減少重複運算,加快 token 生成速度。 |
| 基礎設施最佳化 | 改進網路架構,縮短資料傳輸時間。 |
| 快取與備忘錄 | 儲存中間結果,為後續推理請求提供更快速回應。 |
| 平行化與批次處理 | 運用多台伺服器與多張 GPU 提升整體效能。 |
你也應當對多執行緒進行調校。如果執行緒數設定過多,可能導致延遲升高與 GPU 使用率下降。讓執行緒數量與並發推理請求數更為匹配,可以同時提升吞吐量並降低延遲。透過 SageMaker Inference Recommender 等工具進行效能調校,可協助你為 AI 工作負載找到最合適的批次處理與 TensorRT 設定。
運用 SageMaker 進行 AI 擴展
Amazon SageMaker 為你在 AWS 上擴展 AI 推理提供強大工具。你可以建立即時推理與批次推理端點,有效率地管理深度學習與機器學習工作負載。SageMaker 支援無伺服器部署(serverless)與自動擴縮機制,從而在維持資源平衡的同時控制成本。你可以透過 Amazon CloudWatch 監控效能,並快速排除問題。SageMaker 負責跨多個可用區管理模型部署,以確保高可靠性。多模型端點(MMEs)允許你在同一個端點上部署多個模型,進而最大化 GPU 使用率並降低託管成本。SageMaker 會根據流量狀況動態載入與卸載模型,在確保即時推理情境中亞秒級延遲的同時實現高效能。SageMaker Inference Recommender 能協助你測試不同配置、最佳化批次處理並調校 TensorRT 設定,為即時端點找到最佳組合。你可以將 SageMaker 與 NVIDIA Triton Inference Server 搭配使用,獲得高吞吐量的模型服務能力。SageMaker 也支援效能調校、負載測試與基準測試,使你能在 AWS 上輕鬆最佳化 AI 工作負載。
| 特性 | 說明 |
|---|---|
| 即時推理與批次推理 | 建立端點以獲得即時預測,並有效管理工作負載。 |
| 無伺服器且具成本優勢 | 透過自動擴縮與 AWS Lambda 整合實現動態資源管理。 |
| 監控與除錯 | 使用 Amazon CloudWatch 進行即時監控,並利用除錯工具支援模型部署。 |
| 部署能力 | 運用多種執行個體類型與多個可用區擴展基礎設施。 |
| SageMaker 多模型端點(MMEs) | 在單一端點上部署多個模型,實現具成本優勢且可擴展的即時推理。 |
注意:SageMaker Inference Recommender 是最佳化模型部署、批次處理與 TensorRT 設定、實現頂級推理效率的關鍵工具。
透過遵循清晰的流程,你可以大幅提升美國伺服器上的推理效率。先使用標準化基準框架量測效能,接著運用 SageMaker 與 MLPerf 取得準確的推理結果,再藉由 SageMaker Inference Recommender 完成模型部署與效能調校。最後,持續結合即時推理、負載測試與端點監控,不斷最佳化你的 AI 工作負載。
持續最佳化對於資源管理、效能提升以及模型相容性都至關重要。
| 策略層級 | 關注領域 | 關鍵行動 |
|---|---|---|
| 1 | 硬體使用 | 使用批次處理、量化與 CUDA 圖。 |
| 2 | 記憶體與演算法 | 消除記憶體瓶頸。 |
| 3 | 擴展拓樸 | 將伺服器就近部署並妥善管理副本。 |
結合 SageMaker Inference Recommender,在 AWS 上探索更進階的 AI 與深度學習策略,持續進行效能調校,並高效處理不斷成長的推理請求。
常見問答
在美國伺服器上衡量推理效能的最佳方式是什麼?
你應該使用 MLPerf Inference 基準測試。這些測試能為 AI 工作負載提供清晰的效能結果。SageMaker 可以協助你執行這些基準測試,並比較不同硬體的表現。你可以在每次測試中追蹤延遲、吞吐量與資源使用情況。
SageMaker 如何提升 AI 推理效能?
SageMaker 讓你可以高效率地部署模型。你可以運用批次處理、多執行緒以及 NVIDIA Triton 等工具來提升推理效能。SageMaker 同時提供監控與調校工具,協助你持續最佳化 AI 工作負載,獲得更佳結果。
為什麼批次處理對推理效能很重要?
批次處理會將多個請求合併處理,這種方式可以顯著提升吞吐量並降低延遲。SageMaker 與 NVIDIA Triton 都支援動態批次處理。只要為你的工作負載選擇合適的批大小,就能看到更好的 AI 推理表現。
如何在 SageMaker 中監控推理效能?
你可以將 Amazon CloudWatch 與 SageMaker 結合使用。CloudWatch 會追蹤延遲、吞吐量與 GPU 使用率等指標。你也可以為效能下降設定警示。SageMaker 同時允許你測試不同配置,以進一步改善 AI 推理結果。
能否透過 SageMaker 端點擴展 AI 推理?
可以。你可以使用 SageMaker 端點來擴展推理能力。SageMaker 支援自動擴縮與多模型端點,從而在處理更多請求的同時維持高效能。隨著業務需求成長,SageMaker 能協助你輕鬆管理 AI 工作負載。
