Optimization – NVIDIA 技術博客
http://www.open-lab.net/zh-cn/blog
閱讀開發者創建的最新技術信息、頭條新聞 和內容。
Thu, 13 Apr 2023 08:13:28 +0000
zh-CN
hourly
1
196178272 -
通過 AI 的全棧優化在 MLPerf 推理 v3.0 中創下新紀錄
http://www.open-lab.net/zh-cn/blog/setting-new-records-in-mlperf-inference-v3-0-with-full-stack-optimizations-for-ai/
Wed, 05 Apr 2023 03:03:51 +0000
http://www.open-lab.net/zh-cn/blog/?p=6677
Continued]]>
目前最令人興奮的計算應用程序依賴于在復雜的人工智能模型上進行訓練和運行推理,通常是在要求苛刻的實時部署場景中。需要高性能、加速的人工智能平臺來滿足這些應用程序的需求,并提供最佳的用戶體驗 新的人工智能模型不斷被發明,以實現新的功能,而人工智能驅動的應用程序往往依賴于許多這樣的模型協同工作。這意味著人工智能平臺必須能夠運行最廣泛的工作負載,并在所有工作負載上提供優異的性能。MLPerf Inference– 現在, v3.0 的第七版是一套值得信賴的、經過同行評審的標準化推理性能測試,代表了許多這樣的人工智能模型。 人工智能應用程序無處不在,從最大的超大規模數據中心到緊湊的邊緣設備。 MLPerf 推理同時代表數據中心和邊緣環境。它還代表了一系列真實世界的場景,如離線(批處理)處理、延遲受限的服務器、單流和多流場景。
Source
]]>
6677
-
使用 RAPIDS RAFT 進行機器學習和數據分析的可重用計算模式
http://www.open-lab.net/zh-cn/blog/reusable-computational-patterns-for-machine-learning-and-data-analytics-with-rapids-raft/
Wed, 22 Mar 2023 06:50:35 +0000
http://www.open-lab.net/zh-cn/blog/?p=6533
Continued]]>
在許多數據分析和機器學習算法中,計算瓶頸往往來自控制端到端性能的一小部分步驟。這些步驟的可重用解決方案通常需要低級別的基元,這些基元非常簡單且耗時。 NVIDIA 制造 RAPIDS RAFT 是為了解決這些瓶頸,并在為多維數據構建算法時最大限度地重用,例如機器學習和數據分析中經常遇到的問題。 RAPIDS 是 GPU 上的一套用于數據科學和機器學習的加速庫: 高度優化的 RAFT 計算模式構成了一個豐富的模塊化嵌入式加速器目錄,為您提供了強大的元素來組成新的算法或加速現有的庫。 這僅僅是一個開始:隨著新 GPU 架構的發布, RAFT 組件將繼續優化,確保您始終從硬件中獲得最佳性能。 RAFT 使您能夠花時間設計和開發應用程序,而不必擔心您是否能充分利用 GPU 硬件。 在這篇文章中,我討論了 RAFT 在開發人員工具箱中的位置,使用它的環境,更重要的是,
Source
]]>
6533
-
基于 NVIDIA 的 PC 的端到端 AI : ONNX Runtime 中的 CUDA 和 TensorRT 執行提供程序
http://www.open-lab.net/zh-cn/blog/end-to-end-ai-for-nvidia-based-pcs-cuda-and-tensorrt-execution-providers-in-onnx-runtime/
Wed, 08 Feb 2023 05:42:07 +0000
http://www.open-lab.net/zh-cn/blog/?p=6244
Continued]]>
這篇文章是 optimizing end-to-end AI 系列文章的第四篇。 有關更多信息,請參閱以下帖子: 正如在 End-to-End AI for NVIDIA-Based PCs 系列的上一篇文章中所解釋的, ONNX Runtime 中有多個執行提供程序( EP ),它們支持針對給定部署場景使用特定于硬件的功能或優化。本文介紹了 CUDA EP 和 TensorRT EP ,它們使用了高度優化的 NVIDIA 推理庫和各自的硬件功能,如 Tensor Core 。 除了 NVIDIA 硬件上的最佳性能外,這還允許在多個操作系統甚至數據中心、 PC 和嵌入式( NVIDIA Jetson )硬件上使用相同的 EP 。由于這些 EP 是特定于 NVIDIA 的,因此這是獲得 FP8 精度或 NVIDIA Ada Lovelace architecture 中的…
Source
]]>
6244
-
關于擴展 AI 訓練和推理存儲的提示
http://www.open-lab.net/zh-cn/blog/tips-on-scaling-storage-for-ai-training-and-inferencing/
Wed, 25 Jan 2023 07:43:25 +0000
http://www.open-lab.net/zh-cn/blog/?p=6132
Continued]]>
GPU 在擴展 AI 方面有許多好處,從更快的模型訓練到 GPU 加速的欺詐檢測。在規劃 AI 模型和部署應用程序時,必須考慮可擴展性挑戰,尤其是性能和存儲。 無論使用何種情況,人工智能解決方案都有四個共同點: 在這些元素中, 數據存儲 通常是規劃過程中最被忽視的元素。為什么?因為隨著時間的推移,在創建和部署 AI 解決方案時并不總是考慮數據存儲需求。 AI 部署的大多數需求都可以通過 POC 或測試環境快速確認。 然而,挑戰在于 POC 傾向于解決單個時間點。培訓或推斷部署可能會持續數月或數年。由于許多公司迅速擴大了其人工智能項目的范圍,基礎設施也必須進行擴展,以適應不斷增長的模型和數據集。 這篇博客解釋了如何提前計劃和擴展數據存儲以進行訓練和推理。 首先,了解 AI 的數據存儲層次結構,包括 GPU 內存、數據結構和存儲設備(圖 2 )。
Source
]]>
6132
-
工作站端到端 AI :優化簡介
http://www.open-lab.net/zh-cn/blog/end-to-end-ai-for-workstation-an-introduction-to-optimization/
Thu, 15 Dec 2022 06:51:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=5894
Continued]]>
這篇文章是優化工作站端到端人工智能系列文章的第一篇。有關更多信息,請參見第 2 部分, 工作站端到端 AI : 使用 ONNX 轉換 AI 模型 和第 3 部分, 工作站端到端 AI : ONNX 運行時和優化 . GPU 的偉大之處在于它提供了巨大的并行性;它允許您同時執行許多任務。在最精細的層面上,這歸結為有數千個微小的處理內核同時運行同一條指令。但這并不是這種并行性停止的地方。還有其他方法可以利用經常被忽視的并行性,特別是在人工智能方面。 當你考慮人工智能功能的性能時,你到底是什么意思?您是否只是在考慮模型本身運行所需的時間,還是在考慮加載數據、預處理數據、傳輸數據以及寫回磁盤或顯示所需時間? 這個問題可能最好由體驗該功能的用戶來回答。通常會發現,實際的模型執行時間只是整個體驗的一小部分。 這篇文章是本系列文章的第一篇,它將引導您了解幾個特定于 API 的用例,包括:
Source
]]>
5894
-
工作站端到端 AI :使用 ONNX 轉換 AI 模型
http://www.open-lab.net/zh-cn/blog/end-to-end-ai-for-workstation-transitioning-ai-models-with-onnx/
Thu, 15 Dec 2022 06:50:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=5890
Continued]]>
這篇文章是優化工作站端到端人工智能系列文章的第二篇。有關更多信息,請參見第 1 部分, 工作站端到端 AI : 優化簡介 和第 3 部分, 工作站端到端 AI : ONNX 運行時和優化 . 在這篇文章中,我討論了如何使用 ONNX 將人工智能模型從研究過渡到生產,同時避免常見錯誤。考慮到 PyTorch 已經成為最流行的機器學習框架,我的所有示例都使用它,但我也提供了 TensorFlow 教程的參考。 ONNX (開放式神經網絡交換)是描述深度學習模型的開放標準,旨在促進框架兼容性。 考慮以下場景:您可以在 PyTorch 中訓練神經網絡,然后在將其部署到生產環境之前通過 TensorRT 優化編譯器運行它。這只是許多可互操作的深度學習工具組合中的一種,包括可視化、性能分析器和優化器。 研究人員和 DevOps 不再需要將就一個未優化建模和部署性能的單一工具鏈。
Source
]]>
5890
-
工作站端到端 AI : ONNX 運行時和優化
http://www.open-lab.net/zh-cn/blog/end-to-end-ai-for-workstation-onnx-runtime-and-optimization/
Thu, 15 Dec 2022 06:36:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=5887
Continued]]>
這篇文章是優化工作站端到端人工智能系列文章的第三篇。有關更多信息,請參見第 1 部分, 工作站端到端 AI :優化簡介 和第 2 部分, 工作站端到端 AI :使用 ONNX 轉換 AI 模型 . 當您的模型轉換為 ONNX 格式時,有幾種方法可以部署它,每種方法都有優缺點。 一種方法是使用 ONNX Runtime 。 ONNX 運行時充當后端,從中間表示( ONNX )讀取模型,處理推理會話,并在能夠調用硬件特定庫的執行提供程序上調度執行。有關詳細信息,請參見 Execution Providers 。 在這篇文章中,我將討論如何在高級別上使用 ONNX 運行時。我還深入探討了如何優化模型。 ONNX Runtime 與大多數編程語言兼容。與另一篇文章一樣,本文使用 Python 是為了簡潔和易讀。這些例子只是為了介紹關鍵思想。有關所有流行操作系統、
Source
]]>
5887
-
通過 GPU 內存訪問調整提高應用程序性能
http://www.open-lab.net/zh-cn/blog/boosting-application-performance-with-gpu-memory-access-tuning/
Mon, 27 Jun 2022 06:54:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=4395
Continued]]>
NVIDIA GPU 具有強大的計算能力,通常需要高速傳輸數據才能部署這種能力。原則上,這是可能的,因為 GPU 也有很高的內存帶寬,但有時他們需要程序員的幫助來飽和帶寬。在這篇博文中,我們研究了一種實現這一點的方法,并將其應用于金融計算中的一個示例。我們將解釋在什么情況下這種方法可以很好地工作,以及如何找出這些情況是否適用于您的工作負載。 NVIDIA GPU 的力量來自大規模并行。可以將 32 個線程的許多扭曲放置在流式多處理器( SM )上,等待輪到它們執行。當一個 warp 因任何原因暫停時, warp 調度程序將切換到另一個,開銷為零,確保 SM 始終有工作要做。在高性能 NVIDIA Ampere 100 ( A100 ) GPU 上,多達 64 個活動經線可以共享一個 SM ,每個都有自己的資源。除此之外, A100 還有許多 SMs-108 ,
Source
]]>
4395
-
使用 GPUDirect 存儲和 RAPIDS cuDF 提高數據攝取吞吐量
http://www.open-lab.net/zh-cn/blog/boosting-data-ingest-throughput-with-gpudirect-storage-and-rapids-cudf/
Fri, 27 May 2022 07:26:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=4233
Continued]]>
如果您從事數據分析工作,您就會知道數據攝取通常是數據預處理工作流的瓶頸。由于數據量大且常用格式復雜,從存儲中獲取數據并對其進行解碼通常是工作流中最耗時的步驟之一。對從事大型數據集研究的數據科學家來說,優化數據攝取可以大大減少這一瓶頸。 RAPIDS cuDF 通過為數據科學中流行的格式實現 CUDA 加速讀取器,大大加快了數據解碼速度。 此外, Magnum IO GPUDirect Storage ( GDS )使 cuDF 能夠通過將數據直接從存儲器加載到設備( GPU )內存來加速輸入/輸出。通過在 GPU 和兼容存儲設備(例如,非易失性存儲器 Express ( NVMe )驅動器)之間通過 PCIe 總線提供直接數據路徑, GDS 可以實現高達 3 – 4 倍的 cuDF 讀取吞吐量,在各種數據配置文件中的平均吞吐量提高 30 – 50% 。 在本文中,
Source
]]>
4233
-
使用 NVIDIA cuDF API 中最新的 UDF 增強功能更快地原型制作
http://www.open-lab.net/zh-cn/blog/prototyping-faster-using-udfs-and-new-cudf-features/
Fri, 27 May 2022 07:07:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=4224
Continued]]>
在過去的幾個版本中, NVIDIA cuDF 團隊為用戶定義函數( UDF )添加了幾個新特性,這些特性可以簡化開發過程,同時提高總體性能。在本文中,我將介紹新的 UDF 增強功能,并展示如何在自己的應用程序中利用它們: 如果您不熟悉 pandas , series apply 是用于將任意 Python 函數映射到單個數據系列的主要入口點。例如,您可能希望使用已編寫為 Python 函數的公式將攝氏溫度轉換為華氏溫度。 下面是運行此代碼的輸出后的快速刷新: 從技術上講,您可以在函數中編寫任何有效的 Python 代碼, pandas 在序列上循環運行函數。這使得在 pandas 環境中非常靈活,因為任何 UDF 都可以成功應用,只要它能夠成功處理所有輸入數據,
Source
]]>
4224
人人超碰97caoporen国产