“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/

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

  1. 岁末年初3Q大战惊现高潮,360震撼推出Android 3Q IM即时通讯

    岁末年初3Q大战惊现高潮,360震撼推出Android "3Q" IM即时通讯 看过了QQ和360斗争的开端高潮,当然现在还不能说这场斗争已经结束,在我看来这次的事件未尝不是一个适 ...

  2. 3Q大战现高潮,360 推出Android 3Q IM即时通讯,岁末年初3Q大战惊现高潮

    岁末年初3Q大战惊现高潮,360震撼推出Android "3Q" IM即时通讯 看过了QQ和360斗争的开端高潮,当然现在还不能说这场斗争已经结束,在我看来这次的事件未尝不是一个适 ...

  3. 软件打包安装工具第四篇(打包工具原理及技术)

    打包工具原理及技术 1.MV模型 2.打包原理 2.1.方案一 2.2.方案二 3.结束语 1.MV模型 打包工具采用的是MV模型,采用此模型的原因是因为打包界面中打包列表.文件列表以及属性面板显示的 ...

  4. 50年代黄岩师专_300多位30、40和50年代获得第一份技术工作的开发人员的故事

    50年代黄岩师专 Over the weekend, I built a list of 300 developers who got their first tech job in their 30 ...

  5. 【日拱一卒进击大厂系列】如何写好一份技术简历

    引言 最近一直在帮团队进行人员招聘,越来越感觉招聘就像是大浪淘金,淘到一份优秀的简历都是一件不容易的事情.招聘的第一步就是要看简历进行初步筛选.在看完上百份简历之后,发现很多小伙伴并不知道如何写好一份 ...

  6. 我,45岁程序员,历时7个月,终于在深圳找到一份技术工作

    在互联网职场有这么几个经久不衰的话题,那就是35岁以上的程序员都去哪了?这行到底能不能干到40岁?40多岁还能不能写代码? 昨天,笔者收到一位40多岁程序员的投稿,笔者将他的职场经验分享给大家, 45 ...

  7. python最新技术开锁工具_精选26个Python实用技巧,想秀技能先Get这份技术列表!...

    原标题:精选26个Python实用技巧,想秀技能先Get这份技术列表! 出品 | AI科技大本营 本文整理了 26 个 Python 有用的技巧,将按照首字母从 A~Z 的顺序分享其中一些内容. al ...

  8. 开挂进大厂:BATJ面试官能问到的Java面试题,都被打包在这份PDF文档里

    拿到这个PDF之后,面试官所问到的知识点相信你都能答得上来!我自己靠着这一份PDF拿下了BAT+网易 美团等offer~希望你在拿到之后也能好好学习! 面经中有他的知识点的答案,如下图示例,非常详细! ...

  9. 岁末年初,2013随笔

    还记得去年的这个时候漫卷诗书气自华,再看金城一路向北.总想着说过了今天还有明天,可是过了明天是什么,是2014... 我没有记错,因为明天要放假元旦假了,回首看来这一年自己走过的点点滴滴,没有大起大落 ...

最新文章

  1. extra加ing_英语词汇学各个章节的内容
  2. 为何红黄蓝一边在被做空,一边在逆势上涨?
  3. oraclemt 无法启动服务_电脑文件无法设置共享的解决方法
  4. java学习(85):Interage包装类基本使用
  5. 如何使用硬盘安装debian8.3?
  6. javaScript一种优化模式-初始化时分支
  7. 用python画分形树的详细解析_基于Python的matplotlib库绘制分形树
  8. 数据库实验5 数据库的嵌套查询实验
  9. 轻量化、松耦合的手持RGB-D室内环境实时重建系统
  10. php常见问题辨析(二)
  11. 毕设项目 - 基于SSM的音乐网站(含源码+论文)
  12. Tomcat、Servlet、Servlet容器
  13. Padavan(老毛子)脚本自动切换网关和 DNS 服务器
  14. handler机制及使用场景
  15. 任正非:不惑之年创立华为是生活所迫,CEO真不是人干的活
  16. 头像制作抖音微信壁纸小程序搭建一个基于uniCloud阿里OSS对象存储的免费图床源码
  17. Android studio 改app图标,名字及一键拨号
  18. 王劲说无人车是他的终身事业,他要重回行业一线!
  19. 解决高并发下Redis连接失败redis.clients.jedis.exceptions.JedisConnectionException Attempting to read from a bro
  20. Photoshop CS3系列视频教程合集 - 视频中心·网易学院

热门文章

  1. 【AD16】PCB过孔盖油
  2. 火车站的江湖,远比你想象的深
  3. vmware 安装 黑群晖
  4. 十大面试问题解惑,秒杀一切HR、技术面试。程序员必读! 最能体现求职者能力的就是面试,能不能拿到Offer,取决于你面试时的表现,只有有准备才能在面试过程中游刃有余。小编收集了10个面试官最爱提的问题
  5. PHP修改图片上的文字,怎么用ps改图片上的字
  6. 【模拟电路】波形产生与变换设计(555+运放)
  7. 听雨小筑---开张纪念
  8. 机器人编程趣味实践14-机器人三维仿真(Gazebo+TurtleBot3)
  9. 《嫌疑人X的献身》-东野圭吾
  10. 关于C语言的图像光标处理