> 文档中心 > 岁末年初,为你打包了一份技术合订本

岁末年初,为你打包了一份技术合订本

fab2881c985e54ed2eb2a232be1aa8ff.png

“Show me the code”有时并不足够,你还需要注释辅助去深入理解代码背后的思想和逻辑。

作为一个开源社区,OneFlow不止希望通过公开的源码与开发者和用户交流,还希望通过一篇篇技术博客分享和检验我们的想法,分享OneFlow做了什么以及为什么这样做,如何才能做到“最好”,以及分析深度学习框架乃至AI行业的发展趋势。

为了回答上述问题,2021这一年,OneFlow公号持续向开发者分享了近60篇技术内容。其中绝大部分都是OneFlow团队出产的原创文章,部分则是其他作者慷慨授权的编译转载内容。

它们主要包括深度学习框架解析、最新技术实践、行业趋势观点,技术创新的产生和发展,以及OneFlow开发者的程序人生故事。我们相信,这些内容能让读者更好地了解深度学习框架和相关AI技术,更重要的是促进社区的各种思维和观点的碰撞,激发出更好的技术创新。

写作这些内容并非易事,但我们尽可能做到独特、有信息增量,是读者朋友所喜闻乐见的,一如我们开发OneFlow框架的技术追求。

读者朋友的积极探讨和反馈,是我们能持续分享高价值内容的最大动力。新的一年,更多高品质内容正在打磨中,OneFlow将继续分享我们所理解的技术世界。

以下是OneFlow社区在2021年发布的重要内容汇总:

最好的分布式框架究竟是怎样的

大数据、大模型持续发展的背景下,开发者们越来越感到原有深度学习框架“不够用了”。关于下一代深度学习框架形态的讨论已摆上台面,OneFlow创始人袁进辉通过以下文章分析了原有框架面临的桎梏,为什么亟需OneFlow这样的新一代深度学习框架,以及最易用、效率最高的分布式框架如何演进。

  • 浅谈GPU虚拟化和分布式深度学习框架的异同

  • 再谈“去虚拟化”对深度学习系统的必要性

  • 如何超越数据并行和模型并行:从GShard谈起

  • 训练GPT-3,为什么原有的深度学习框架吃不消

  • 最理想的点到点通信库究竟是怎样的

  • 对抗软件系统复杂性③:恰当分层,不多不少

  • 对抗软件系统复杂性②:全局一致,统一隐喻

  • 对抗软件系统复杂性①:如无必要,勿增实体

  • 动态调度的“诅咒”| 原有深度学习框架的缺陷③

  • 数据搬运的“诅咒” | 原有深度学习框架的缺陷②

  • 资源依赖的“诅咒” | 原有深度学习框架的缺陷①

  • 如何简单理解1.6万亿参数的Switch Transformer

框架的架构设计

基于Actor、SBP、流式调度等先进的分布式系统架构设计及理念,OneFlow做到了“人有我优、人无我有”的极致高效性。

  • GPT-3模型为何难以复现?这也许是分布式AI框架的最优设计

  • 一个Job在OneFlow中的执行过程(上)

  • 一个Job在OneFlow中的执行过程(中)

  • 一个Job在OneFlow中的执行过程(下)

  • 深度学习框架OneFlow是如何和ONNX交互的

  • 为OneFlow添加新的前端语言

框架技术实践

今年OneFlow框架全力攻关一个重点是单机单卡的易用性体验,OneFlow v0.5.0发布后,eager模式已对齐PyTorch,常用的模型库、算子都有了,更多算子正在添加中,万一缺少你想要的算子,别忘了在GitHub上提个issue。

  • 对齐PyTorch,一文详解OneFlow的DataLoader实现

  • 以OneFlow为例探索MLIR的实际开发流程

  • 用OneFlow实现基于U型网络的ISBI细胞分割任务

  • 深度学习框架量化感知训练的思考及OneFlow的解决方案

  • 基于OneFlow实现量化感知训练

  • 用OneFlow实现数据类型自动提升

  • 后向重计算在OneFlow中的实现:以时间换空间,大幅降低显存占用

  • OneFlow框架添加算子实践:expand和repeat

  • 以OneFlow为例梳理深度学习框架的那些插值方法

  • OneFlow中的错误处理:Maybe

  • InsightFace:用OneFlow轻松实现超大规模人脸识别模型

  • 快过HugeCTR:用OneFlow轻松实现大型推荐系统引擎

与框架相关的技术

每次看到那些写透一个技术点或极具前瞻性观点的文章,多数人会有“看这一篇就够了”的满足感。好的技术综述文章也是这样。

  • GPU架构演进十年,从费米到安培

  • Credit-based Flow Control的前世今生

  • 分布式领域最重要的一篇论文讲了什么

  • AI算力的阿喀琉斯之踵:内存墙

  • 颠覆式编程:软件2.0

  • 向量时钟的本质

CUDA优化实践

CUDA入门的文章市面上层出不穷,但关于深度调优的内容比较稀缺。该系列的首篇文章一经发布,CUDA小分队就收到了诸多读者的连环催更要求。

  • 如何实现一个高效的Softmax CUDA Kernel

  • OneFlow CUDA Elementwise模板库的设计优化思路

  • CUDA优化之LayerNorm性能优化实践

  • 如何设置CUDA Kernel中的grid_size和block_size

  • 基于OneFlow实现Unfold、Fold算子

  • 如何实现比PyTorch快6倍的Permute/Transpose算子

  • CUDA高性能计算经典问题②:前缀和

  • CUDA高性能计算经典问题①:归约

科技星辰

如今的中国不乏满怀激情的创业者,遗憾的是,我们在底层硬科技的创新思维是固化的甚至是空白的,人们往往由于不知道如何创新而手足无措、望而生畏。因此,了解硬核技术的创新是如何发生的在这个时代尤为重要。追溯前人足迹,科技创新领域或许也需要一场“文艺复兴”。

  • 计算机史最疯狂一幕:豪赌50亿美元,“蓝色巨人”奋身一跃

  • 没有这个传奇工程师,就没有今天的Windows

  • 计算机架构史上的一次伟大失败,多数人都不知道

  • 并行机缔造者希利斯和思维机器的浮沉十年

OneFlow的开发者们

不同背景的人才组建了这支独特的OneFlow团队,他可能是你身边平时看起来并不起眼的同学、同事,但深入了解后你会发现那些你不知道的闪光之处。每个人的人生经历都如此不同,他们的经历也将在学习和工作中启发你我。我们也希望,通过分享这支年轻团队的故事联结更多同类一起并肩作战。

  • 管张汇泓:一份邮件把我带到了开源世界

  • 姚迟:新东方讲师到AI框架工程师

  • 胡珈魁:00后工程师的AI进阶之路

  • 李一鹏:一份让我无法拒绝的offer

  • 徐之秋:从游戏启蒙的00后AI工程师

  • 梁德澎:当一个炼丹师去做框架开发

  • 张建浩:一个开源爱好者的框架开发之路

  • 张晓雨:在这里找到热爱开源的理想状态

  • 成诚:从实习生到OneFlow开发组负责人

  • 吴文童:产品和开发者之间是相互作用的

上述文章作者:Andrej Karpathy、Amir Gholami、成诚、陈清扬、郭冉、柳俊丞、李新奇、刘明阳、李响、乔晶、吴娱、王金许、袁进辉、姚迟、郑泽康、张晓雨、张伟、张铁蕾、赵露阳、周泽楷

2022年,一起向未来。

题图源自congerdesign, Pixabay

其他人都在看

  • 动态调度的“诅咒”

  • 2021,我们的浮生一日

  • OneFlow v0.6.0正式发布

  • 深度学习框架如何优雅地做算子对齐任务

  • Credit-based Flow Control的前世今生

  • 计算机史最疯狂一幕:“蓝色巨人”奋身一跃

欢迎下载体验OneFlow新一代开源深度学习框架:GitHub - Oneflow-Inc/oneflow: OneFlow is a performance-centered and open-source deep learning framework.OneFlow is a performance-centered and open-source deep learning framework. - GitHub - Oneflow-Inc/oneflow: OneFlow is a performance-centered and open-source deep learning framework.https://github.com/Oneflow-Inc/oneflow/

2f4acc55d4fbddb358d0acfddc8a60a9.png