第六届中国软件开源创新大赛——飞桨赛题新鲜出炉,速来pick!

news/2024/11/29 7:49:27/

最近想要充个电🔋

飞桨邀你开启开源贡献之旅

寻找那个最“会”的你

顶级开源项目、资深研发指导、高阶开发者合作交流,‍‍

Buff 叠满!

技能提升、丰富简历、高额奖金,

你还不心动?

39bd29b1eeb7fdf076e478be4b036352.png

赛事简介

中国软件开源创新大赛已成功举办五届,大赛面向国家“十四五”开源生态发展战略布局,聚焦“卡脖子”软件领域以及人工智能、大数据、芯片设计、物联网等前沿技术领域的开源软件,旨在为国内开源社区提供展示、交流、合作的平台,激发开源创新活力,培养开源实践人才,助力开源生态建设的高质量发展。

第六届“中国软件开源创新大赛”在国家自然科学基金委信息科学部的指导下,由中国计算机学会( CCF )主办,西北工业大学、绿色计算产业联盟、CCF 开源发展委员会联合承办。联合百度飞桨、清华大学等企业单位以及多所高校共同设置赛题,大赛分为“开源项目贡献赛” “开源任务挑战赛” “开源案例教学赛”和“开源代码评注赛”四个赛道。

开源任务挑战赛赛道——飞桨框架任务挑战赛 全新上线,通过比赛机制,鼓励选手了解与参与深度学习开源项目,为中国开源生态建设贡献力量。

1b34d4da8642846fac2cc979041a5485.png

赛题介绍

本次中国软件开源创新大赛联合飞桨开源社区,开放了实现飞桨框架的  python level jit compiler 、改进 CINN 日志和报错系统、实现飞桨框架动态图反向图的可视化等相关的共计 7 道赛题,面向全球开发者开放报名。以线上比赛的形式进行,参赛选手在规定时间内自由组队(最多三人)选择合适的开发任务,以 Pull Requests 的形式完成贡献,根据项目的难易程度和完成情况,获得相应奖金、礼品和证书,快来组队参赛吧!

比赛报名和参赛的入口为 AI Studio平台(点击下方小程序直接报名):

赛题一:实现飞桨框架的 python level jit compiler

飞桨深度学习框架提供了动态图编程的模式来开发深度学习模型(方便开发与调试),以动转静的方式将模型转为静态图来进行推理部署(方便全图优化和高性能运行)。

本赛题,要求为飞桨框架实现一个 python 层的 just-in-time compiler,可以通过在 python 代码执行前通过分析 python bytecode,来产出计算子图,对子图进行图优化,并在某个计算后端上进行执行。在飞桨框架实现既可以动态图灵活开发又可以高效运行的深度学习模型开发方式。

赛题二:改进 CINN 日志和报错系统

CINN 当前的日志和报错是使用的 GLOG,通过 VLOG 宏输出日志,通过 CHECK 宏检查正确性。由于 GLOG 本身的缺陷,以及缺乏统一的日志规范,导致 CINN 内冗余日志信息较多,报错内容中有效信息较少。

本赛题,要求为 CINN 改进实现一套完整的日志和报错系统,类似飞桨框架中的 PADDLE_ENFORCE 体系,可以在开发时为开发者提供规范的日志指引,在报错时为调试者提供有效的调试信息。从而提供友好的开发体验和调试体验,提升开发和调试效率。

赛题三:Fluid 算子函数式迁移专项

飞桨深度学习框架在 2.3 版本发布了高可复用算子库 PHI(Paddle HIgh reusability operator library ),支持组合式算子功能复用、Primitive 算子内核复用和插件式加速库复用,可以通过对函数式算子接口组合调用的方式实现新算子。

本赛题要求将飞桨原 Fluid 算子库下的部分重要算子改写成函数式并迁移到 PHI 算子库中,从而使飞桨框架可以借助 PHI 算子库提供的功能特性,统一和低成本地对这些算子做调度优化。

赛题四:在飞桨框架中引入 clang-tidy

飞桨是集深度学习核心训练和推理部署、基础模型库、端到端开发套件和丰富的工具组件于一体的开源深度学习平台。百度飞桨在追求高性能的同时,也非常关注框架自身的安全隐患以及健壮性,例如:我们严格且严谨地将一切 warning 视为 error ,引入 clang-tidy 有助于增加飞桨的健壮性。

本赛题,要求在飞桨框架中引入 clang-tidy,并希望引入尽可能多的对 paddle 有利的 clang-tidy 的功能。

赛题五:将 xdoctest 引入到飞桨框架工作流中

xdoctest 是一个示例代码自动执行和检查工具,可以自动执行 Python docstring 中的示例代码,并对示例代码输出进行检查。

本赛题,要求将 xdoctest 引入到飞桨框架的工作流中,利用 xdoctest 来自动检查示例代码运行正确,且输出结果匹配,以确保示例代码输出的一致性,进一步提高飞桨框架示例代码的质量。

赛题六:飞桨框架 C++ 文档抽取与展示

飞桨深度学习框架为用户提供了 Python API 官方文档,便于用户查阅 API 对应的源代码、参数、返回值等。

本赛题,要求为飞桨框架自动抽取和展示 C++ 文档,并上线至飞桨官网。

赛题七:实现飞桨框架动态图反向图的可视化

飞桨深度学习框架提供了动态图编程的模式来开发深度学习模型(方便开发与调试),但动态图的反向图调试能力仍存在不足。

本赛题,要求为飞桨动态图框架添加反向节点在 Python 端的访问机制。并在该机制基础上,为飞桨框架扩展反向图可视化能力。

比赛设置赛事交流QQ群,各任务方向都有专属群,资深算法工程师贴身指导答疑。欢迎后台私信,选择你感兴趣的任务报名参与吧!

‍‍‍‍

908223b46248eab92b56332c7203fa07.png

时间安排

本次活动分为三个阶段,第一阶段与第二阶段分别选出 10 位优秀开发者进入半决赛,通过预答辩,进行阶段性礼品发放,20 位开发者有机会参与决赛答辩并获得最高 5 万元现金奖励。

3e92b722175d0540e9bdaea9dc1dd602.png

fae3cbd88ba36cba550033fa6f3b039a.png

奖项设置

最后通过答辩的 14 支队伍分获一、二、三等奖。

53440faf81634a57461931ab8eb95c5c.png

比赛成绩优秀者,还可以获得百度绿色通道或其他便利,可提升简历曝光度及面试发起率。

心动不如行动,立即报名吧~


http://www.ppmy.cn/news/52091.html

相关文章

Vue之指令详解与自定义指令

指令 想要了解自定义指令,那肯定得先明白什么是指令。 指令的本质:语法糖,标志位。在编译阶段 render 函数里,会把指令编译成 JavaScript 代码。 常见的Vue内置指令有: v-on 即 。v-on:click”function“&#xff…

C++ 类和对象(上)

类 面向对象的三大特性:封装,继承,多态 C语言结构体中只能定义变量,在C中,结构体内不仅可以定义变量,也可以定义函数。比如: 之前在数据结构初阶中,用C语言方式实现的栈,…

JavaScript每日五题面试题(第九天)

1、你如何理解Promise? Promise是异步编程的一种解决方案,它是一个对象,可以获取异步操作的消息,他的出现大大改善了异步编程的困境,避免了地狱回调,它比传统的解决方案回调函数和事件更合理和更强大。 2…

数据结构——单链表

目录 1.问题引出 : 2.单链表的出现: 2.1单链表的增添: 2.1.1:尾插 2.1.2:头插 2.1.3:任意插入 2.2:单链表的删除 2.2.1:尾删 2.2.2:头删 2.2.3:任…

022:Mapbox GL 加载geojson数据,形成热力图,自定义样式

第022个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中加载geojson数据,形成热力图. paint设置的参数:heatmap-color,heatmap-intensity,heatmap-opacity,heatmap-radius,heatmap-weight,visibility,具体请参考下面的api链接。 直接复制下面的 vue+mapbox源代…

Ddocker cgroups资源限制

目录 一、概述 1、简介 2、cgroups四大功能 3、cpu时间片概念 二、查看容器的默认CPU使用限制 1、进行CPU压力测试 三、创建容器时设置CPU使用时间限制 四、设置CPU资源占用比(设置多个容器时才有效 1、分别进入容器进行压测 查看容器运行状态 五、设置容器…

STM32开发(十七)STM32F103 片内资源 —— 独立看门狗 IWDG 详解

文章目录 一、基础知识点二、开发环境三、STM32CubeMX相关配置四、Vscode代码讲解五、结果演示 一、基础知识点 STM32F10xxx内置两个看门狗,提供了更高的安全性、时间的精确性和使用的灵活性。两个看门狗设备(独立看门狗和窗口看门狗)可用来检测和解决由软件错误引…

Django框架之定义模型和表迁移

django3.0 定义表模型并通过定义好的模型实现源代码创建数据表。 概述 模型是一个用于表示数据的Python类,包含基本的数据字段和行为。 通常一个模型就代表一张数据库表。 模型继承自django.db.models.Model,模型的每一个属性代表一个数据的字段。 定…