CUDA入門教程;Transformer太火不是好事?;探求GPU極限性能的利器|AI系統前沿動態

語言: CN / TW / HK

1. PyTorch 創始人:Transformer 的流行可能是一把雙刃劍

要説 Transformer 有多厲害,比如 OpenAI 重磅推出的 GPT-3,就是基於 Transformer 實現的。至於傳播速度方面,短短 5 年,Transformer 便在 TensorFlow 、PyTorch 等主流深度學習框架支持的 AI 程序中佔據一席之地。

不過與高調宣傳 Transformer 的學者不同,這次 PyTorch 創始人、Meta 傑出工程師 Soumith Chintala 卻唱起了反調,並警告説,Transformer 如此流行,可能是一把雙刃劍。

鏈接: https://mp.weixin.qq.com/s/ZgdP3HFM4jZsWZfJvciQ3A

2. MAIProf:Meta 生產 PyTorch 模型的性能調試工具

PyTorch 在生產環境中的性能調優越來越重要。一個功能強大的性能調試工具是這個過程的關鍵。通過一個關於生產模型的案例研究,PyTorch 證明 MAIProf 是一個用於識別優化機會的強大 AI 性能調試基礎架構。

在 Meta,從性能調試新手到專家的 100 多名工程師使用 MAIProf 來識別更多類型的瓶頸。其中包括緩慢的數據加載、分佈式訓練問題(例如負載不平衡和過度通信)。MAIPprof 涵蓋了包括推薦、視覺和自然語言處理等主要類別模型。總之,它現在是生產 PyTorch 工作負載時調試性能的不可或缺的工具。

鏈接: https://pytorch.org/blog/performance-debugging-of-production-pytorch-models-at-meta/?utm_source=organic_social&utm_medium=linkedin&utm_campaign=performance_debugging

3. 精度、耗時、顯存消耗、網絡結構...一行代碼深度解析訓練性能指標

正所謂“工欲善其事,必先利其器”, 一個能實時監控模型訓練指標、硬件性能消耗情況、可視化網絡結構和每層網絡參數變化的工具可大幅縮減模型開發時間,推動人工智能技術快速應用落地。

飛槳可視化分析工具 VisualDL 以豐富的圖表及清晰的可視化解析功能幫助開發者直觀地理解深度學習模型訓練過程中的各項信息。

鏈接: https://mp.weixin.qq.com/s/Vi6erY48x8IUU1rQNw95Uw

4. 視頻教程|OneFlow 源碼解析(2):OneFlow 的 4 種執行模式

OneFlow 的執行模式有 2 個維度,其一可從計算圖執行方式劃分,可分為靜態圖模式、動態圖模式;其二可從張量類型劃分,即單機單卡的 local tensor 模式,以及分佈式訓練下的 global tensor 模式。這兩個維度可以組合得到 4 種執行實際情況。OneFlow 提供給用户的接口又是儘量統一的。

本視頻將介紹 OneFlow 如何在運行時判斷應該使用哪種模式。如何做到用户儘可能易用、無感於多種模式的差別,同時又能儘量發揮每種模式的特點。

鏈接: https://www.bilibili.com/video/BV17P411G76y/?spm_id_from=333.999.0.0&vd_source=25c3e9bdd8a5701b69d322f471c11c38

5. SIMT、SIMD 和 DSA(2)

SIMD 和 DSA 以及 SIMT 這些詞雖然經常放到一起説,但三者的指代比較混亂,很容易產生文字遊戲。有時指的是指令、有時候指的是體系結構、有時候又是指編程模型。同時在每個層面的 scope 也不是很清晰,於是就有了一定偷換概念的空間。SIMT 通常指代一種編程模型,而 SIMD 通常指代的指令,DSA 在某些場合指代指令,某些場合又指代架構。

鏈接: https://zhuanlan.zhihu.com/p/564623647

6. CuAssembler 開源 | 探求 NVIDIA GPU 極限性能的利器

CuAssembler 是個 CUDA SASS 彙編器,主要是把 nvdisasm 生成的反彙編輸出彙編成可加載執行的 cubin 文件,實現對最終彙編機器碼的絕對控制,彌補當前 NV 沒有官方彙編器支持的不足。

鏈接: https://mp.weixin.qq.com/s/ousE3sYtDd7zhV-_AtvA7w

7. 用於大規模深度推薦模型的專用 GPU 推理參數服務器

在大規模推薦系統中,Embedding 通常在數據中心消耗大量內存進行存儲。並且整個模型運算過程中,有大量時間花費在參數服務器上搜索對應 Embedding 向量,這個步驟增加了整體 latency,拖慢了下游的計算。

基於在真實數據集中觀察到的方法,本文提出 Embedding 的 Key 往往具有很強局部性,並且遵循冪律分佈。基於上述觀察作者提出了 HugeCTR 分層參數服務器,他們將熱數據保存在 GPU 顯存中,而其他部分則有參數服務器進行補充,其保存了完整的 Embedding 副本。

鏈接: https://zhuanlan.zhihu.com/p/568639935

8. CUDA 編程入門極簡教程

2006 年,NVIDIA 公司發佈了 CUDA,CUDA 是建立在 NVIDIA 的 CPUs 上的一個通用並行計算平台和編程模型,基於 CUDA 編程可以利用 GPUs 的並行計算引擎來更加高效地解決比較複雜的計算難題。近年來,GPU 最成功的一個應用就是深度學習領域,基於 GPU 的並行計算已經成為訓練深度學習模型的標配。

鏈接: https://zhuanlan.zhihu.com/p/34587739

9. Jeff Dean:機器學習在硬件設計中的潛力

為什麼芯片設計需要很長時間?能不能加速芯片設計週期?能否在幾天或幾周之內完成芯片的設計?這是一個非常有野心的目標。

Google 在這個領域已率先出發。Google AI 負責人 Jeff Dean 分享了《機器學習在硬件設計中的潛力》,他介紹了神經網絡發展的黃金十年,機器學習如何影響計算機硬件設計以及如何通過機器學習解決硬件設計中的難題,並展望了硬件設計的發展方向。

鏈接: https://mp.weixin.qq.com/s/_JmINzustpH1bEDMjz9WaA

10. AI 加速器與機器學習算法:協同設計與進化

關注 AI 和半導體行業的朋友近來可能聽説過“機器學習(ML)專用處理器”(即 AI 加速器)。最常見的 AI 加速器莫過於 NVIDIA GPU,此外還有 Intel 的 Habana Gaudi 處理器、Graphcore 的 Bow IPU、Google 的 TPU、AWS 的 Trainium 和 Inferentia 芯片等。

為什麼如今有這麼多 AI 加速器可供選擇?它們和 CPU 有什麼不同?算法如何改變才能適應這些硬件?硬件又該如何發展才能支持最新的算法?本文將一一解答。

鏈接: https://mp.weixin.qq.com/s/8ObtUlKqfDfCbE__bWE1hQ

11. 免費用 Stable Diffusion“腦補”世界名畫畫框外世界

Stable Diffusion Infinity,是大火的 AI 繪圖新星 Stable Diffusion 的一項子功能。只需要一兩句話提示,Stable Diffusion 就可以畫出你想要的東西,而且和已有部分銜接自然,沒什麼違和感。

鏈接: https://mp.weixin.qq.com/s/rX5I6iJFgHeGShR2w5wxkw

12. 逆向工程:揭示 Google Colab 未公開的祕密

對於負責在 Jupyter Notebook 編程的數據科學家來説,Colab 早已成為了默認的運行環境。然而,將 Colab 的算力運用到除 Jupter Notebooks 以外的其他應用,則是一件極其困難的事。

出於這個原因,作者將探究 Google Colab 的內部結構,並嘗試稍微改變 Colab 的內置規則。需要提前聲明的是,作者只是想探究 Colab,不會對 Colab 本身或者它的用户造成任何影響。

鏈接: https://mp.weixin.qq.com/s/OQOQ4Z0DVv_C0tsrRDJ7TQ

歡迎下載體驗 OneFlow v0.8.0 最新版本: https://github.com/Oneflow-Inc/oneflow/