現代測試系統需要進行高吞吐率處理,而 GPU 則提供功能強大的解決方案,具備平行運算功能,適合訊號處理、影像分析與 AI 推論等任務。LabVIEW 結合 Ngene、Graiphic 與 G²CPU 等第三方工具組,無需耗時學習就能順暢實現 GPU 加速。
工程師可透過 RADX PXI Express (PXIe) 模組、MXI Express (MXIe) 擴充或網路 GPU 伺服器整合 GPU 至測試系統,大幅提升測試速度與系統擴充能力。依靠直覺工具與靈活部署選項,NI 平台現已可實現 GPU 加速,推動更快速、可擴充且能因應未來需求的測試工作流程。
本白皮書探討策略性地使用 GPU 作為硬體加速器,以滿足日益增長的大量運算測試應用需求。隨著產業愈加依賴高吞吐量處理以提升測試效率,可擴充且高效能的運算變得不可或缺。GPU 擁有龐大的平行運算能力與數千核心,相較於傳統 CPU 具明顯優勢,非常適合處理影像與訊號處理、深度學習推論及矩陣運算等任務。
藉由將 GPU 與 NI LabVIEW 整合,並利用相容的硬體與工具組,能有效採用 GPU 加速並將其順利整合至現有測試系統。此方法提供直覺式架構,助力工程師與系統架構師最大化工作流程中的硬體加速效能。選擇合適的硬體平台可帶來諸多優勢,例如提升處理速度、降低延遲、增進能源效率,並為未來應用提供可擴充的效能。
GPU 以無可匹敵的平行處理能力,在涉及神經網路、影像處理與模擬等的任務中表現突出。然而,GPU 平行運算的優勢僅於大規模運算中顯著,因為將任務卸載至 GPU 涉及高昂的資料傳輸成本、為保證資料一致性而進行的同步化及核心啟動延遲。GPU 不適合處理資料量低且運算變異性高的小型資料集。
FPGA 提供可客製化架構,適用於嵌入式系統與即時訊號處理等確定性系統。它們具備優化的處理環境與低功耗解決方案,對功率受限的 AI 模型至關重要。然而,要對 FPGA 進行程式設計以使其發揮最佳效能,需付出相當大的開發成本。
通用處理器通常擁有較少的運算核心,且每核心配有獨立控制單元,使其具備高度彈性與控制能力。與 GPU 相比,CPU 更注重控制單元,能實現單核心的上下文切換。
NI 模組化平台使用 CPU 以實現彈性及複雜控制邏輯,並使用 FPGA 以確保確定性及精確控制。現今,加入 GPU 引入了第三大支柱——產能導向的加速。
LabVIEW 提供強大的原生功能及廣泛內建功能,適用於多種應用;第三方工具組則可簡化 GPU 加速的整合,進一步增強這些功能。這些工具組直覺且類似原生 LabVIEW,可縮短開發人員的學習時間。它們新增 GPU 專用功能,協助使用者發揮 GPU 潛力,無需自行從零開發所有元件。本節將介紹 NI 生態系中三款重要的有助在各種應用中實現 GPU 加速的第三方工具組,聚焦於其功能與高效架構,以達成高效能標準。
現代工程與科學應用對運算能力有較高要求,尤其在 RF 訊號處理、即時監控與分析、科學運算與建模,以及工業機器視覺領域。GPU 以其平行運算優勢適合此類任務,但 LabVIEW 缺乏原生 GPU 加速支持,對不熟悉 CUDA 或 C++ 的工程師構成挑戰。
Ngene CuLab 工具組 解決此缺口,提供高效能 GPU 加速解決方案,並與 LabVIEW 直接整合。其提供與 LabVIEW 類似的 API,使工程師無需複雜編碼即可加速運算。CuLab 簡化整合,具備全面的 GPU 加速功能,效能優越,平均比 CuPy 等 Python 框架快 6 倍。
CuLab 具有多項重要優勢。它能與 LabVIEW 類似的 API 順暢整合,資料處理效能比基於 CPU 的基本 LabVIEW 提升超過 100 倍1。該平台包含超過 150 個 GPU 加速函式,能有效處理多維陣列與各種數值類型。
圖 1.此程式展示原生 LabVIEW 與 CuLab 實作的相似性。
CuLab 功能豐富,模擬原生 LabVIEW。函式清單完整,涵蓋向量與矩陣運算、線性代數、訊號處理、電腦視覺、數學與邏輯運算等。
Graiphic 推出的 LabVIEW 專用 SOTA 生態系提供強化的 GPU 加速能力,可作為 PyTorch 與 TensorFlow 深度學習框架的替代方案。它將 LabVIEW 轉變為通用圖形編輯器與調度器,具備擴展的 ONNX 支援,可在多種硬體上進行訓練與運算。提供高級與低階抽象化,適合需要簡易部署的工程師與追求細緻控制的研究人員,可滿足多方面深度學習需求。
圖 2.加速器面板的目標是涵蓋標準 LabVIEW 作業之全部內容。其可有效管理動態調度,並提供優異靈活性以支援不同執行供應商。公開參考映射覆蓋多個後端的節點範圍。
SOTA 具備完整的功能組合,可匹敵現有架構,其 Accelerator 工具組使其功能更為通用,它擴充了 LabVIEW 函式面板,以透過 ONNX 編排 ONNX 運算圖。
SOTA 生態系的主要元件包括:用於訓練與推論的深度學習工具組、用於影像處理的電腦視覺工具組、用於基於變換器的模型的 GenAI 工具組,以及前述 Accelerator 工具組。該環境的工具組在電腦視覺、深度學習、GenAI 及強化學習領域表現優異,並且可與 ONNX 順暢整合,跨硬體平台優化效能。其透過視覺化資料流程程式設計降低 AI 開發門檻,即使使用者無程式設計技能亦能建立複雜工作流程。
SOTA 可跨異質硬體優化資料標註、AI 模型訓練、調校與部署工作。
G²CPU 為 LabVIEW 提供高效能運算工具組,可跨 CPU、NVIDIA CUDA GPU、OpenCL 裝置與整個 NI 生態系執行通用程式碼。它基於開放原始碼 ArrayFire 函式庫建立,可簡化後端切換以確保長期穩定性。
主要優勢
圖 3。此程式展示了完全以 G²CPU 編寫的線性擬合演算法。請留意與原生 LabVIEW 的相似程度。
該軟體工具組提供一套全面的高效能函式,可處理數學、訊號處理、機器視覺、UI 加速等多項任務,並適用於各類 GPU 及作業系統。該工具組具備高速資料傳輸能力,能順暢整合如 NI PXI 向量訊號收發儀 (VST)、NI FPGA 架構硬體及 NI 影像擷取卡等裝置。G²CPU 是一款高度靈活且高效能的工具組,這一點是透過裝置與 GPU 之間的高效零複製資料傳輸技術達到的,該工具組能透過自訂 GPU 核心與第三方工具組加以擴充,可與 NVENC、LibTorch、OpenCV 等工具順暢整合。G²CPU 是適合需高效能與不受領域限制開發的開發人員的理想方案。
本節介紹如何連接 GPU 伺服器及 PXI Express 至 MXI Express 配置。
GPU 伺服器可透過網路介面卡 (NIC) 與智慧型 NIC 高效連接,這些介面卡具備優化網路效能的進階功能。智慧型 NIC 整合 CPU 與 GPU 元件,支援高負載運算及平行處理任務。智慧型 NIC 智能卸載網路處理以降低負擔,提升流向 GPU 伺服器的資料流效率。智慧型 NIC 可改善跨網路資料處理,支援最高 25 GB/s 帶寬的分散式運算,更有效利用網路 GPU 資源。包括 NI CompactRIO 與 NI CompactDAQ 系統等其他 NI 硬體,亦可透過乙太網路或 USB 網路連接功能連接與使用 GPU 伺服器資源。
圖 4.PXI 機箱透過 NIC 或智慧型 NIC 連接至外部 GPU 伺服器,實現高速且加速的運算。
PXIe 至 MXIe 配置適用於需外部 GPU 功能的設定,特別是高效能運算。將 PXIe 機箱連接至 MXIe 介面後,使用者可存取強大的外部 GPU,提升運算能力,超出本地硬體限制。此配置適合空間受限或需跨系統使用多個 GPU 進行大規模資料處理、AI 開發或模擬的場景。Gen 3 x16 MXIe 介面支持 16 GB/s 資料傳輸速率,降低瓶頸並促使嚴苛應用有效利用外部 GPU 或 GPU 伺服器資源。
圖 5.PXIe 機箱透過 MXIe 擴充連接 GPU 伺服器,提供高頻寬資料傳輸,進而實現加速處理與進階運算。
RADX Technologies Inc. 提供商用現成 (COTS) PXI Express GPU 模組,這些模組專為 NI 生態系設計,但與 NI 產品不同。這些模組採用 NVIDIA Turing、Ampere 和 Ada GPU 架構,可順暢整合至 NI PXIe-1092 或 NI PXIe-1095 等 PXI Express 機箱,提升測試與量測的運算力。RADX PXIe GPU 可藉由 LabVIEW 和 Python 等工具支援資料擷取與機器學習等多種應用,無需獨立 GPU 伺服器。
RADX Technologies 機箱內 GPU 提供 1.7 至 30.3 FP32 TFLOPS 運算力,具備 4 GB 至 24 GB 記憶體。然而,由於 GPU 間缺乏點對點通訊,這些配置可能遭遇資料瓶頸問題,但使用 Linux 時除外。需採用零複製等技術克服這些限制並充分利用 GPU 能力,並減輕瓶頸。RADX GPU 經認證適用於 NI 系統,並常與 G²CPU 搭配用於 GPU 加速的 LabVIEW 訊號處理。
圖 6.RADX PXIe 相容 GPU 模組與相關產品
總結來說,由於 GPU 擁有卓越的效能與可程式化特性,已逐漸被測試工程師採用,以加速測試流程。其龐大平行運算與可擴充的計算能力,使其適合大量資料應用,如訊號處理、影像處理、模擬及模型驅動控制。不過,因其對資料的需求,GPU 仍主要適用於特定工作流程。
藉由 PXI Express 支援的合作夥伴 GPU 與 LabVIEW 工具組將 GPU 加速整合至 NI 生態系,可為現有工作流程帶來靈活且高效的補充功能,便於測試工程師採用 GPU。在熟悉環境中進行的這種整合降低了使用門檻,有助於加速原型開發、提升資料吞吐率及系統擴充能力。
了解如何有效運用 GPU,可讓測試與量測組織在設計可因應未來需求的系統時更具競爭優勢。識別 GPU 效能提升、運用適當工具以及辨識大量運算任務,是關鍵步驟。
| 應用領域 | GPU 的優勢 |
|---|---|
| RF 記錄與回放/頻譜分析 | 即時多 GHz FFT、多相通道分離器與頻譜圖繪製 |
| 高速視覺/基於影像的檢測 | 卷積神經網路 (CNN) 及經典 OpenCV 濾波器,每秒處理數百影像框 |
| 大量波形分析 | 用濾波器、相關分析或深度學習異常檢測進行百萬波形的批次處理 |
表 1.善用 GPU 強大運算能力於重點應用領域之任務
| 特性 | CPU | FPGA | GPU |
|---|---|---|---|
| 下列應用的理想選擇 | 分支繁複、序列邏輯;作業系統服務;小規模 AI/ML 工作負載(數百 GFLOP 範圍) | 納秒級延遲;客製化 I/O 協定 | Teraflop/petaflop 級平行數學運算;AI/ML 工作負載 |
| 確定性 | 10 µs 至 ms 級抖動(搶先作業系統) | 週期精確執行;硬體層級的確定性時序 | 中等抖動;在啟動的核內確定性執行 |
| 開發流程 | C/C++、LabVIEW RT、Python | LabVIEW FPGA、VHDL/Verilog、HLS | CUDA/HIP、LabVIEW GPU 工具組、Python (Numba/CuPy) |
| 重新部署成本 | 無 | 高 (合成、時序關閉) | 低 (只需數秒就能重新編譯核心) |
| 測試與量測領域的典型應用 | 序列、主機介面、資料記錄 | 精確時序、自定觸發、行內濾波 | FFT、頻譜圖、深度學習推論、大型矩陣運算 |
表 2. 選擇適合的引擎:CPU、GPU 還是 FPGA?
Windows 是 Microsoft 集團公司的商標。Linux® 註冊商標係根據 LMI 的轉授權許可使用;Linus Torvalds 持有此商標在全球的擁有權,LMI 則取得了 Linus Torvalds 的獨家授權。