cuDF – NVIDIA 技術博客 http://www.open-lab.net/zh-cn/blog 閱讀開發者創建的最新技術信息、頭條新聞 和內容。 Wed, 02 Jul 2025 04:11:13 +0000 zh-CN hourly 1 196178272 如何在 Polars GPU 引擎中處理超過 VRAM 的數據 http://www.open-lab.net/zh-cn/blog/how-to-work-with-data-exceeding-vram-in-the-polars-gpu-engine/ Fri, 27 Jun 2025 04:08:28 +0000 http://www.open-lab.net/zh-cn/blog/?p=14462 Continued]]> 在量化金融、算法交易和欺詐檢測等高風險領域,數據從業者經常需要處理數百 GB 的數據,才能快速做出明智的決策。Polars 是發展最快的數據處理庫之一,其 GPU 引擎由 NVIDIA cuDF 提供動力支持,可加速這些領域常見的計算受限查詢,從而滿足這一需求。 但是,在使用 GPU 時,一個常見的挑戰是 VRAM ( GPU 的專用內存) 通常小于系統 RAM。在使用 GPU 引擎處理非常大的數據集時,這可能會導致問題。 本文將探討 Polars GPU 引擎中克服此限制的兩個選項。借助這些策略,您可以處理大于可用 VRAM 的數據,同時仍可從 GPU 加速中獲益: 當數據集大小開始超過 GPU 顯存時,您可以利用 NVIDIA UVM 技術。 UVM 在系統 RAM (主機內存) 和 GPU VRAM (設備內存) 之間創建統一的內存空間。

Source

]]>
14462
NVIDIA 在制造和運營領域的 AI 應用:借助 NVIDIA CUDA-X 數據科學加速 ML 模型 http://www.open-lab.net/zh-cn/blog/ai-in-manufacturing-and-operations-at-nvidia-accelerating-ml-models-with-nvidia-cuda-x-data-science/ Wed, 18 Jun 2025 04:45:46 +0000 http://www.open-lab.net/zh-cn/blog/?p=14378 Continued]]> 從晶圓制造和電路探測到封裝芯片測試,NVIDIA 利用數據科學和機器學習來優化芯片制造和運營工作流程。這些階段會產生 TB 級的數據,而要確保質量、吞吐量和成本效益,關鍵在于快速、大規模地將這些數據轉化為切實可行的見解。多年來,我們開發了強大的 Machine Learning 流程,可解決缺陷檢測和測試優化等問題。 這是一系列博客中的第一個,這些博客將分享我們使用 NVIDIA cuDF 和 NVIDIA cuML 等 CUDA-X 庫部署此類工作流的關鍵經驗。雖然這些經驗教訓來自半導體制造,但挑戰和解決方案廣泛適用于物流、質量工程和供應鏈優化。 我們先從現實世界的分類任務開始:預測芯片是否通過特定測試。在更高級的場景中,目標擴展到預測芯片的性能箱(從 L1 到 L5),并將問題表述為多類別分類問題。 在這兩種情況下,模型會使用來自多個來源的豐富測量信號:

Source

]]>
14378
使用 NVIDIA NeMo Curator 構建 Nemotron-CC:一個高質量萬億令牌數據集,用于大型語言模型預訓練,源自 Common Crawl http://www.open-lab.net/zh-cn/blog/building-nemotron-cc-a-high-quality-trillion-token-dataset-for-llm-pretraining-from-common-crawl-using-nvidia-nemo-curator/ Wed, 07 May 2025 06:32:25 +0000 http://www.open-lab.net/zh-cn/blog/?p=13827 Continued]]> 對于想要訓練先進的 大語言模型 (LLM) 的企業開發者而言,整理高質量的預訓練數據集至關重要。為了讓開發者能夠構建高度準確的 LLM,NVIDIA 之前發布了 Nemotron-CC ,這是一個價值 6.3 萬億個 token 的英語語言 Common Crawl (CC) 數據集。今天,NVIDIA NeMo Curator 團隊很高興地與大家分享,用于構建 Nemotron-CC 數據集的 pipeline 現已合并到 NeMo Curator GitHub 存儲庫 中。 Nemotron-CC 工作流現已集成到 NeMo Curator 中,為平衡大規模準確性和數據量之間的權衡提供了一種新穎的解決方案。Nemotron-CC 工作流結合使用分類器集成和合成數據重述,提供了一種可擴展的方法,可從原始數據集中生成高質量的合成數據,以擴展原始數據集。

Source

]]>
13827
頂級大師專業提示:使用 NVIDIA cuDF-pandas 進行特征工程,在 Kaggle 競賽中奪冠 http://www.open-lab.net/zh-cn/blog/grandmaster-pro-tip-winning-first-place-in-kaggle-competition-with-feature-engineering-using-nvidia-cudf-pandas/ Thu, 17 Apr 2025 06:16:48 +0000 http://www.open-lab.net/zh-cn/blog/?p=13631 Continued]]> 在處理表格數據時,特征工程仍然是提高模型準確性的最有效方法之一。與 NLP 和計算機視覺等神經網絡可以從原始輸入中提取豐富模式的領域不同,性能最佳的表格模型 (尤其是梯度提升決策樹) 仍然從精心打造的特征中獲得顯著優勢。然而,潛在的有用特征數量意味著,深入研究這些特征通常需要大量的計算。在 CPU 上使用標準 pandas 生成和驗證數百或數千個功能理念的速度太慢,無法實現。 這就是 GPU 加速改變游戲規則的地方。借助 NVIDIA cuDF-pandas,我可以在 GPU 上加速 pandas 操作,無需更改代碼,從而為 Kaggle 2 月的 Playground 比賽快速生成和測試 10000 多個設計功能。這種加速的發現過程是關鍵的差異化因素。在大幅縮短的時間內 (幾天而不是潛在的幾個月) ,發現的最佳 500 個特征顯著提高了我的 XGBoost 模型的準確性,

Source

]]>
13631
高效擴展 Polars 的 GPU Parquet 讀取器 http://www.open-lab.net/zh-cn/blog/efficiently-scaling-polars-gpu-parquet-reader/ Thu, 10 Apr 2025 06:09:06 +0000 http://www.open-lab.net/zh-cn/blog/?p=13503 Continued]]> 在處理大型數據集時,數據處理工具的性能變得至關重要。 Polars 是一個以速度和效率聞名的開源數據操作庫,提供由 cuDF 驅動的 GPU 加速后端,可以顯著提高性能。 “但是,為了充分利用 Polars GPU 后端 的強大功能,必須優化數據加載過程并有效管理工作流程所需的內存。隨著 GPU 后端開發的不斷推進,在使用 GPU Parquet 閱讀器時,隨著數據集大小的增加,我們還可以使用一些其他技術來保持高性能。現有的 Polars GPU Parquet 讀取器 (到版本 24.10) 無法針對更高的數據集大小進行擴展。” 本文將探討分塊 Parquet Reader 與 Unified Virtual Memory (UVM) 相結合后,如何在性能上優于非分塊閱讀器和基于 CPU 的方法。 隨著規模系數 (SF) 的增加,

Source

]]>
13503
使用 NVIDIA cuDF,pandas 讀取 JSON 行文件速度提升100倍 http://www.open-lab.net/zh-cn/blog/json-lines-reading-with-pandas-100x-faster-using-nvidia-cudf/ Thu, 20 Feb 2025 04:21:11 +0000 http://www.open-lab.net/zh-cn/blog/?p=12962 Continued]]> JSON 是一種廣泛采用的格式,用于在系統之間 (通常用于 Web 應用和大語言模型 (LLMs)) 以互操作方式運行的基于文本的信息。雖然 JSON 格式是人類可讀的,但使用數據科學和數據工程工具進行處理十分復雜。 JSON 數據通常采用換行分隔的 JSON 行 (也稱為 NDJSON) 的形式來表示數據集中的多個記錄。將 JSON 行數據讀入數據幀是數據處理中常見的第一步。 在本文中,我們比較了使用以下庫將 JSON 行數據轉換為數據幀的 Python API 的性能和功能: 我們使用 cudf.pandas 中的 JSON 讀取器展示了良好的擴展性能和高數據處理吞吐量,特別是對于具有復雜模式的數據。我們還審查了 cuDF 中的一組通用 JSON 讀取器選項,這些選項可提高與 Apache Spark 的兼容性,并使 Python 用戶能夠處理引文歸一化、無效記錄、

Source

]]>
12962
適用于數據科學的 GPU 加速入門 http://www.open-lab.net/zh-cn/blog/get-started-with-gpu-acceleration-for-data-science/ Thu, 06 Feb 2025 04:11:52 +0000 http://www.open-lab.net/zh-cn/blog/?p=12857 Continued]]> 在數據科學領域,運營效率是處理日益復雜和大型數據集的關鍵。GPU 加速已成為現代工作流程的關鍵,可顯著提高性能。 RAPIDS 是由 NVIDIA 開發的一套開源庫和框架,旨在使用 GPU 以盡可能減少代碼更改來加速數據科學流程。RAPIDS 提供用于數據操作的 cuDF 、用于機器學習的 cuML 和用于圖形分析的 cuGraph 等工具,可實現與現有 Python 庫的無縫集成,使數據科學家更容易實現更快、更高效的處理。 本文分享了從 CPU 數據科學庫過渡到 GPU 加速工作流程的技巧,特別適合經驗豐富的數據科學家。 開始使用 RAPIDS 非常簡單,但它確實有幾個依賴項。推薦的方法是遵循官方的 RAPIDS 安裝指南 ,該指南提供了詳細的本地安裝說明。您有多種安裝框架的路徑:通過 pip install、Docker 鏡像,或通過 Conda 等環境。

Source

]]>
12857
使用 GPU 在 Apache Spark 上加速 JSON 處理 http://www.open-lab.net/zh-cn/blog/accelerating-json-processing-on-apache-spark-with-gpus/ Wed, 29 Jan 2025 05:26:22 +0000 http://www.open-lab.net/zh-cn/blog/?p=12910 Continued]]> JSON 是一種熱門的文本數據格式,可實現 Web 應用程序中系統之間的互操作性以及數據管理。這種格式自 21 世紀初就已存在,源于 Web 服務器和瀏覽器之間的通信需求。標準 JSON 格式由可包含嵌套對象的鍵值對組成。JSON 在存儲 Web 事務信息方面的使用有所增長,并且可能包含非常大的值,有時每條記錄的大小超過 1 GB。首先,解析和驗證 JSON 不是與 GPU 加速相關的任務,因為文本格式的大小不規則,并且沒有默認順序。但是,隨著 JSON 在許多企業數據應用程序中的使用,對加速的需求也在增長。 對于《財富》100 強零售公司而言,使用 JSON 格式存儲基本庫存數據。JSON 格式支持與產品分類和庫存相關的非結構化數據。針對點擊流數據的 JSON 處理包括在單個 Spark 工作負載中處理數十 TB 的 JSON 數據的大型查詢。

Source

]]>
12910
RAPIDS 24.12 推出基于 PyPI 的 cuDF、適用于 Polar 的 CUDA 統一內存和更快的 GNN http://www.open-lab.net/zh-cn/blog/rapids-24-12-introduces-cudf-on-pypi-cuda-unified-memory-for-polars-and-faster-gnns/ Thu, 19 Dec 2024 08:59:13 +0000 http://www.open-lab.net/zh-cn/blog/?p=12478 Continued]]> RAPIDS 24.12 將 cuDF 包引入 PyPI,加快了 聚合和從 AWS S3 讀取文件的速度,在 Polars GPU 引擎中支持大于 GPU 內存的查詢,并加快了真實圖形的圖形神經網絡 (GNN) 訓練速度。 從 24.12 版本的 RAPIDS 開始,、、 的 CUDA 12 版本及其所有依賴項現在均可 在 PyPI 上使用 。因此,安裝這些庫不再需要使用 和 的其他配置。試用: 這也意味著 Polars 用戶無需再在安裝期間指定額外的索引即可獲得 GPU 支持: 即可正常工作。 這是通過 pypi.org 提供 RAPIDS 庫的持續努力的第一步。敬請關注,了解更多信息。 我們與 Polars 一起在 Open Beta 中推出了基于 cuDF 構建的 Polars GPU 引擎,

Source

]]>
12478
使用 NVIDIA NeMo Curator 新分類器模型增強您的訓練數據 http://www.open-lab.net/zh-cn/blog/enhance-your-training-data-with-new-nvidia-nemo-curator-classifier-models/ Thu, 19 Dec 2024 08:54:20 +0000 http://www.open-lab.net/zh-cn/blog/?p=12475 Continued]]> 分類器模型專門用于將數據分類為預定義的組或類,在優化數據處理流程以微調和預訓練生成式 AI 模型方面發揮著關鍵作用。它們的價值在于通過過濾低質量或有毒數據來提高數據質量,確保下游流程只獲得干凈、相關的信息。 除了過濾之外,classifier 模型還通過數據豐富來增加價值,使用元數據 (例如 domain、type 或 content específics 和 creative quality-specific blends) 標記數據。這些功能不僅能夠簡化數據準備,還能讓用戶深入了解在生產環境中如何使用模型。例如,classifier 可以幫助理解用戶提示的復雜性和領域,開發者可以將這些提示路由到最合適的模型。 NVIDIA NeMo Curator 團隊之前發布了兩個分類器模型: 除 BERT 風格分類器模型外,NeMo Curator 還支持基于 n-gram…

Source

]]>
12475
統一虛擬內存利用 RAPIDS cuDF 為 pandas 提供強力支持 http://www.open-lab.net/zh-cn/blog/unified-virtual-memory-supercharges-pandas-with-rapids-cudf/ Thu, 05 Dec 2024 07:07:40 +0000 http://www.open-lab.net/zh-cn/blog/?p=12395 Continued]]> 上一篇文章 中介紹的 是一個 GPU 加速庫,可加速 pandas 以實現顯著的性能提升,速度最高可提升至原來的 50 倍,而無需對現有代碼進行任何更改。作為 NVIDIA RAPIDS 生態系統的一部分, 充當代理層,盡可能在 GPU 上執行運算,必要時 (通過 pandas) 回退至 CPU。這可確保與完整的 pandas API 和第三方庫兼容,同時利用 GPU 加速加快數據處理速度。只需加載 ,用戶即可維護熟悉的 pandas 工作流程,同時獲得統一的 CPU/GPU 體驗。 在幕后, 默認使用托管內存池,使其能夠處理超過 GPU 物理內存的數據集。這是通過 CUDA Unified Virtual Memory (UVM) 實現的,可提供跨主機 (CPU) 和設備 (GPU) 內存的統一地址空間。UVM 允許 超額訂閱 GPU 內存,根據需要自動在主機和設備之間遷移數據。

Source

]]>
12395
RAPIDS 與 Dask 結合實現多 GPU 數據分析的高效實踐指南 http://www.open-lab.net/zh-cn/blog/best-practices-for-multi-gpu-data-analysis-using-rapids-with-dask/ Thu, 21 Nov 2024 06:58:04 +0000 http://www.open-lab.net/zh-cn/blog/?p=12161 Continued]]> 隨著我們向更密集的計算基礎設施邁進,擁有更多的計算、更多的 GPU、加速網絡等,多 GPU 訓練和分析變得越來越流行。隨著開發者和從業者從 CPU 集群轉向 GPU 集群,我們需要工具和最佳實踐。RAPIDS 是一套開源的 GPU 加速數據科學和 AI 庫。借助 Spark 和 Dask 等工具,這些庫可以輕松地針對更大的工作負載進行橫向擴展。本博文簡要概述了 RAPIDS Dask,并重點介紹了多 GPU 數據分析的三種最佳實踐。 在使用 GPU 實現最高性能時,用戶通常會面臨內存壓力和穩定性問題。雖然 GPU 在計算方面比 CPU 更強大,但與系統內存相比,GPU 的內存通常更少。例如,GPU 工作負載通常在核外場景中執行,此時 GPU 內存小于一次處理工作負載所需的內存總量。此外,CUDA 生態系統提供了 多種類型的內存 ,用于不同的目的和應用。

Source

]]>
12161
NVIDIA CUDA-X 現可加速 Polars 數據處理庫 http://www.open-lab.net/zh-cn/blog/nvidia-cuda-x-now-accelerates-the-polars-data-processing-library/ Tue, 08 Oct 2024 07:52:07 +0000 http://www.open-lab.net/zh-cn/blog/?p=11450 Continued]]> Polar 是發展最快的數據分析工具之一,每月的下載量剛剛突破 900 萬次。作為現代 DataFrame 庫,它旨在高效處理適合在單臺機器上運行的數據集,而不會產生大規模工作負載所需的分布式計算系統的開銷和復雜性。 隨著企業不斷處理復雜的數據問題——從檢測信用卡交易中的時間限制模式到管理全球客戶群快速變化的庫存需求——更高的性能至關重要。 Polars 和 NVIDIA 工程師剛剛發布了由 RAPIDS cuDF 提供支持的 Polars GPU 引擎 的公開測試版,將加速計算引入到不斷發展的 Polars 社區,無需更改代碼。這進一步加速了 Polars 的查詢執行,與在 CPU 上運行相比,這款快速數據處理軟件的速度提高了 13 倍。這就像為獵豹提供火箭燃料,幫助它更快地沖刺。 Polars 的作者兼首席執行官 Ritchie Vink 表示:

Source

]]>
11450
由 RAPIDS cuDF 提供支持的 Polars GPU 引擎現已推出公測版 http://www.open-lab.net/zh-cn/blog/polars-gpu-engine-powered-by-rapids-cudf-now-available-in-open-beta/ Tue, 17 Sep 2024 09:25:59 +0000 http://www.open-lab.net/zh-cn/blog/?p=11317 Continued]]> 今天,Polars 發布了一款由 RAPIDS cuDF 提供支持的新型 GPU 引擎,可在 NVIDIA GPUs 上將 Polars 工作流的速度提升高達 13 倍,使數據科學家能夠在單臺機器上在數秒內處理數億行數據。 像 pandas 這樣的傳統數據處理庫是單線程的,超過數百萬行數據的使用已變得不切實際。分布式數據處理系統可以處理數十億行,但會增加處理中小型數據集的復雜性和開銷。 在高效處理數十萬行到數百萬行數據的工具方面存在差距。此類工作負載在金融、零售和制造等行業的模型開發、需求預測和物流中很常見。 Polars 是面向數據科學家和工程師的發展最快的 Python 庫之一,專為應對這些挑戰而從頭開始設計。它使用高級查詢優化來減少不必要的數據移動和處理,使數據科學家能夠在單臺機器上大規模地順利處理數以億計行的工作負載。

Source

]]>
11317
使用 RAPIDS cuDF pandas 加速器模式處理 10 億行數據 http://www.open-lab.net/zh-cn/blog/processing-one-billion-rows-of-data-with-rapids-cudf-pandas-accelerator-mode/ Wed, 11 Sep 2024 08:01:48 +0000 http://www.open-lab.net/zh-cn/blog/?p=11278 Continued]]> 十億行挑戰賽 (One Billion Row Challenge) 是一個有趣的基準測試,旨在展示基本的數據處理操作。它最初是作為純 Java 競賽發起的,現已聚集了其他語言(包括 Python、Rust、Go、Swift 等)的開發者社區。對于許多有興趣探索文本文件閱讀細節、基于哈希的算法和 CPU 優化的軟件工程師來說,這項挑戰賽非常有用。截至 2024 年年中,One Billion Row Challenge GitHub 存儲庫已經吸引了超過 1.8K 個分叉,獲得了超過 6K 顆星,并啟發了數十篇博客文章和視頻。 本文將展示如何使用 RAPIDS cuDF pandas 加速器模式完成處理十億行數據的挑戰。具體而言,我們將展示 cuDF pandas 加速器版本 24.08 中的兩項新功能 —— 大字符串支持和帶預取的托管內存 —— 如何借助 GPU…

Source

]]>
11278
人人超碰97caoporen国产