Giter VIP home page Giter VIP logo

opensourcetalent's Introduction

腾讯犀牛鸟开源人才培养计划

计划简介

Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、开放原子开源基金会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。

2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

opensourcetalent's People

Contributors

gracewang820 avatar tencent-adm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

opensourcetalent's Issues

2022腾讯犀牛鸟开源人才培养计划-3TS

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
腾讯公司TDSQL团队与**人民大学联合研制的面向数据库事务处理的验证系统。该系统旨在通过设计和构建事务(包括分布式事务)处理统一框架,并通过框架提供的访问接口,方便使用者快速构建新的并发控制算法;通过验证系统提供的测试床,可以方便用户根据应用场景的需要,对目前主流的并发控制算法在相同的测试环境下进行公平的性能比较,选择一种最佳的并发控制算法。目前,验证系统已集成13种主流的并发控制算法,提供了TPC-C、PPS、YCSB等常见基准测试。3TS还进一步提供了一致性级别的测试基准,针对现阶段分布式数据库系统的井喷式发展而造成的系统选择难问题,提供一致性级别判别与性能测试比较。

项目导师
李海翔,3TS开源项目负责人
陈育兴,3TS开源项目负责人

导师寄语
Tencent Transaction Processing Testbed System (简称 3TS ),是腾讯公司 TDSQL 团队与** 人民大学数据工程与知识工程教育部重点实验室,联合研制的面向数据库事务处理的验证系统。可以方便用户根据应用场景的需要,对目前主流的并发控制算法在相同的测试环境下进行公平的性能比较,选择一种最佳的并发控制算法。目前,验证系统已集成十几种主流的并发控制算法,提供了 TPC C 、 YCSB 等常见基准测试。我们还致力于1,方便设计,测试,验证新的控制算法,从而提高算法性能;2,方便检验算法的正确性,尤其保证是事务的一致性。

编程任务

题目一:基于3TS-Coo框架,测试数据库的一致性

目标对象:数据库爱好者、初学者(会SQL语句)、DBA等
内容:
此题目是判断数据库事务并发控制算法的执行正确性(一致性),核心任务是测试数据库的一致性,如(不限制于如下数据库,可以是3TS测过之外的任何数据库):
1 YugaByte DB的一致性测试与验证
2 Cassandra
3 FaunaDB
4 Redis-Raft
5 Dgraph

基本要求:数据库事务处理知识,linux机器(4核8G以上机器),C++,python, SQL

预备知识:

  1. 数据库事务处理数据一致性评估验证模型:https://github.com/Tencent/3TS/tree/coo-consistency-check/

预期结果:
1.初级:基于3TS-Coo框架部署代码,部署单机数据库(e.g., PostgreSQL, MySQL)的一致性测试与验证
2.中级:熟悉3TS-Coo的框架、输出阅读文档、输出功能文档完善开源项目文档
3.高级:使用3TS-Coo的框架,测试数据库(我们测试之外的)的一致性

收获:

  1. 熟悉数据库事务处理理技术的一致性的理念
  2. 掌握各个体系一致性的理念和异同

推荐文章:
一致性检测模型:
Adya model:Atul Adya and Barbara H. Liskov. 1999. Weak Consistency: A Generalized Theory and Optimistic Implementations for Distributed Transactions. (1999)
Elle:Peter Alvaro and Kyle Kingsbury. 2020. Elle: Inferring Isolation Anomalies from Experimental Observations. Proc. VLDB Endow. 14, 3 (2020), 268–280. https://doi.org/10.5555/3430915.3442427

题目二:基于3TS实现并发访问控制算法
目标对象:数据库内核技术爱好者、数据库内核引擎研发者、高年级本科或研究生等
内容:
此题目是研究数据库事务并发控制算法的执行性能,核心任务是实现一个并发控制算法(3TS实现之外的),如:
1 2PL Wound-Wait
2 SILO
3 可自行发挥

测试要求:数据库事务处理知识,低配linux机器,C++,python

预备知识:

  1. 多种并发访问控制算法:https://github.com/Tencent/3TS/tree/master/doc/zh
  2. 3TS--分布式事务并发访问控制算法详解--腾讯TDSQL.pdf
  3. 3TS分布式事务处理框架--上--V3.pdf
  4. 3TS分布式事务处理框架--下--V3.pdf

预期结果:
1.初级:部署代码,完成并发控制算法测试,对比各算法差异,输出分析报告
2.中级:熟悉3TS的框架、输出阅读文档、输出功能文档完善开源项目文档
3.高级:基于3TS实现一个并发访问控制算法(该算法不在3TS之列),性能好于3TS提供的算法

收获:

  1. 熟悉数据库事务处理理论和技术
  2. 掌握经典的并发访问控制算法

推荐文章
性能测试框架:
DBX1000: Xiangyao Yu, George Bezerra, Andrew Pavlo, Srinivas Devadas, and Michael Stonebraker. 2014. Staring into the Abyss: An Evaluation of Concurrency Control with One Thousand Cores. Proc. VLDB Endow. 8, 3 (2014), 209–220.
Deneva: Rachael Harding, Dana Van Aken, Andrew Pavlo, and Michael Stonebraker. 2017. An Evaluation of Distributed Concurrency Control. Proc. VLDB Endow. 10, 5 (2017), 553–564.

推荐中文书籍:
《数据库事务处理的艺术:事务管理与并发控制》李海翔

收获:

  1. 熟悉数据库事务处理理技术的一致性的理念
  2. 掌握各个体系一致性的理念和异同

联系导师
李海翔:[email protected]
陈育兴:[email protected]
QQ交流群:429468482

2022腾讯犀牛鸟开源人才培养计划-OpenCloudOS

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
OpenCloudOS的子项目fuse-extent的目标是提升fuse用户态文件系统的可靠性和性能。
OpenCloudOS的子项目lkp-extent的目标是构建基于容器的自动部署和测试框架,其会作为云原生OS的一部分。

项目导师
彭浩,OpenCloudOS社区子项目负责人

导师寄语
OpenCloudOS是一个中立开放的社区,其中基于Linux内核开源了多个独立项目。如nettrace,fuse-extent,lkp-extent,RustKvm等等,欢迎同学们积极加入开源项目的开发。

编程任务
1.高级任务: lkp-extent容器测试框架(https://github.com/OpenCloudOS/lkp-extent)
lkp-server/lkp-node 两个组件的框架开发。lkp-extent容器测试框架需要一个server node(lkp-server)和若干个client node(lkp-node)。server node会进入监听模式,client node会根据自身的服务器配置相继接入对应的server node。lkp-node上运行包含了lkp测试套件(https://github.com/OpenCloudOS/lkp-tests)的容器。

  1. 低级任务 lkp-extent实现一系列命令集合(https://github.com/OpenCloudOS/lkp-extent)在lkp-server中执行命令,从而对指定的lkp-node发起命令,使lkp-node对包含lkp测试套件的容器执行相应命令。这些命令包含:

查看有哪些待测服务器

$ lkp-ctl list # 返回client-node的nodeid,arch类型和内存等信息

更新测试组件

$ lkp-ctl update # 更新本机的测试组件,包括lkp-extent和lkp两个repo

$ lkp-ctl update all # 更新所有node的测试组件

$ lkp-ctl update -n nodeid #更新id号是nodeid的node的测试组件

下发测试指令

$ lkp-ctl run testcase # 所有node都执行testcase

$ lkp-ctl -n nodeid run testcase # id是nodeid的服务器执行testcase

$ lkp-ctl -n nodeid -c containerCount run testcase # id是nodeid的服务器开containerCount个容器,并在容器里面执行testcase

下发测试集

$ lkp-ctl run testcluster # testcluster是一堆testcase的组合,用于进行多组合测试

$ lkp-ctl -n nodeid run testcluster # 对指定测试机进行组合测试

$ lkp-ctl -n nodeid -c contaierCount run testcluster # 对指定测试机进行容器内的组合测试

推送自定义测试case

$ lkp-ctl push testscript # 向所有测试机推送名字为testscript的脚本

$ lkp-ctl -n nodeid push testscript # 向指定测试机推送名字为testscript的脚本

收集测试结果

$ lkp-ctl result # 收集所有测试机的测试结果

$ lkp-ctl -n nodeid result # 收集指定的测试机的测试结果

3.中级任务 fuse-extent (https://github.com/OpenCloudOS/fuse-extent)
基于fuse-extent的fuse-crash-recovery的当前基于libfuse的实现,实现一个不依赖libfuse的实现。

联系导师
彭浩:[email protected]

2022腾讯犀牛鸟开源人才培养计划-TDesign

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
TDesign 是腾讯第一个对外开源的企业级设计体系,基于腾讯海量业务沉淀,为 PC、Mobile、小程序等平台提供丰富组件库,通过统一组件 API 接口为上层业务开发提供跨平台和跨端的同构方案,内部已服务 300+业务。在设计侧TDesign提供涵盖中后台、移动端的组件资源包,汇集200+的业务操作的图标、特殊的数字字体、由浅入深的设计指南、工具等满足不同角色、不同阶段的设计师需求。

项目导师
孙哲,TDesign PMC 成员

导师寄语
TDesign 刚刚对外发布半年,各技术栈实现还没有发布正式版本,处于快速迭代的过程中,如果你想从零开始参与一个大型开源项目,TDesign 可能正适合你。在这里你可以学习到如何设计和封装前端 UI 组件库,如何在不同技术栈下保证同个组件实现一致。

编程任务
题目:Vue/React 组件共用逻辑改造
内容:
TDesign 官方支持了相当多的技术栈实现,桌面端有 Vue2/Vue Next/React/Angular,移动端有 Vue Next/React/微信小程序等,目前 Vue2 与 Vue Next 实现已经通过 Composition-api 的方式实现了大部分逻辑复用,但 React 及 Angular 还是独立开发维护,请探索提出一种方案,兼顾参与者门槛低与代码跨技术栈复用率高的优点,帮助 TDesign 各组件低成本适配业界各主流技术栈。

预备知识: Vue/React/Angular 技术栈

预期结果:
1.初级:兼容 Vue/React 的跨技术栈复用方案
2.中级:兼容 Vue/React/Angular 的跨技术栈复用方案
3.高级:落地方案,主导某个技术栈仓库改造

收获:
1.了解 TDesign 如何统一管理/设计跨技术栈组件产品
2.设计师与开发角色如何协作

联系导师
孙哲:[email protected]

2023腾讯犀牛鸟开源人才培养计划—OMI

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
OMI 是前端 Web Components 框架,使用 OMI 可以编写标准化、可重用和组合的跨框架的 W3C 标准组件,也可以使用 OMI 编写整个 Web 页面。

项目导师
张磊, OMI、Westore、Cax等框架作者,Kbone框架贡献者,HTM小程序SVG渲染器作者

导师寄语
OMI + TDesign 能碰撞出什么火花?希望优秀的你参与进来,一起实现,一定会收获满满,让我们一起来见证。

编程任务
题目:基于 OMI + TDesign 的组件库实现

基于 OMI 和 TDesign Common模块,实现相关核心组件。

预备知识: 前端技术栈

任务分解:
1.开发脚手架搭建
2.组件开发
3.组件设计器开发

收获:
1.前端全栈开发流程
2.全流程的代码生成器的实现和细节

联系导师
张磊:[email protected]

2022腾讯犀牛鸟开源人才培养计划-Firestorm

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介

Firestorm是腾讯研发并开源的面向分布式计算框架的Remote Shuffle Service。作为云原生的分布式计算框架重要的组成部分,该服务也用来提升分布式计算的整体性能,已在生产系统中大规模部署使用。

项目导师
马骏杰,Firestorm开源项目负责人
齐赫,Firestorm开源项目架构师

导师寄语
Firestorm是腾讯自研的分布式Remote Shuffle Service,对于分布式计算框架上云有着极大的助推作用。
通过学习,你不仅能了解到如何设计高性能,可扩展的分布式服务,同时还能掌握分布式计算框架的实现原理,如,Apache Spark。欢迎同学们积极参与项目研发。

编程任务
初阶任务:开发Firestorm管理工具
基于Firestorm的架构,增加管理工具用来获取集群信息,更新集群状态,调整集群参数等。
在完成这个任务的过程中,同学们将会学到Firestorm的基本架构及功能,并通过RestApi等方式对集群进行管理。

中阶任务: 完善Firestorm测试流程
基于Spark引擎,在集成测试中增加TPC-DS测试,对Firestorm的正确进行验证
在这个任务中,同学们可以增加对Firestorm和Spark两个系统的了解,同时也会对业界比较流行的SQL测试集TPCDS有一定的了解

高阶任务:优化RPC通信机制
对Firestorm的RPC通信机制进行优化,提升RPC通信性能。
需要考虑:如何定义RPC通信协议,如何管理RPC的通信过程等。
在完成这个任务的过程中,同学们将会对netty项目有深刻的了解,并基于netty完成整体的优化工作。

联系导师
马骏杰:[email protected]
齐赫:[email protected]

2022腾讯犀牛鸟开源人才培养计划-Tencent konajdk

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
Java长期霸榜编程语言第一,OpenJDK也是开源阆苑中的一朵仙葩。腾讯KonaJDK青出于OpenJDK,针对大数据,机器学习和云计算场景进行了独特的优化,在高性能及安全性方面多有建树。腾讯KonaJDK团队拥有多位OpenJDK Reviewer,Committer和Author,在国内JDK团队中首屈一指。而OpenJDK开源社区活跃且成熟,它的协作模式也是开源项目中的典范,无论对于初识的爱好者,还是长期的贡献者都十分友好。参与OpenJDK的开发,不仅可以领略世界级基础软件的设计理念与实现细节,还可以积累开源项目的贡献经验。

项目导师
XueleiFan,OpenJDK Reviewer & OpenJDK安全组成员
江莎,OpenJDK Reviewer

导师寄语
Java以及JDK像是一台复杂的精密仪器,支持着数十亿记的生产设备,吸引了数百万的开发者。通过Tencent KonaJDK,你有机会掀开这台仪器的一个小角,深入理解现代语言以及标准类库的工业设计和实现细节。这将有助于你拓展视野,提高复杂系统的阅读能力、设计能力,以及实现能力。我们在这里为你提供帮助。
经过27年的发展,JDK积累的特性已经很多了,甚至可以说是繁杂。有些特性也因为不合时宜,不得不抛弃它们了。深入OpenJDK,了解其特性的演进过程,让我们认知新特性带来的危与机。

编程任务
初阶任务:OpenJDK缺陷修复
发现OpenJDK sun.security.util.math或sun.security.ec代码中的缺陷,修复它,并将补丁合入OpenJDK中。
所谓缺陷,可以是任何问题,哪怕是文字表述方面的。
在完成这个任务的过程中,同学们将会学到如何构建OpenJDK,并了解OpenJDK的贡献流程,以及熟悉特定领域的代码。

中阶任务:ECDSA性能测试
为OpenJDK中的ECDSA算法实现编写JMH性能测试。
具体使用SHA256withECDSA,并使用两条不同的曲线,即secp256k1和secp256r1。前者利用系统本地实现,后者为纯Java实现。
测试中使用不同的数据量,如128B,256B,1024B,1024K。
在完成这个任务的过程中,同学们将会学到JCA/Signature API和JMH的使用。

高阶任务:SM2密钥对生成
将OpenJDK sun.security.util.math和sun.security.ec中的工具应用到国密SM2算法,以生成SM2的密钥对。
需要考虑:如何检验生成的密钥对符合SM2曲线的要求?密钥对的安全强度是否达标?
在完成这个任务的过程中,同学们将会对椭圆曲线密码学的原理有更为深刻地理解。

联系导师
范学雷:[email protected]
江莎:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—TencentKonaJDK#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

作为Java 生态的基础引擎,JDK包括了Java运行环境、工具,以及核心类库。Kona JDK基于OpenJDK 开源项目(Java SE 最主流的参考实现)定制、开发,在腾讯的云、广告、大数据等场景上进行了针对性行的加强、优化。Kona JDK团队拥有多名OpenJDK社区reviewer、commiter,持续贡献OpenJDK社区,在Java15、16两个版本中团队在**企业中贡献度都排名第一,并为全球Notable贡献者被Oracle点名致谢。

项目导师

施慧,OpenJDK Author、KonaJDK架构师
傅杰,OpenJDK Reviewer

导师寄语

Java和JDK都在不停的演化、进步;KonaJDK可以让你有机会走进全世界最主流的语言运行时系统之一,深入理解现代语言的实现细节——施慧
加入我们,一起打造大数据和机器学习领域的精品JDK,让世界看到你的影响力!——傅杰

编程任务

项目:Java Vector API性能、功能优化
内容:
Vector API是Java16 incubator特性,Java通过Vector API可以充分发挥SIMD指令的能力;

  1. 根据Vector API描述,在导师的指导下,编写测试用例(性能、功能);熟悉OpenJDK社区测试框架Jtreg、JMH等
  2. 在导师带领下分析、修复发现的功能、性能问题;提交修复到社区;

目标:

  1. 输出Vector API:性能、功能评估报告;
  2. 完成部分Vector API接口的功能、性能优化,并贡献社区

收获:

  1. 参与Java前沿特性开发,熟悉开源社区流程
  2. 工程化的性能优化实践经验;熟悉性能优化的相关工具

联系导师

施慧,OpenJDK Author、KonaJDK架构师:[email protected]
傅杰,OpenJDK Reviewer:[email protected]

Student Guide

一、目标人群

“腾讯犀牛鸟开源人才培养计划”面向在校高校学生

二、学生如何报名

关注活动官网了解具体信息,本次计划分为3个培养模式:

开源基础培训:面向高校所有热爱开源的同学开放,无需报名,成功注册开源人才社区后即可开始学习(零基础也可参与);
开源进阶研学:面向高校所有热爱开源&报名成功的同学,6月21日前完成报名即可参与进阶学习;
开源项目实战:面向6月21日前完成报名且提交项目proposal&通过筛选的同学,1个学生最多提交3份项目proposal。

三、开源项目实战Q&A

选择学生的标准

项目会根据学生提交的项目proposal(包括项目计划、技术方案、项目经历等),综合考虑入选学生。

建议学生在申请之前要积极主动学习项目相关资料以及代码托管工具使用,无论你是什么学历来自哪个学校哪个专业,项目申请书和实践能力是选择的重点。

从哪里获得参与本次开源项目实战的项目列表

关注活动官网(https://opensource.tencent.com/summer-of-code )-项目列表页面

开源项目实战中,一个学生可以申请几个项目

一个学生最多可以同时申请三个项目,如果入选后最终只能选择一个项目和导师一起启动编码之旅。如果有任何问题,组委会会与项目以及您一起协调。

学生是否可以申请不在本次活动项目列表的项目

本次活动不可以,感谢您的关注!

学生如何与导师沟通

每个项目描述中都会有指定的导师名称和联系方式,建议学生习惯用社区的方式(如电子邮件)与导师沟通。

请学生注意与导师沟通的基本礼仪,导师提供本次项目任务的指导和建议,项目本身的申请、设计和开发需要您独立完成。

学生什么时候开始启动开源项目实战研发

组委会正式公布开源项目实战的初选学生后。

学生是否可提前研发

在组委会公布中选学生名单之前,该项目的学生人选都处于未确定的状态,任何一个学生的申请都可能因为有其他学生提出更好的项目方案或其他原因而落选。组委会不建议学生提前开始研发工作,应该将精力放在提交项目proposal、完善项目方案上。无论是本次活动的项目,还是未来学生在工作中参与的项目,前期的项目规划和方案设计都是非常重要的。

四、对参加“腾讯犀牛鸟开源人才培养计划”学生的建议

1、计划中三个培养环节及重要学习资源,将在乐享犀牛鸟校园“腾讯犀牛鸟开源人才社区”承载,包括各开源项目精选学习资源、github使用培训、学界及业界大咖分享、项目指南手册、开源福利活动等内容,请注册登录社区后获得更多资讯。
2、参与活动前,请详细阅读活动官网、学生指南等相关信息,组委会尽可能把考虑到的内容写到此帮助文档中。如有未尽事宜,请Email: [email protected]
3、注册登录“腾讯犀牛鸟开源人才社区”后,请仔细查看和学习项目文档,提前熟悉开源社区的参与方式、沟通渠道、设计文档、社区开源仓库代码等内容。
4、如果您希望参与开源进阶研学和开源项目实战的培养环节,请认真正确填写报名信息,包括基本信息、项目proposal等内容,确保我们一定能联系到您。
5、每个参与培养计划的学生,请根据不同培养环节的要求进行学习;报名参加开源项目实战环节的学生确认每周至少30+小时能够投入在项目中,有付出才有更多的收获。
6、希望报名参与开源项目实战培养环节的学生,请梳理自己擅长领域和技术栈等,这些都有利于选择合适的项目,提高选中概率。
7、组委会会严格按照截止时间来收集报名申请,仅限活动官网接受报名,延期提交的申请不会被接受。报名参与开源项目实战环节,报名时间顺序不会影响是否中选,组委会会在截止日期后统一将申请材料转交项目导师进行评审。

五、学生在活动中可以得到哪些支持

1、“腾讯犀牛鸟开源人才社区”提供丰富多元的学习内容,学生可线上了解腾讯前沿技术、拓展科研视野、修炼职场智慧、对话技术、专家目导师专业指导。
2、我们将组建QQ群(群号:859260607,加群请备注学校+专业),及时处理学生反馈的问题,发布活动相关资讯。
3、进入开源项目实战培养环节的学生将得到开源导师1V1指导。

六、学生在活动中可以得到哪些激励

1、开源基础培训环节:

  • 加入“腾讯犀牛鸟开源人才社区K吧”即可免费观看开源基础培训课程(由一线大咖导师录制,干货满满)。还可参与K吧成员专属抽奖,有机会获得腾讯周边潮玩、京东卡、Q币、电子产品等神秘礼品(具体活动介绍详见腾讯犀牛鸟开源人才社区K吧公告)。

  • 参与社区学习打卡活动,分享学习心得/学习笔记,均可参与抽奖,有机会获得腾讯周边潮玩、京东卡、Q币、电子产品等神秘礼品(具体活动介绍详见腾讯犀牛鸟开源人才社区K吧公告)。

2、开源进阶研学环节:

参与研学营课后学习笔记打卡、有奖征文、投票等活动,和同学导师交流学习心得,提升技术实力,还有机会获得腾讯周边潮玩、京东卡、Q币、礼盒、优秀创作者证书等(具体活动介绍详见腾讯犀牛鸟开源人才社区K吧公告)。

3、开源项目实战环节

组委会会分三次给入选学生发放奖励,其中:

  • 通过初选学生都会收到组委会寄出的一份腾讯开源纪念周边和开源项目实战环节的活动参与证书

  • 通过复选学生都会收到组委会寄出的一份腾讯开源大礼包,同时优秀学生有机会获得线下近距离感受腾讯技术氛围的暑期研学机会

  • 通过结业学生都会收到2万丰厚奖学金礼包以及含金量极高的腾讯开源贡献者证书(截止目前全球发放不到10张+)

七、开源项目实战考核流程

上半程考核流程

学生在“腾讯犀牛鸟开源人才社区”及时提交每周结果输出
导师从以下几个方面给出评审意见,并将评审意见反馈到组委会。

  • 项目是否按计划进行

  • 项目代码和产出是否按计划提交和输出

组委会根据导师评审意见和导师确认是否通过,通过复选学生有机会获得亲临腾讯暑期研学机会
考核通过的学生将收到 腾讯开源大礼包,继续跟随导师开启开源项目实战下半程。
考核未通过的学生将停止继续参与项目。

下半程考核流程

学生在“腾讯犀牛鸟开源人才社区” 及时提交每周结果输出
导师从以下几个方面给出评审意见,并将评审意见反馈到组委会:

  • 评估项目计划是否符合项目最初设立的目标和要求。

  • 评估项目输出完成度和输出质量。

  • 评估项目相关文档的完善程度。

  • 导师认为需要评估的其他方面。

组委会组织专家评审团,针对项目产出和导师评审意见进行综合评估,给出最终结业学生名单。
组委会给结业学生发放丰厚奖学金以及开源贡献者证书(全球已发不到10张+)。

八、其他Q&A

在暑期即将毕业的学生是否可以参与

只要在报名时学生证处在有效期内,就可以报名参加。

学生应该使用什么编程语言来进行开源项目实战编码

学生可根据项目的需求来选择编程语言。应该与项目使用的编程语言保持一致。

学生应该使用什么语言与导师沟通

组委会官方提供的信息以及社区提供的项目列表都采用中文

学生已经是社区的一员,可以申请社区的项目吗

可以申请

#2021Tencent Rhino-bird Open-source Training Program—Apache InLong(原Apache TubeMQ)#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

Apache InLong(原Apache TubeMQ):是腾讯自研分布式消息中间件系统(MQ),专注服务大数据场景下海量数据的高性能存储和传输,在稳定性、性能以及成本方面有独特的优势。不仅在腾讯内部多个重要业务部门落地多年,同时通过在Apache社区的开源,已在多个外部公司内进行了线上业务应用,目前TubeMQ正依托社区进行项目孵化和改进,走上了社区开放治理之路。

Apache InLong(原Apache TubeMQ)项目主页:http://inlong.apache.org/en-us/

项目导师

张国成,Apache TubeMQ社区PPMC

导师寄语

Apache TubeMQ是专注服务大数据场景的分布式万亿级的消息中间件,并且同一套版本在腾讯内部环境上使用。通过这个项目你既可以了解开源社区的玩法,同时还可以了解到真实的线上项目该如何开发和改进。

编程任务

  1. 完善特性:包括新特性开发,单元测试,文档撰写;
  2. 代码优化:对已有代码进行代码检视,以模块化方式优化已有的代码实现
  3. 认领项目issue,进行代码优化及改进。

联系导师
张国成,Apache TubeMQ社区PPMC:[email protected]

前方高能!“腾讯犀牛鸟开源人才培养计划”星探奖来啦!

腾讯犀牛鸟开源人才培养计划,

终于在2021年的夏天和大家首次见面啦!

你是否对开源有着浓厚的兴趣?

身边也有很多热爱开源、志同道合的小伙伴?

别看了,你就是我们要找的那个人!

快来加入“星探计划”,

用慧眼发掘身边的“开源达人”,

让更多人了解开源的魅力,一起学习成长这一夏!
image

(点击可查看&保存大图,分享给身边的人)

2022腾讯犀牛鸟开源人才培养计划-OMI

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
OMI是前端跨框架框架,既能以 Web Components 自定义标签形式赋能前端生态,如(react、vue、preact),也可自成一套体系加速 Web 和 小程序前端开发。

项目导师
张磊,OMI、Westore、Cax等框架作者,Kbone框架贡献者

导师寄语
OMI是前端跨框架框架,2022年有一些有趣且实用的想法,主要方向依然是视觉交互、低代码、可视化方向,需要优秀的你参与进来,一起实现他,一定会收获满满。

编程任务
题目:基于数据模型驱动的 OMI + Nodejs + Sequelize(MySQL)的管理系统生成器

内容:
去年我们探索了基于 OMI Webcomponents 的自研组件体系的 admin 的实现,今年我们拓展边界到后端,基于用户的数据模型直接生成 OMI + Nodejs + Sequelize(MySQL)的管理系统。

预备知识: 前端技术栈,Nodejs技术栈

任务分解:
1.管理系统相关的 OMI 组件开发和优化
2.实现基于 OMI 的表格和表单设计器
3.实现基于 OMI 在线实体关系图设计器
4.实现基于实体关系图设计器和表格表单设计器的输出产物生成管理系统的生成器

收获:
1.前端全栈开发流程
2.全流程的代码生成器的实现和细节

联系导师
张磊:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—Hippy#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。
首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。
更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介

腾讯自研动态化框架,基于V8与JSC引擎能力搭建了一套完善的前端到终端的通信机制以及组件映射机制,抹平了 iOS 和 Android 双端差异,提供了接近Web的开发体验。上层通过对React 和Vue两套界面框架的支持,前端开发人员可以将前端代码转换为终端的原生指令,进行原生终端 App 的开发。同时提供优秀的性能与开发效率,提升产品发版节奏。框架在腾讯内各大产品中广泛运用,并期待开源社区力量协同共建。

Hippy官网:https://cn.hippyjs.org/#/
Hippy项目主页:https://github.com/Tencent/Hippy
Hippy介绍视频:https://v.qq.com/x/page/i3038urj2mt.html

项目导师

郑苏波,Node.js Contributor,GMTC出品人,Hippy总负责人
李思广, HIPPY终端负责人
张龙, HIPPY C++层架构师

导师寄语

Hippy作为完全自研的动态化框架,为社区和公司提供了优秀的跨端技术解决方案,目前3.0版本的类flutter自绘能力即将上线;
希望学员们通过参与其中,深入了解业界最新最前沿的跨端技术发展,不断提升自身能力!

编程任务

方向:

  1. 完善特性:包括新特性开发,单元测试,工具链建设,文档撰写;

  2. 代码优化:优化现有代码的性能与 Code Style;

任务可参考但不限于:
a. 增强 hippy-vue-css-loader 对 CSS 标准的解析能力,如选择器、scope style等

b. 编写 Hippy-React、Android、iOS、C++ (可任选)代码的单元测试

c. 发现目前 Hippy 框架的性能问题,并提出优化方案,如跨层数据传输、长列表滚动等性能问题

d. 对目前开发调试工具进行优化,如增加 inspector 的 Element、Performance 等能力,开发类似 weex studio 的 IDE 工具

联系导师

郑苏波,Node.js Contributor,GMTC出品人,Hippy总负责人:[email protected]
李思广, HIPPY终端负责人:[email protected]
张龙, HIPPY C++层架构师:[email protected]

2023腾讯犀牛鸟开源人才培养计划—TencentOS Tiny

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,安全可靠等特点,可有效提升物联网终端产品开发效率; 提供精简的 RTOS 内核,内核组件可裁剪可配置,可快速移植到多种主流 MCU (如 STM32 全系列)及模组芯片上。覆盖IoT主流应用场景,支持硬件平台数量超60+,包括STM32、NXP、华大半导体等多家MCU和模组厂家。

项目导师
汪礼超,TencentOS tiny项目负责人
赵健,TencentOS tiny架构师

导师寄语
近年来,随着5G、NB-IoT、4G cat1等广域物联网技术的日渐成熟,物联网市场呈井喷式发展。目前TencentOS Tiny项目已经捐赠给**开放原子开源基金会,将持续配合广大开发者、合作伙伴,进一步扩展开发者和应用生态。欢迎同学们积极参与!

编程任务
编程任务1——TencentOS-Tiny构建系统开发

  1. 赛题要求
    开发完成基于TencentOS-Tiny master分支源码的构建系统,构建系统可自由选择。要求支持生成Keil-MDK工程、支持生成IAR工程,支持生成使用arm-none-eabi-gcc工具链编译的工程。
  2. 提交要求
    完成基础测试、编写技术指导文档、提交实现代码到master分支
  3. 评分规则
    1) 构建系统支持生成MDK工程占30分
    2) 构建系统支持生成IAR工程占20分
    3) 构建系统支持生成Gcc工程占10分
    4) 构建系统支持配置AT框架和模组驱动占30分
    5) 技术指导文档占10分

编程任务2——TencentOS-Tiny内核态和用户态实现

  1. 赛题要求
    开发完成基于TencentOS-Tiny的内核系统态和用户态,基于内核编译出tlib静态库,应用程序只能通过tlib库调用内核API,调用内核api时应陷入到内核态发起调用,调用完成后返回到用户态,tlib库提供的内核API,名称和参数应该与内核原有的API保持一致。
    在tlib库的基础上,基于MPU硬件单元对内核地址空间进行保护,禁止用户态直接访问内核空间。
  2. 提交要求
    完成基础测试、编写技术指导文档、提交实现代码到master分支
  3. 评分规则
    1) 基于内核编译出tlib静态库占60分
    2) 使用MPU保护内核空间占30分
    3) 技术指导文档占10分

编程任务3——TencentOS Tiny 内核SMP特性开发

  1. 赛题要求
    开发完成TencentOS-Tiny内核对于多核MCU的支持,SMP架构(推荐平台:树莓派Pico)或AMP架构(推荐平台:STM32H7x5)二选一即可
  2. 提交要求
    完成基础测试、编写技术指导文档、提交实现代码到master分支
  3. 评分规则
    1) 多个任务在处理器上可以运行,占60分
    2) AT框架可以正常与模组通信,提供网络环境,占30分
    3) 技术指导文档,占10分

联系导师
汪礼超:[email protected]
赵健:[email protected]

2023腾讯犀牛鸟开源人才培养计划-Apache InLong

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
Apache InLong(应龙)是一个一站式海量数据集成框架,提供自动、安全、可靠和高性能的数据传输能力,同时支持批和流,方便业务构建基于流式的数据分析、建模和应用。详细项目情况参考:https://inlong.apache.org/zh-CN/

项目导师
张超,Apache InLong PMC Chair
张国成,Apache InLong PMC Member
彭梓瑞,Apache InLong PMC Member
邓钒,Apache InLong PMC Committer
资道利,Apache InLong PMC Contributor

导师寄语
Apache InLong 是腾讯捐献 Apache 基金会的一站式海量数据集成框架,提供自动、安全、可靠和高性能的数据传输能力。数据集成通过将不同来源的数据整合在一起,为商业和决策提供统一的有价值的数据,参与 InLong 有助于你掌握数据集成全链路技术细节,同时进入 Apache 开源的世界。

编程任务
收获:
(1)了解 Apache 开源项目如何运作
(2)了解海量数据集成框实现原理

项目1: 支持 TubeMQ 命令行工具设计和开发(初级)
(1)模块:TubeMQ
(2)说明:聚合到一个命令,进行Topic 的使用,降低使用门槛;比如tubectl topic list
(3)标准:功能需要包括:a,Topic 增删改查;b,发送和消费消息

项目2: SDK 负载优化(中级)
(1)模块:DataProxy
(2)说明:SDK 在生产数据的时候,会选出一组节点发送数据,当其中部分出现问题时,剔除,选用新的候选节点
(3)标准:a,减少对生产的影响,做到客户端无感知;b,在服务器节点恢复后,能再次被选用;c,保证选用节点负载均衡

项目3: 全链路集成测试框架设计和实现(高级)
(1)模块:平台能力
(2)说明:由于InLong 数据链路涉及多个环节和组件,单个组件的修改都可能造成数据流异常。该题目需要给出通用的全链路测试框架,以及一条数据流验证准确性
(3)标准:a,具备良好的扩展性,可以快速支持新的数据节点;b,至少覆盖一条数据链路用于验证框架,比如 MySQL->Hive;c,能够跟GitHub Actions打通,创建对应流水线

联系导师:
张超:[email protected]
张国成:[email protected]
彭梓瑞:[email protected]
邓钒:[email protected]
资道利:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—Angel#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介

Angel是腾讯研发并开源的面向企业级应用的高性能分布式机器学习平台,支持特征工程、模型构建、参数训练、AutoML、模型服务Serving等全栈机器学习服务,提供机器学习、深度学习、图神经网络等多种算法,支持级万亿级超大规模参数模型的训练,已在生产业务系统中大规模部署。

Angel:https://github.com/Angel-ML/angel
PyTorch on Angel:https://github.com/Angel-ML/PyTorch-On-Angel
Angel简介、设计、算法文档:https://github.com/Angel-ML/angel/blob/master/README.md

项目导师

欧阳文、李晓森,Angel开源项目技术负责人

导师寄语

Angel是腾讯自研的高性能分布式机器学习和图计算平台。通过学习这个项目,你将了解顶级分布式机器学习平台架构设计原理以及AI算法落地细节,轻松玩转机器学习和图计算,对之后的学习和工作都大有益处。

编程任务

(题目一)基于PyTorch On Angel实现S-GCN图神经网络算法;
参考论文 https://arxiv.org/pdf/1902.07153.pdf
内容:
S-GCN通过简化GCN非线性计算从而提高训练速度,在许多超大规模图场景中得到了广泛应用。

预备知识:
1.S-GCN论文 https://arxiv.org/pdf/1902.07153.pdf
2.Java , Python, Scala
3.PyTorch /Spark / Angel

预期结果:
1.基于PyTorch On Angel实现S-GCN算法
2.在多种数据集如cora.cites上有高效的训练性能以及F1-Score等关键指标
3.文档和测试

收获:
1.理解图神经网络算法的实现逻辑,熟悉PyTorch、Angel、Spark等组件功能
2.分布式系统的性能优化实践经验

(题目二)基于PyTorch On Angel实现MMoE多任务学习算法模型
内容:
MMoE模型可以从数据中学习建模任务间的相关性,在许多真实场景中得到大规模的应用,如在电影推荐中不仅推荐用户可能观看的电影,还需要优化用户对电影的喜爱程度的预估;结合两个任务推荐的电影,最有可能满足用户需求和推荐目的。

预备知识:
1.MMoE论文 https://dl.acm.org/doi/pdf/10.1145/3219819.3220007
2.Java , Python, Scala
3.PyTorch /Spark / Angel

预期结果:
1.基于PyTorch On Angel实现MMoE算法
2.在多种数据集(例如MMoE论文中的数据集)上有高效的训练性能、正确的AUC等关键指标
3.文档和测试

收获:
1.理解图神经网络算法的实现逻辑,熟悉PyTorch、Angel、Spark等组件功能
2.分布式系统的性能优化实践经验

联系导师:
欧阳文:[email protected]
李晓森:[email protected]

2023腾讯犀牛鸟开源人才培养计划-NCNN

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
一个为手机端极致优化的高性能神经网络前向计算框架。基于 ncnn,开发者能够将深度学习算法轻松移植到手机端高效执行,开发出人工智能 APP,将 AI 带到你的指尖。

项目导师
倪辉,ncnn作者

导师寄语
ncnn是业界知名的AI推理框架,社区支持很好,参与研发是能学到知识和技术的,导师会很耐心帮助你的,对吧对吧!

编程任务

1(easy) rewrite logsoftmax and logsigmoid to ncnn ops in pnnx
在pnnx中将 logsoftmax和logsigmoid重写为ncnn的op
ncnn有log和softmax sigmoid算子实现,但没有 logsoftmax和logsigmoid
pnnx具备graph rewriter基础设施,可以实施M个op到N个op的改写
goals:
在pnnx中实现logsoftmax和logsigmoid的转换到ncnn
添加pnnx ncnn相关的单元测试
撰写有关pnnx graphrewriter技术文章

1(easy) infrastructure for NCNN_LOGE in vulkan glsl shader
vulkan glsl shader 支持 NCNN_LOGE 的基础设施
利用 GL_EXT_debug_printf 相关基础设施,实现在 ncnn shader 的调试打印功能
需要运行时相关vulkan扩展检查和启用
goals:
在需要时有 cmake 编译开关启用 NCNN_LOGE
保持兼容各种vulkan设备

1(easy) in-house math routines
无依赖的数学函数
Some embedded platforms may not provide math library by default.
For maximum portability, it is beneficial to add in-house math routines, like simpleomp simpleocv simplestl did the similar jobs
某些嵌入式默认不提供math库,添加无依赖的数学函数增加可移植性,就像simpleomp simpleocv simplestl那样
goals:
implement all math functions used in ncnn without math.h, eg exp log sin abs etc
add cmake option NCNN_SIMPLEM for enabling
add continuation integration

2(easy) pnnx python wrapper
pnnx python 封装
Though we have prebuild pnnx binary package, it is still not convenient enough to convert pytorch module into pnnx directly in python programming.
Passing input tensor shapes as command line arguments are error-prone.
虽然我们有预编译二进制包,但是在python编程中直接转换pytorch模块到pnnx依然不够方便
将输入tensor shape作为命令行参数也容易出错
goals:
create python wrapper for invoking command line pnnx executable with arguments
allow exporting torch module in python with pnnx(net, (a, b), "out.pnnx")
add continuation integration for releasing pypi package
pip install pnnx on windows/linux/macos

3(medium) optimize loongarch gemm
优化 loongarch gemm
write gemm_loongarch.cpp with lsx extension
test with qemu
利用lsx扩展优化实现gemm_loongarch.cpp,使用qemu测试
goals:
support any packed layout
good benchmark result

4(medium-hard) optimize risc-v gemm
优化 risc-v gemm
write gemm_riscv.cpp with risc-v vector extension and zfh(fp16)
test with qemu
利用risc-v vector和zfh(fp16)扩展优化实现gemm_riscv.cpp,使用qemu测试
goals:
support any packed layout and fp32/fp16
good benchmark result

5(medium-hard) optimize vulkan softmax with shared memory and subgroup operation
使用 shared memory 和 subgroup 操作优化 vulkan softmax
The reduction part in softmax vulkan implementation is quite naive, no use of any shared memory or subgroup operation.
A decent speedup could be expected if we apply these technologies.
As softmax is a major time consuming guy inside attention op, we could get much faster stable-diffusion vulkan.
softmax vulkan中的reduce部分实现相当简单,没有用到任何shared memory和subgroup操作
如果我们用上这两个技术,可以获得相当不错的加速
由于softmax是attention op中的耗时大户,这样也能加速stable-diffusion vulkan
goals:
implement reduction in softmax vulkan with shared memory and subgroup operation, for all axis and data types
test speed on desktop gpu and mobile phone gpu

6(insanely hard) large language model with ncnn
ncnn 部署大语言模型
It seems to be a paper task, but if you want to be the conqueror, we could help ;)
make LLM trace-able and export to torchscript, convert with pnnx, optimize attention fusing ....
experienced cpp programming skill is essential
一眼看是纸上谈兵,但如果你想,我们能帮 ;)
将LLM可trace,导出torchscript,用pnnx转换,优化attention合并....
需要经验丰富的cpp编程经验

联系导师
倪辉:[email protected]

联系导师
倪辉:[email protected]

2023腾讯犀牛鸟开源人才培养计划—Tencent KonaJDK

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
Java长期霸榜编程语言第一,腾讯KonaJDK青出于OpenJDK,针对大数据,机器学习和云计算场景进行了独特的优化,在高性能及安全性方面多有建树。腾讯KonaJDK团队拥有多位OpenJDK Reviewer,Committer和Author,在国内JDK团队中首屈一指。而OpenJDK开源社区活跃且成熟,它的协作模式也是开源项目中的典范,无论对于初识的爱好者,还是长期的贡献者都十分友好。参与OpenJDK的开发,不仅可以领略世界级基础软件的设计理念与实现细节,还可以积累开源项目的贡献经验。

项目导师
郑淼,OpenJDK Author
江莎,OpenJDK Reviewer

导师寄语
2022年5月7日,Loom经历4年多的研发终于合入OpenJDK,Java正式进行协程时代。深入腾讯自研协程Kona Fiber与Loom,了解协程核心的设计与实现思路,相信同学们一定会收获满满。
经过27年的发展,JDK积累的特性已经很多了,甚至可以说是繁杂。有些特性也因为不合时宜,不得不抛弃它们了。深入OpenJDK,了解其特性的演进过程,让我们认知新特性带来的危与机。

编程任务
初阶任务:移植Loom社区的benchmark到Kona Fiber 8
将Loom社区的benchmark:Oscillation.java移植到Kona Fiber。
在完成这个任务的过程中,同学们将会学到如何构建OpenJDK,如何使用JMH构建benchmark,以及熟悉协程相关的基本概念。

中阶任务:编写JMH测试用例,在常见应用场景下(将mysql的同步操作提交到独立线程池,让协程异步等待独立线程池执行完毕 ,可以利用CompletableFuture实现),对比不同调度器(FixedThreadPool,ForkJoinPool)的性能表现。
在完成这个任务的过程中,同学们可以掌握如何开发benchmark,掌握同步操作和异步操作的区别,理解协程和底层调度器的关系。

高阶任务:分析调度器的性能开销,对调度器进行优化。
在完成这个任务的过程中,同学们可以深入理解调度器的实现,可以对比不同调度器的性能优势产生的原因,以及尝试对现有调度器进行优化。
可以对比低版本、高版本JDK上同一调度器(以ForkJoinPool为例)的性能,分析高版本JDK上调度器的改进思路,并尝试将高版本JDK的改进合入低版本JDK。

联系导师
郑淼:[email protected]
江莎:[email protected]

2022腾讯犀牛鸟开源人才培养计划-jittor

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
一个完全基于动态编译(Just-in-time),内部使用创新的元算子和统一计算图的深度学习框架。元算子可以复合出神经网络计算所需算子,和Numpy一样易于使用,并且超越Numpy能够实现更复杂更高效的操作。统一计算图则是融合了静态计算图和动态计算图的诸多优点,在易于使用的同时,提供高性能的优化。基于元算子开发的深度学习模型,可以被计图实时自动优化并且运行在指定的硬件上,如CPU,GPU,NPU等。

项目导师
梁盾,计图核心开发者,清华大学助理研究员

导师寄语
计图是首个由国内高校牵头的具有自主知识产权的深度学习框架,相比于国外主流框架,在性能、多平台适配上有着诸多优势。本项目将带大家进入科研一线,深入浅出地了解最前沿的研究领域与框架开发知识,涵盖内容包括:可微渲染、目标检测与识别、图像分割、几何学习以及算子优化等内容

编程任务
【初级】任务一:基于计图框架 NeRF 模型复现和速度优化

背景:随着VR、AR的蓬勃发展,三维场景、物体的重建与生成越来越重要。在新视角生成及重建任务中,目的是给定若干不同视角的图像或视频,重建场景或获取新视角对应的图像。2020年Mildenhall等人提出的NeRF使用一组稀疏的输入视图来优化MLP网络,该网络输入查询点并输出颜色和密度,通过光线行进在空间中采样点来渲染场景,可以生成高质量的高分辨率图像。

参考论文:

  1. NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
    https://arxiv.org/abs/2003.08934
  2. Efficient Geometry-aware 3D Generative Adversarial Networks
    https://arxiv.org/abs/2112.07945
  3. pixelNeRF: Neural Radiance Fields from One or Few Images
    https://arxiv.org/pdf/2012.02190
  4. Neural Sparse Voxel Fields
    https://arxiv.org/abs/2007.11571

相关代码:

  1. https://github.com/Jittor/JNeRF

预备知识:

  1. 熟悉上述参考论文
  2. 熟悉 Jittor、PyTorch、Tensorflow 的学习和使用
  3. 熟悉训练神经网络,在测试数据集上测试模型

预期成果:在计图框架上复现 NeRF 模型,达到论文中的点数,做速度优化,性能超过 PyTorch、Tensorflow等平台。

收获:

  1. 掌握NeRF 领域的常用模型
  2. 掌握Jittor、PyTorch、Tensorflow 三种深度学习框架
  3. 掌握深度学习模型训练和测试

【中级】任务二:基于计图框架 GAN 模型复现和速度优化

背景:图像生成任务是计算机视觉领域非常重要和实用的一个方向。GAN 模型作为图像生成代表模型,自 2014 年被提出就受到广泛关注。2018 年,StyleGAN 模型被提出,图像生成进入高分辨率时代。本任务希望基于计图框架复现 GAN 的重要模型、复现论文中的点数以及训练、推理速度超过其他深度学习框架。

参考论文:

  1. Jittor-GAN: A fast-training generative adversarial network model zoo based on Jittor
    https://link.springer.com/content/pdf/10.1007/s41095-021-0203-2.pdf)
  2. A style-based generator architecture for generative adversarial networks(https://openaccess.thecvf.com/content_CVPR_2019/papers/Karras_A_Style-Based_Generator_Architecture_for_Generative_Adversarial_Networks_CVPR_2019_paper.pdf)
  3. Analyzing and improving the image quality of stylegan
    https://openaccess.thecvf.com/content_CVPR_2020/papers/Karras_Analyzing_and_Improving_the_Image_Quality_of_StyleGAN_CVPR_2020_paper.pdf)
  4. Alias-free generative adversarial networks
    https://proceedings.neurips.cc/paper/2021/file/076ccd93ad68be51f23707988e934906-Paper.pdf)

相关代码:

  1. https://github.com/Jittor/gan-jittor
  2. https://github.com/NVlabs/stylegan
  3. https://github.com/NVlabs/stylegan2
  4. https://github.com/NVlabs/stylegan3

预备知识:

  1. 熟悉上述参考论文
  2. 熟悉 Jittor、PyTorch、tensorflow 的学习和使用
  3. 熟悉训练神经网络,在测试数据集上测试点数

预期成果:在计图框架上复现 GAN 模型,达到论文中的点数,做速度优化,性能超过 PyTorch、Tensorflow等

收获:

  1. 掌握 GAN 领域常用模型
  2. 掌握 Jittor、PyTorch、Tensorflow 三种深度学习框架
  3. 掌握深度学习模型的训练和测试

【高级】任务三:基于计图框架实现稀疏卷积库

背景:
稀疏卷积是支撑3D视觉非常重要的一部分,因此如何实现快速的稀疏卷积已经成为3D视觉领域不可或缺的一部分。本任务希望基于计图框架实现稀疏库,能够实现目前的大多数稀疏算法,能够在保证精度的前提下,实现较快的速度,并且基于这个库,复现一篇体素分割的论文。

参考论文:

  1. Vmnet: Voxel-mesh network for geodesic-aware 3d semantic segmentation
    (https://openaccess.thecvf.com/content/ICCV2021/papers/Hu_VMNet_Voxel-Mesh_Network_for_Geodesic-Aware_3D_Semantic_Segmentation_ICCV_2021_paper.pdf)
  2. 4d spatio-temporal convnets: Minkowski convolutional neural networks
    (https://openaccess.thecvf.com/content_CVPR_2019/papers/Choy_4D_Spatio-Temporal_ConvNets_Minkowski_Convolutional_Neural_Networks_CVPR_2019_paper.pdf)
  3. TorchSparse: Efficient Point Cloud Inference Engine
  4. Searching Efficient 3D Architectures with Sparse Point-Voxel Convolution

相关代码:

  1. https://github.com/rusty1s/pytorch_sparse
  2. https://github.com/mit-han-lab/torchsparse
  3. https://github.com/NVIDIA/MinkowskiEngine
  4. https://github.com/facebookresearch/SparseConvNet
  5. https://github.com/rusty1s/pytorch_scatter
  6. https://github.com/rusty1s/pytorch_scatter
  7. https://github.com/pyg-team/pytorch_geometric

预备知识:

  1. 熟悉上述参考论文
  2. 熟悉 Jittor、PyTorch、Tensorflow 的学习和使用
  3. 熟悉CUDA编程
  4. 熟悉训练神经网络,在测试数据集上测试点数

预期成果:在计图框架上实现稀疏库,保证精度和正确性,完成1篇论文的复现。

收获:

  1. 掌握3D视觉常用模型
  2. 掌握深度学习框架底层算法
  3. 掌握Jittor、PyTorch、Tensorflow 三种深度学习框架
  4. 掌握深度学习模型的训练和测试

联系导师
梁盾,https://github.com/cjld

#2021Tencent Rhino-bird Open-source Training Program—ncnn#

腾讯犀牛鸟开源人才培养计划Tencent Rhino-bird Open-source Training Program为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介

一个为手机端极致优化的高性能神经网络前向计算框架。基于 ncnn,开发者能够将深度学习算法轻松移植到手机端高效执行,开发出人工智能 APP,将 AI 带到你的指尖。

项目GitHub地址:https://github.com/Tencent/ncnn

项目导师

倪辉,ncnn作者

导师寄语

ncnn是业界知名的AI推理框架,社区支持很好,参与研发是能学到知识和技术的,导师会很耐心帮助你的,对吧对吧!

Welcome to advocate your proposal !

欢迎发出您提案!


Project: ncnn Mat conversion for MacOS and iOS platforms

项目:ncnn MacOS 和 iOS 平台的 Mat 转换

Brief Explanation: There are conversion functions for android Bitmap object, but the corresponding MacOS and iOS ones are missing at the moment. We propose a project to add convenient functions between MacOS and iOS platform image object and ncnn::Mat. In addition, testing and documentation is a MUST to keep maintainability.

简要:android Bitmap 对象的转换函数已经有了,但对应的 MacOS 和 iOS 的转换函数还没有。我们提议本项目,为 MacOS 和 iOS 平台添加的图像对象与ncnn::Mat互转的方便函数。此外,必须有测试和文档确保可维护性。

Expected Results:

  • ncnn::from_apple_cgimage and ncnn::to_apple_cgimage
  • ncnn::from_macos_nsimage and ncnn::to_macos_nsimage
  • ncnn::from_ios_uiimage and ncnn::to_ios_uiimage
  • Testing and documentation.

期望结果:

  • ncnn::from_apple_cgimagencnn::to_apple_cgimage
  • ncnn::from_macos_nsimagencnn::to_macos_nsimage
  • ncnn::from_ios_uiimagencnn::to_ios_uiimage
  • 测试和文档

Knowledge Prerequisite:

  • C++ / Objective-C
  • Image Processing

预备知识:

  • C++ / Objective-C
  • 图像处理

Level: Easy/Medium

难度:简单/中等

Mentor: nihui

导师:nihui


Project: ncnn Mat pixel type RGB565 and convert_color family

项目:ncnn Mat pixel 类型 RGB565 和 convert_color 函数

Brief Explanation: It is quite common that RGB565 is used as the native window buffer format on mobile deivces. RGB565 saves memory usage compared to RGBA8888. We propose a project to support the RGB565 pixel format conversion and expose more accelerated pixel manipulation functions. In addition, testing and documentation is a MUST to keep maintainability.

简要:在移动设备上,RGB565 是很常见用于原生窗口缓冲区的格式。RGB565 相较于 RGBA8888 节省了内存使用。我们提议本项目,增加 RGB565 pixel 格式的转换,并提供加速的 pixel 处理函数。此外,必须有测试和文档确保可维护性。

Expected Results:

  • ncnn::from_pixels and ncnn::to_pixels family gain RGB565 support.
  • ncnn::convert_color for most pixel format conversion.
  • Testing and documentation.

期望结果:

  • ncnn::from_pixelsncnn::to_pixels 获得 RGB565 支持
  • ncnn::convert_color 支持各种 pixel 格式转换
  • 测试和文档

Knowledge Prerequisite:

  • C++
  • Image Processing

预备知识:

  • C++
  • 图像处理

Level: Easy/Medium

难度:简单/中等

Mentor: nihui

导师:nihui


Project: ncnn support AVX only CPU

项目:ncnn 支持 AVX only CPU

Brief Explanation: There are some processors without AVX2 and FMA capability. In such circumstance, ncnn fallbacks to SSE2 optimized path now. We propose a project to add AVX-only kernel implementation to ncnn so that these chips could benefit floating point arithmetic speedup from AVX. In addition, testing and documentation is a MUST to keep maintainability.

简要:有些 CPU 不具备 AVX2 和 FMA 指令集。这种情况下,ncnn 会回退到 SSE2 的优化代码。我们提议本项目,ncnn 添加 AVX-only 的 kernel 实现,以便在这些芯片上享受到 AVX 的加速效果。此外,必须有测试和文档确保可维护性。

Expected Results:

  • Automatic dispatch AVX-only layer class on AVX-only CPU.
  • Feasible speedup.
  • Testing and documentation.

期望结果:

  • 在 AVX-only CPU 上自动使用 AVX-only 优化的层
  • 可观的速度提升
  • 测试和文档

Knowledge Prerequisite:

  • C++

预备知识:

  • C++

Level: Medium

难度:中等

Mentor: nihui

导师:nihui


Project: ncnn improve simpleomp (openmp runtime)

项目:ncnn 改善 simpleomp (openmp 运行时)

Brief Explanation: simpleomp is the minimal openmp runtime implementation mainly used in WebAssembly. It brings multithreading support on platforms without any openmp runtime library. We propose a project to improve the threading pool implementation inside simpleomp via spinlock and futex extension. We expect to see speed improvements on small model inference. In addition, testing and documentation is a MUST to keep maintainability.

简要:simpleomp 是最小化的 openmp 运行时实现,主要用于 WebAssembly。它可以在没有 openmp 运行时库的平台中带来多线程加速。我们提议本项目,改善 simpleomp 线程池实现,如利用 spinlock 和 futex 扩展。此外,必须有测试和文档确保可维护性。

Expected Results:

  • set_kmp_blocktime interface.
  • Feasible multithreading speedup on small models.
  • Testing and documentation.

期望结果:

  • set_kmp_blocktime 接口
  • 在小型模型上有可观的速度提升
  • 测试和文档

Knowledge Prerequisite:

  • C++
  • Linux

预备知识:

  • C++
  • Linux

Level: Medium

难度:中等

Mentor: nihui

导师:nihui


Project: ncnn better android vulkan camera frame importing and rendering

项目:ncnn 更好的 android vulkan 相机帧导入和渲染

Brief Explanation: GPU is a suitable device for image processing and machine learning workflow. For realtime processing, we shall try best to eliminate all possible overheads involing the inefficient CPU-GPU data copy. VK_ANDROID_external_memory_android_hardware_buffer is a new vulkan extension that allows us to access the on-device camera captured frame pixels on Android platform. However, it is quite hard to write raw vulkan code directly for utilizing it. We propose a project to emerge an easy to use high-level api for Android vulkan and ncnn interop. In addition, testing and documentation is a MUST to keep maintainability.

简要:GPU 是个适合用作图像处理和机器学习的运算设备。对于实时处理,我们应当尽可能减少影响效率的 CPU-GPU 数据拷贝。VK_ANDROID_external_memory_android_hardware_buffer是新的 vulkan 扩展,在 android 平台上可以用该扩展访问相机捕获到的帧像素。然而,编写原生的 vulkan 代码相当困难。我们提议本项目,实现一套简单易用的高层 API 用作 Android vulkan 与 ncnn 交互。此外,必须有测试和文档确保可维护性。

Expected Results:

  • Easy to use high-level api for importing AHardwareBuffer to VkMat or VkImageMat.
  • Easy to use high-level api for rendering VkMat or VkImageMat to ANativeWindow.
  • An end-to-end vulkan GPU processing android sample application.
  • Testing and documentation.

期望结果:

  • 好用的高层 API,用于导入 AHardwareBufferVkMatVkImageMat
  • 好用的高层 API,用于渲染 VkMatVkImageMatANativeWindow
  • 端到端 vulkan GPU 处理的 android 示例应用程序
  • 测试和文档

Knowledge Prerequisite:

  • C++
  • Android
  • Vulkan

预备知识:

  • C++
  • Android
  • Vulkan

Level: Medium/Advanced

难度:中等/高级

Mentor: nihui

导师:nihui


Project: ncnn RISC-V V-extension optimization

项目:ncnn RISC-V V-extension 优化

Brief Explanation: RISC-V Vector Extension is the RISC-V SIMD instruction set. ncnn has established an infrastructure for RISC-V code optimization, but the optimization related to RISC-V is lacking. We propose a project to add RISC-V kernel implementation to ncnn so that these chips could benefit floating point arithmetic speedup from RISC-V Vector Extension. In addition, testing and documentation is a MUST to keep maintainability.

简要:RISC-V Vector 扩展是 RISC-V SIMD 指令集。ncnn 已经实现了 RISC-V 代码优化的基础架构,但缺少 RISC-V 相关优化。我们提议本项目,为 ncnn 添加 RISC-V kernel 实现,让这些芯片可以享受到 RISC-V Vector 扩展带来的浮点计算加速。此外,必须有测试和文档确保可维护性。

Expected Results:

  • Implement some optimized kernel for RISC-V architecture.
  • Testing and documentation.

期望结果:

  • 为 RISC-V 架构实现一些优化的 kernel
  • 测试和文档

Knowledge Prerequisite:

  • C++
  • RISC-V Assembly

预备知识:

  • C++
  • RISC-V 汇编

Level: Advanced

难度:高级

Mentor: nihui

导师:nihui


Project: ncnn 3D convolution neural network

项目:ncnn 3D 卷积神经网络

Brief Explanation: 3D CNN operators are often used in video processing models. There is almost zero support of them currently. We propose a project to introduce the essential data structure changes and operator implementations for deploying a basic 3D CNN model. In addition, testing and documentation is a MUST to keep maintainability.

简要:3D CNN 算子常用在视频处理模型中。当前 ncnn 不支持 3D 算子。我们提议本项目,做出必要的数据结构更改和算子实现,实现基本的 3D CNN 模型的部署。此外,必须有测试和文档确保可维护性。

Relevant issues:

相关 issue:

Expected Results:

  • Extend ncnn::Mat d(depth) member.
  • Implement the new naive Convolution3D Pooling3D BatchNorm3D and some 3D activation operators.
  • Bring 3D operator conversion with caffe/onnx/MLIR/etc. converter.
  • Make simple 3D CNN pytorch models deployable with ncnn.
  • Testing and documentation.

期望结果:

  • 扩展 ncnn::Mat d(depth) 成员
  • 实现最简单的 Convolution3D Pooling3D BatchNorm3D 和一些 3D 激活算子
  • 为 caffe/onnx/MLIR等转换器添加 3D 算子转换支持
  • 使用 ncnn 部署简单的 3D CNN pytorch 模型
  • 测试和文档

Knowledge Prerequisite:

  • C++
  • PyTorch

预备知识:

  • C++
  • PyTorch

Level: Advanced

难度:高级

Mentor: nihui

导师:nihui

联系导师

倪辉:[email protected]

2023腾讯犀牛鸟开源人才培养计划—OpenCloudOS

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
OpenCloudOS的子项目fuse-extent的目标是提升fuse用户态文件系统的可靠性和性能。
OpenCloudOS的子项目lkp-extent的目标是构建基于容器的自动部署和测试框架,其会作为云原生OS的一部分。

项目导师
彭浩,OpenCloudOS社区子项目负责人

导师寄语
OpenCloudOS是一个中立开放的社区,其中基于Linux内核开源了多个独立项目。如nettrace,EMF(ebpf module framework),lkp-extent(LisaOS的自动化测试组件),LiKeX(即之前的RustKvm)以及即将完全开源的LisaOS的构建组件和升级组件等等,欢迎同学们积极加入开源项目的开发。

编程任务
1.【中级任务】
lkp-extent容器测试框架(https://github.com/OpenCloudOS/lkp-extent)
lkp-server/lkp-node 两个组件的框架开发。lkp-extent容器测试框架需要一个server node(lkp-server)和若干个client node(lkp-node)。server node会进入监听模式,client node会根据自身的服务器配置相继接入对应的server node。lkp-node上运行包含了lkp测试套件:https://github.com/OpenCloudOS/lkp-tests 的容器。当前项目初步框架已经开发完成.

  1. 【初级任务】
    lkp-extent实现一系列命令集合 https://github.com/OpenCloudOS/lkp-extent 在lkp-server中执行命令
    从而对指定的lkp-node发起命令,使lkp-node对包含lkp测试套件的容器执行相应命令。这些命令包含:
    查看有哪些待测服务器
    $ lkp-ctl list # 返回client-node的nodeid,arch类型和内存等信息
    更新测试组件
    $ lkp-ctl update # 更新本机的测试组件,包括lkp-extent和lkp两个repo
    $ lkp-ctl update all # 更新所有node的测试组件
    $ lkp-ctl update -n nodeid #更新id号是nodeid的node的测试组件
    下发测试指令
    $ lkp-ctl run testcase # 所有node都执行testcase
    $ lkp-ctl -n nodeid run testcase # id是nodeid的服务器执行testcase
    $ lkp-ctl -n nodeid -c containerCount run testcase # id是nodeid的服务器开containerCount个容器,并在容器里面执行testcase
    下发测试集
    $ lkp-ctl run testcluster # testcluster是一堆testcase的组合,用于进行多组合测试
    $ lkp-ctl -n nodeid run testcluster # 对指定测试机进行组合测试
    $ lkp-ctl -n nodeid -c contaierCount run testcluster # 对指定测试机进行容器内的组合测试
    推送自定义测试case
    $ lkp-ctl push testscript # 向所有测试机推送名字为testscript的脚本
    $ lkp-ctl -n nodeid push testscript # 向指定测试机推送名字为testscript的脚本
    收集测试结果
    $ lkp-ctl result # 收集所有测试机的测试结果
    $ lkp-ctl -n nodeid result # 收集指定的测试机的测试结果

2.【中级任务】
EMF(ebpf-module-framework)(https://github.com/OpenCloudOS/EMF-ebpf-module-framework)
实现一个ebpf的构建和管理框架. EMF支持两种加载模式:一、EMF模块静态链接;二、EMF模块动态加载。通常,在入口函数main启动后(core/emf.c),EMF框架会去主动查找静态模块,分别去执行静态模块的初始化函数和加载函数;然后EMF才会去读取动态模块,并处理动态模块的初始化和加载函数。所以这里有一个优先级的关系,即静态模块的优先级永远高于动态模块的优先级。

联系导师
彭浩:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—Apache Ozone#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介

Ozone是一个大数据场景分布式存储,支持百亿到千亿级对象和文件。Ozone提供兼容S3 的对象功能,和兼容Hadoop File System(HCFS)的文件功能,同时通过CSI驱动接入Kubernets生态。Ozone定位于混合云场景存储支持,是面向数据湖的下一代大数据存储系统。

项目导师

陈怡、费辉、耿斌、赵明超,Apache Ozone Committer

导师寄语

大数据存储是整个大数据系统的基石,Ozone是Hadoop生态推出的新一代大数据场景分布式存储,支持百亿到千亿级对象和文件。希望同学们通过暑期实践,对于大数据生态的存储能有一个深入的了解和掌握。

编程任务

项目: 兼容S3协议的数据Lifecycle管理

任务:
1. 数据Lifecycle管理的设计
2. 在S3网关实现Lifecycle 策略的设置和修改
3. 在Ozone 命令行支持 LifeCycle的CRUD
4. 在Ozone元数据OM节点,实现Lifecycle的具体功能
5. 完成代码编写和测试,完成功能使用文档
6. Demo 演示

参考资料:
https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html

联系导师:

陈怡:[email protected]
费辉:[email protected]
耿斌:[email protected]
赵明超:[email protected]

Introduction of 2021Tencent Rhino-bird Open-source Training Program

一、 腾讯犀牛鸟开源人才培养计划——项目介绍

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。


官网:https://opensource.tencent.com/summer-of-code

二、培养模式

  • 开源基础培训:
    · 通用基础培养;
    · 导师答疑解惑;
    · 在线学习打卡;

  • 开源进阶研学:
    ·学界大咖分享;
    ·对话开源专家;
    ·结交开源圈子;

  • 开源项目实战:
    · 项目进阶实战;
    · 专家1v1指导;
    · 项目评优答辩;
    所有培养环节及重要学习资源,将在乐享犀牛鸟校园“腾讯犀牛鸟开源人才社区”承载,包括各开源项目精选学习资源、github使用培训、学界及业界大咖分享、项目指南手册、开源福利活动等。
    现在加入社区,即刻快人一步,拥有所有学习资源,与全国热爱开源的小伙伴们一同,开启项目制学习,相互学习,共同成长。

腾讯犀牛鸟开源人才社区:https://lexiangla.com/teams/k100046?company_from=79350bd4d06911ea91f05254002f1020
(需完成注册)

有任何疑问,欢迎加入开源人才交流QQ群,项目组在线答疑解惑。
群号:859260607(加群请备注高校+专业)

三、参加收益

开源成长体系:通过进阶式人才培养体系,包括基础培养(零基础也可参加)、进阶研学、项目实战(需通过筛选)三个环节,成长为懂开源、热爱开源的人
参加暑期研学:报名即可参加线上研学系列培养课程,表现优秀的同学有机会于暑期受邀在深圳参加为期一周的腾讯精英研学营
开源贡献证书:通过开源项目实战历练最终毕业的同学,有机会获得腾讯开源贡献证书(全球发10+张),代码有机会被项目采用
丰厚奖学礼包:参与各培养环节均有机会获得腾讯开源社区提供的丰厚奖励。

四、培养流程

  1. 开源基础培训(5月17日——6月21日):面向高校所有热爱开源的同学开放,无需报名,成功注册开源人才社区后即可开始学习(零基础也可参与);
  2. 开源进阶研学(7月中旬——7月底):面向高校所有热爱开源&报名成功的同学,6月21日前完成报名即可参与进阶学习;
  3. 开源项目实战(7月中旬——9月中旬):面向6月21日前完成报名且提交proposal&通过筛选的同学,1个学生最多提交3份proposal。


主办单位:腾讯开源、腾讯高校合作
教育指导单位:教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会
行业指导机构:**信息通信研究院
支持平台:乐享犀牛鸟校园

2022腾讯犀牛鸟开源人才培养计划-NCNN

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
一个为手机端极致优化的高性能神经网络前向计算框架。基于 ncnn,开发者能够将深度学习算法轻松移植到手机端高效执行,开发出人工智能 APP,将 AI 带到你的指尖。

项目导师
倪辉,ncnn作者

导师寄语
ncnn是业界知名的AI推理框架,社区支持很好,参与研发是能学到知识和技术的,导师会很耐心帮助你的,对吧对吧!

编程任务

Project: ncnn custom namespace

Brief Explanation: 允许用户编译时指定namespace,替代ncnn,以便多个版本ncnn同时使用
Knowledge Prerequisite: C++
Level: Easy

Project: ncnn resize_nearest

Brief Explanation: 实现resize_nearest_c1/c2/c3/c4
Knowledge Prerequisite: C++, Image Processing
Level: Easy

Project: ncnn convert_color

Brief Explanation: convert_color rgb/rgba/bgr/bgra/gray/hsv/hsl/yuv/...
Knowledge Prerequisite: C++, Image Processing
Level: Medium

Project: ncnn optimize pixel drawing with x86 sse2 and arm neon

Brief Explanation: optimize pixel drawing api, eg draw line/circle/text
Knowledge Prerequisite: C++, SIMD
Level: Medium/Advanced

Project: ncnn optimize layernorm with x86 sse2/avx/avx512

Brief Explanation: pick layernorm and optimize it :)
Knowledge Prerequisite: C++, SIMD
Level: Medium/Advanced

Project: ncnn optimize layernorm with arm neon/fp16s/fp16sa/bf16s

Brief Explanation: pick layernorm and optimize it :)
Knowledge Prerequisite: C++, SIMD
Level: Medium/Advanced

Project: ncnn optimize layernorm with mips msa / riscv vector

Brief Explanation: pick layernorm and optimize it :)
Knowledge Prerequisite: C++, SIMD
Level: Medium/Advanced

Project: ncnn implement grid_sample

Brief Explanation: implement grid_sample operator and pnnx conversion
Knowledge Prerequisite: C++, PyTorch
Level: Medium/Advanced

Project: ncnn implement argmax/argmin

Brief Explanation: implement argmax/argmin operator and pnnx conversion
Knowledge Prerequisite: C++, PyTorch
Level: Medium/Advanced

Project: ncnn resolve cpu smp and big-little topology on windows

Brief Explanation: so we could resolve the best threading policy
Knowledge Prerequisite: C++, SIMD
Level: Medium

Project: ncnn better cpu memory pool

Brief Explanation: reduce allocation overhead and save some memory
Knowledge Prerequisite: C++, Linux
Level: Medium/Advanced

Project: ncnn integer requantize

Brief Explanation: implement requantize with integer multiply and shift
Knowledge Prerequisite: C++
Level: Medium/Advanced

Project: ncnn convert pytorch qat model via pnnx

Brief Explanation: convert qat model to ncnn
Knowledge Prerequisite: C++, PyTorch
Level: Advanced

联系导师
倪辉:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—TNN#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

TNN是一个跨平台AI推理框架,同时拥有跨平台、高性能、模型压缩、代码裁剪等众多突出优势。同时也借鉴了业界主流开源框架高性能和良好拓展性的优点。目前TNN已经在腾讯业务手Q、微视、P图等广泛落地应用,欢迎大家参与协同共建,促进TNN推理框架进一步完善。

TNN项目主页:https://github.com/Tencent/TNN/blob/master/README_CH.md

项目导师

姚达,TNN框架技术负责人
田恒锋,TNN框架CPU侧架构师
王星晨,TNN框架CPU侧架构师

导师寄语

TNN专注于深度学习推理部署,其中GPU在整个深度学习框架中占据了重要位置。希望通过相关辅导以及开源实践,帮助学员熟悉和提升GPU编程和性能调优经验,提升在整个开源社区和行业影响力。——田恒锋
TNN是一个跨平台高性能的推理框架,通过相关实践你将了解到AI算法落地的详细过程,以及如何在兼容性、性能以及效果之间做到平衡,为日后工作打下坚实基础——王星晨
AI推理优化是一套系统工程,希望通过TNN相关辅导,能够帮助学员在硬件架构、应用框架等方向提升发现问题、解决问题的能力——姚达

编程任务

1.量化模型支持,打通训练和推理,支持非对称、按channel量化
预期结果:

  • 优化x86平台对称量化
  • 打通对称量化整个流程,并能够针对arm或者x86平台做一些优化
  • 文档和测试

2.AI芯片适配,完成腾讯自研芯片或业界最新芯片的适配,完成模型迁移
预期结果:

  • 打通服务端AI芯片的软件栈接入到TNN的流程
  • 完成部分常用模型的适配
  • 文档和测试

3.云或端侧个性功能实现高性能部署,如人像分割、3D物体检测等

  • GPU性能优化
  • 文档和测试

联系导师:

姚达,TNN框架技术负责人:[email protected]
田恒锋,TNN框架CPU侧架构师:[email protected]
王星晨,TNN框架CPU侧架构师:[email protected]

2022腾讯犀牛鸟开源人才培养计划-TencentOS Tiny

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,安全可靠等特点,可有效提升物联网终端产品开发效率; 提供精简的 RTOS 内核,内核组件可裁剪可配置,可快速移植到多种主流 MCU (如 STM32 全系列)及模组芯片上。覆盖IoT主流应用场景,支持硬件平台数量超60+,包括STM32、NXP、华大半导体等多家MCU和模组厂家。

项目导师
汪礼超,TencentOS tiny项目负责人
王世伟,TencentOS tiny布道师
赵健,TencentOS tiny架构师

导师寄语
近年来,随着5G、NB-IoT、4G cat1等广域物联网技术的日渐成熟,物联网市场呈井喷式发展。目前TencentOS Tiny项目已经捐赠给**开放原子开源基金会,将持续配合广大开发者、合作伙伴,进一步扩展开发者和应用生态。欢迎同学们积极参与!

编程任务
项目1(初阶). TencentOS-Tiny构建系统开发
任务:
开发完成基于TencentOS-Tiny master分支源码的构建系统,构建系统可自由选择
要求支持生成Keil-MDK工程、支持生成IAR工程,支持生成使用arm-none-eabi-gcc编译的Makefile工程
完成基础测试和技术指导文档编写

项目2(初阶):TencentOS-Tiny内核态和用户态实现
任务:
开发完成基于TencentOS-Tiny的内核系统态和用户态
基于内核制作完成tlib库,应用程序只能通过tlib库调用内核API,调用内核api时应陷入到内核态发起调用,调用完成后返回到用户态,tlib库提供API,名称和参数应该与原有API保持一致
基于MPU硬件单元,对内核地址空间进行保护,禁止用户态直接访问内核空间
完成基础测试和技术指导文档编写
需要的基础:C语言、Linux、RTOS、TencentOS Tiny物联网操作系统

项目3(中阶):TencentOS-Tiny内核TrustZone-M支持
任务:
开发完成基于TencentOS-Tiny内核对于TrustZone-M的支持
在开启TrustZone-M的情况下,内核可以正常调度运行,推荐平台STM32L5
完成基础测试和技术指导文档编写
需要的基础:C语言、RTOS、TencentOS Tiny物联网操作系统、TrustZone-M

项目4(高阶). TencentOS Tiny 内核SMP特性开发
任务
开发完成TencentOS-Tiny内核对于多核MCU的支持,SMP架构(推荐平台:树莓派Pico)或AMP架构(推荐平台:STM32H7x5)二选一即可
完成基础测试和技术指导文档编写
需要的基础: C语言、多核架构基本原理 、RTOS、TencentOS Tiny物联网操作系统

联系导师
汪礼超:[email protected]
王世伟:[email protected]
赵健:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—APIJSON#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
APIJSON是后端的一个零代码接口和文档ORM库,赋能前端(客户端)定制返回JSON的数据和结构。可大幅提振开发效率、强力杜绝联调扯皮、巧妙规避文档缺陷、非常节省流量带宽等。
APIJSON 项目主页:https://github.com/Tencent/APIJSON
APIJSON说明文档:https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md

项目导师
周作彪,APIJSON, ZBLibrary等热门开源项目的作者、开源布道师
https://github.com/TommyLemon

导师寄语
APIJSON 是一个业内颇具影响力的后端知名热门项目,企业案例丰富、应用场景广泛、腾讯内外获得多个奖项和多次受邀演讲,这个零代码接口和文档 ORM 库随着 Serverless 的兴起会越来越重要。学习和使用这个前沿技术,不仅能提升自己与时俱进,还可以作为参与腾讯开源的一个切入点,为日后的工作打下坚实基础。

编程任务(任选一个)
1.完善入门介绍视频(清晰展示对应的操作步骤,从下载源码到跑起来项目完成接口测试,可参考宣传视频)
https://lexiangla.com/teams/k100046/classes/a4eba9f4b6d711eba2ec268dd73d15f1?type=0&company_from=79350bd4d06911ea91f05254002f1020

2.接入 presto/hive/clickhouse/db2 任意一个(能跑起来项目进行接口测试,起码简单的分页排序搜索等查询功能可用)
https://github.com/Tencent/APIJSON#%E8%A7%84%E5%88%92%E5%8F%8A%E8%B7%AF%E7%BA%BF%E5%9B%BE

理论上所有支持 SQL 与 JDBC/ODBC 的软件,都可以用本项目对接 CRUD,待测试:
ClickHouse, Hive(延伸支持 Hadoop, Spark), DB2, Presto

可依赖它们的 JDBC 驱动(jar/maven/gradle 方式都行)并在 DemoSQLConfig 中配置,参考以下步骤
https://github.com/APIJSON/APIJSON-Demo/tree/master/APIJSON-Java-Server
及对应的 Demo(建议用最简单的初级上手 Demo 项目 APIJSONDemo)
https://github.com/APIJSON/APIJSON-Demo/blob/master/APIJSON-Java-Server/APIJSONDemo/pom.xml

贡献方式
GitHub 上为 APIJSON 提交 Pull Request,具体见
https://github.com/Tencent/APIJSON/blob/master/CONTRIBUTING.md

联系导师

周作彪:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—SuperEdge#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

SuperEdge,基于Kubernetes原生的边缘容器方案,它将Kubernetes强大的容器管理能力扩展到边缘计算场景中,针对边缘计算场景中常见的技术挑战提供了解决方案,如:单集群节点跨地域、云边网络不可靠、边缘节点穿透内网注册等,帮助用户轻松地部署应用到边缘计算节点上,安全可靠地服务。

SuperEdge项目GitHub主页:https://github.com/superedge/superedge

项目导师

陈一苇,Linux Foundation APAC 开源布道者,SuperEdge发起人之一
王继罗,SuperEdge技术负责人

导师寄语

开源为创新提供了一个开放的平台,通过分享和交流把最新的理论和技术在项目中实现,再不断的启发更多的创新。欢迎大家加入TSoC,希望通过SuperEdge这个项目让学员们学习云原生、了解边缘计算,在开源这个大舞台上展现自己,发挥创造力。

编程任务

  1. 实现边缘容器 ingress。https://docs.qq.com/doc/DSG5qdmttVWhhZ0Fs
  2. 实现一种边缘微服务模型。https://docs.qq.com/doc/DSGFEWkNxS2VwaXZR
  3. 接入云原生监控系统。https://docs.qq.com/doc/DSHBKVHVTa1RGdnBj
  4. 设计和实现一种云原生的IoT设备管理机制。https://docs.qq.com/doc/DSEpCWVVsZHdQSWJN

联系导师:
陈一苇,Linux Foundation APAC 开源布道者,SuperEdge发起人之一:[email protected]
王继罗,SuperEdge技术负责人:[email protected]

2022腾讯犀牛鸟开源人才培养计划-Angel

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code(需要更新)

项目简介
腾讯自主研发并开源的面向企业级应用的高性能分布式机器学习平台,支持特征工程、模型构建、参数训练、AutoML、模型服务Serving等全栈机器学习服务,提供机器学习、深度学习、图神经网络等多种算法,支持级万亿级超大规模参数模型的训练,已在生产业务系统中大规模部署。

项目导师
欧阳文、孙瑞鸿,Angel开源项目技术负责人

导师寄语
Angel是腾讯自研高性能分布式机器学习和图计算平台。通过学习,你将了解顶级分布式机器学习平台架构设计原理以及AI算法落地细节,轻松玩转机器学习和图计算,对以后的学习和工作都大有益处

编程任务
题目:基于Angel实现Struct2Vec算法
内容:
Struct2Vec提出了一种新的框架用于在表示网络中节点的同时保持节点的结构特性,从而能够挖掘出网络中节点的空间结构相似性,在许多图场景中得到了广泛应用。

预备知识:
1.Struct2Vec算法论文:https://arxiv.org/pdf/1704.03165.pdf
2.Java, Scala
3.Spark on Angel

预期结果:
1.初级:基于Angel实现单机Struct2Vec算法
2.中级:基于Angel实现分布式Struct2Vec算法
3.高级:文档与测试Demo,在多种数据集(如:Barbell graph)上有高效的训练性能并输出关键指标

收获:
1.理解图表示学习算法的实现逻辑,熟悉Angel、Spark等组件功能
2.分布式系统的性能优化实践经验

联系导师:
欧阳文:[email protected]
孙瑞鸿:[email protected]

2023腾讯犀牛鸟开源人才培养计划—Cherry Markdown

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
Cherry Markdown Editor 是腾讯对外开源的 Javascript Markdown 编辑器,具有开箱即用、轻量简洁、易于扩展等特点,可以运行在浏览器或服务端(NodeJs)。

项目导师
崔家维,Cherry Markdown PMC
魏林贤,Cherry Markdown PMC
胡杰雄,Cherry Markdown PMC
刘阳,Cherry Markdown PMC

导师寄语
欢迎感兴趣的同学积极参与!项目地址:https://github.com/Tencent/cherry-markdown

编程任务
初阶任务:完善CommonMark语法解析
研究CommonMark规范,完善Cherry Markdown行内语法hook(sentence hook)以支持更多CommonMark语法特性,并增加通过10个单测用例。

中阶任务:表格所见即所得功能
熟悉Cherry Markdown编辑器基本架构,在表格所见即所得功能基础上支持拖拽行列、复制单元格的功能。

高阶任务:hook执行支持异步调用
当前Cherry Markdown的解析引擎采用同步调用各语法hook对markdown原文进行解析渲染,设计并支持异步hook调用机制以支持更多解析场景。

联系导师
崔家维:[email protected]
魏林贤:[email protected]
胡杰雄:[email protected]
刘阳: [email protected]

2022腾讯犀牛鸟开源人才培养计划-Apache Inlong

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介

Apache InLong(应龙)是一个一站式海量数据集成框架,提供自动、安全、可靠和高性能的数据传输能力,同时支持批和流,方便业务构建基于流式的数据分析、建模和应用。详细项目情况参考:https://inlong.apache.org/zh-CN/

项目导师
张超, 腾讯大数据 InLong 团队负责人,Apache InLong PPMC
张国成,Apache InLong PPMC

导师寄语
Apache InLong 是腾讯捐献 Apache 基金会的一站式海量数据集成框架,提供自动、安全、可靠和高性能的数据传输能力。数据集成通过将不同来源的数据整合在一起,为商业和决策提供统一的有价值的数据,参与 InLong 有助于你掌握数据集成全链路技术细节,同时进入 Apache 开源的世界。

编程任务
收获:
(1)了解 Apache 开源项目如何运作
(2)了解海量数据集成框实现原理

项目1: 支持 TubeMQ 命令行工具设计和开发(初级)
(1)模块:TubeMQ
(2)说明:聚合到一个命令,进行Topic 的使用,降低使用门槛;比如tubectl topic list
(3)标准:功能需要包括:a,Topic 增删改查;b,发送和消费消息

项目2: SDK 负载优化(中级)
(1)模块:DataProxy
(2)说明:SDK 在生产数据的时候,会选出一组节点发送数据,当其中部分出现问题时,剔除,选用新的候选节点
(3)标准:a,减少对生产的影响,做到客户端无感知;b,在服务器节点恢复后,能再次被选用;c,保证选用节点负载均衡

项目3: 全链路集成测试框架设计和实现(高级)
(1)模块:平台能力
(2)说明:由于InLong 数据链路涉及多个环节和组件,单个组件的修改都可能造成数据流异常。该题目需要给出通用的全链路测试框架,以及一条数据流验证准确性
(3)标准:a,具备良好的扩展性,可以快速支持新的数据节点;b,至少覆盖一条数据链路用于验证框架,比如 MySQL->Hive;c,能够跟GitHub Actions打通,创建对应流水线

联系导师:
张超:[email protected]
张国成:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—OMI#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

OMI-前端跨框架框架,既能以 Web Components 自定义标签形式赋能前端生态,如(react、vue、preact),也可自成一套体系加速 Web 和 小程序前端开发。

OMI项目主页:omijs.org
GitHub主页:https://github.com/Tencent/omi

项目导师

张磊,跨框架框架作者, Kbone Contributor

导师寄语

OMI 是一款前端跨框架框架,今年年初开始一直有很多有趣且有价值的想法在 OMI 上面,一起来实现它们吧,一定能收获满满

编程任务

使用omi 搭建完整的前端低代码平台,包括:
1.低代码组件库
2.低代码渲染器
2.低代码可视化编辑器
3.低代码预览发布导入导出

联系导师

张磊,跨框架框架作者, Kbone Contributor:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—TencentOS Tiny#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,安全可靠等特点,可有效提升物联网终端产品开发效率; 提供精简的 RTOS 内核,内核组件可裁剪可配置,可快速移植到多种主流 MCU (如 STM32 全系列)及模组芯片上。覆盖IoT主流应用场景,支持硬件平台数量超60+,包括STM32、NXP、华大半导体等多家MCU和模组厂家。

TencentOS Tiny中文官网:https://cloud.tencent.com/product/tos-tiny
TencentOS Tiny项目主页:https://github.com/Tencent/TencentOS-tiny

项目导师

汪礼超,TencentOS tiny核心架构师, 联系方式微信supowang
赵健,TencentOS tiny架构师
王世伟,TencentOS tiny布道师

导师寄语

近年来,随着5G、NB-IoT、4G cat1等广域物联网技术的日渐成熟,物联网市场呈井喷式发展。目前TencentOS Tiny项目已经捐赠给**开放原子开源基金会,将持续配合广大开发者、合作伙伴,进一步扩展开发者和应用生态。欢迎同学们积极参与!

编程任务

项目1:TencentOS Tiny 物联网操作系统上支持js框架
任务:

  • 开发完成 JS framework、js runtime 等js基础运行环境;
  • 基于JS应用框架提供相应的js编译工具或者操作脚本;
  • 完成类似小程序的js app demo演示
  • 完成基础测试和技术指导文档编写

需要的基础:C语言、JS、RTOS、TencentOS Tiny物联网操作系统


项目2. TencentOS Tiny 物联网操作系统上支持Rust语言框架

任务:

  • 开发完成Rust基础运行环境;
  • 基于Rust应用框架提供相应的编译工具或者操作脚本;
  • 完成rust app demo演示
  • 完成基础测试和技术指导文档编写

需要的基础:C语言、rust、RTOS、TencentOS Tiny物联网操作系统
参考例子:https://github.com/Tencent/TencentOS-tiny/tree/master/examples/tos_meets_rust
请基于该案例进行优化,要求rust运行框架解耦,rust app能灵活快速编译部署


项目3. TencentOS Tiny 物联网操作系统 AI组件开发

任务

  • 开发AI 推理框架,可选TensorFlow Lite Micro或者其他推理引擎;
  • 要求AI框架可以运行在低资源的MCU上,比如STM32 、NXP等MCU;
  • AI框架组件化,可以裁剪可移植;
  • AI框架可完成基础的人脸识别、物体识别、语言识别等能力,并提供相应demo;
  • 完成基础测试和技术指导文档编写

需要的基础: C语言、AI、TensorFlow 、RTOS、TencentOS Tiny物联网操作系统
参考例子:https://github.com/Tencent/TencentOS-tiny/tree/master/components/ai/tflite_micro


项目4:基于STM32CubeMX 或者MDK完成第三方TencentOS Tiny pack和软件包封装,可以使用STM32CubeMX或者MDK pack直接生成适合不同MCU的TencentOS Tiny工程

参考文档 ARM MDK PACK制作:https://arm-software.github.io/CMSIS_5/Pack/html/cp_Packs.html
STM32CubeMX 第三方软件包制作:https://www.stmicroelectronics.com.cn/resource/en/user_manual/dm00432311-development-guidelines-for-stm32cube-expansion-packages-stmicroelectronics.pdf

联系导师

汪礼超,TencentOS tiny核心架构师 ,Email:[email protected] 微信:supowang
赵健,TencentOS tiny架构师,[email protected]

#2021Tencent Rhino-bird Open-source Training Program—TKEStack#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

TKEStack是一个开源的,集健壮性和易用性于一身的企业级容器编排引擎,为在生产环境中部署容器的组织提供一个统一的容器管理平台,以极简的向导式界面提供了容器应用的全生命周期管理能力,帮助用户在私有云,混合云环境中敏捷、高效地构建和发布应用程序,满足 IT 运维要求,并增强 DevOps 团队的能力。

TKEStack在线手册:https://tkestack.github.io/docs/

项目导师

汝英哲,TKEStack开源项目负责人

导师寄语

随着容器以及K8S的快速发展和广泛应用,云计算领域正在迎来云原生时代,TKEStack是腾讯开源的优秀云原生容器平台,希望同学们通过对TKEStack的学习和实践,能够了解云原生领域最新的技术,融入开源生态,磨炼技术,成长为独当一面的人才。

编程任务

● TKEStack 集群CIS安全基线扫描分析

任务描述
为了提供更安全的K8s集群,有必要使集群遵循安全的配置基线。

建议方案
建议使用Center for Internet Security(CIS) benchmarks 来评估和分析集群的安全性。

具体工作

  1. 阅读和理解kubernetes的CIS基准
  2. 使用kube-benchtools检查由tkestack创建的集群
    3.根据分析结果,提出相应的安全建议
  3. 向tkestack提交PR以增强集群的安全性

参考

  1. https://www.cisecurity.org/benchmark/kubernetes/
  2. https://wiki.aquasec.com/display/containers/CIS+Kubernetes+Benchmark

● 支持 built-in 安装 storage 存储

任务描述
目前,TKEStack不提供存储解决方案作为开箱即用的特性,导致终端用户很难使用有状态应用程序,此外,内部组件(如镜像仓库和InfluxDB等)依赖master[0]上的本地存储,这意味着如果master[0]异常,TKEStack HA将受影响。

建议方案
在TKEStack global集群上启用minio作为存储解决方案,为全局集群和业务集群创建一个默认存储类

具体工作

  1. 安装minio到全局集群的helm chart:  https://github.com/minio/operator/tree/master/helm
  2. 动态PV使用csi机制: https://github.com/minio/direct-csi
  3. 将默认 storage class导出到最终用户

参考

  1. https://www.cnblogs.com/panwenbin-logs/p/12196286.html
  2. https://blog.csdn.net/weixin_42914965/article/details/106035429
  3. https://juejin.cn/post/6844904152284266503

● 支持创建边缘独立集群

任务描述
SuperEdge是面向边缘计算的开源容器管理系统,它将Kubernetes强大的容器编排和调度能力扩展到了边缘。SuperEdge提供了工具用于创建边缘集群,希望也能通过tkestack来创建和管理边缘集群。

建议方案
SuperEdge提供了edgeadm工具来创建边缘集群,在tkestack中利用该工具来创建边缘集群。

具体工作

  1. 学习SuperEdge项目并使用edgeadm工具创建边缘集群
  2. 扩展tkestack,以支持创建边缘集群形式的tkestack
    3.支持在tkestack中管理边缘集群

参考

  1. https://github.com/superedge/superedge
  2. https://github.com/superedge/superedge/blob/main/docs/installation/install_edge_kubernetes.md

联系导师

汝英哲,TKEStack开源项目负责人:[email protected]

#2021Tencent Rhino-bird Open-source Training Program—TARS#

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program

为响应国家十四五规划的开源战略,腾讯于2021年5月发布“首届腾讯犀牛鸟开源人才培养计划”,希望企业界和教育界形成合力,打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态的发展。

首届项目由教育部计算机教学指导委员会、教育部软件工程教学指导委员会、**信息通信研究院作为联合指导单位,包括开源基础培训、开源进阶研学、开源项目实战三个环节,项目涉及云原生、微服务、容器、AI、大数据、前端、物联网/边缘计算等多项技术热点。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战,并有机会获得腾讯开源贡献者证书(目前全球只发出了10+张)。

更多项目信息请看:https://opensource.tencent.com/summer-of-code

项目简介

TARS是腾讯对外开源的高性能微服务治理框架,成立Linux基金会旗下TARS基金会。支持C++、Java、Nodejs、PHP、Golang等多种开发语言,并配套服务治理平台,帮助开发人员和企业快速构建稳定可靠的分布式微服务应用,从而令开发人员只关注逻辑,提高研发和运营效率,缩短产品研发时间,加快产品创新的节奏。腾讯内部10多年大规模使用和迭代,开源后有上百家企业上万名开发者在使用,涵盖即时通讯、直播、视频、游戏、金融、交通、IoT等多个行业。

TARS基金会官网:https://tarscloud.org/
TARSGitHub主页:https://github.com/TarsCloud

项目导师

利开园,TARS项目核心维护者,技术布道师

导师寄语

TARS是腾讯开源的一套功能完整的微服务治理构架,为云原生场景下提供高效开发和高质运维的DevOps解决方案。希望通过“编程之夏”让学生学会使用TARS,懂的如何实现K8S与TARS的整合方案,并应用到实际的项目研发中。

编程任务

  1. TarsGo支持Promethus监控:TarsCloud/TarsGo#246
  2. Tars支持跨set流量管理:TarsCloud/Tars#846

联系导师:

利开园,TARS项目核心维护者,技术布道师:[email protected]

开源项目实战-项目申请书模板

项目申请书分为三个部分,技术方案、时间规划、项目经历,请用以上三部分作为框架来详细展开。

技术方案

1.请记住,技术方案越详细越有利于项目导师的理解和认可;

2.在技术方案中,学生应该重点展示出自己对开源项目的理解程度,可以从以下几点入手:

·根据自己的理解和前期项目学习储备来拆解目标开源项目,尽可能描述各个模块的功能;

·重点对项目发布的任务或需求进行分析,体现自己的思考和思路;

·具体描述自己的技术方案,比如自己的方案将会添加哪些模块,以及这些模块如何与现有模块通信;

3.最好能为自己的方案找到一些可执行的依据,包括但不限于:

·其他项目的成功经验;

·论文等提供的理论依据;

时间规划

1.时间规划的颗粒度最好以周为单位;

2.开源项目实战培养环节为2个月,我们需要您将时间划分为两个大的阶段(如,4周为一个阶段),并计划每个阶段希望能完成的任务和挑战;

3.在每个阶段内,以周为单位,描述自己一周内计划完成的任务;

项目经历

1.项目经历的描述是为了让项目和项目导师对每一位申请学生的技术实践能力有更清晰的认识;

2.项目经历请重点以参与过开源社区/开源项目的经历为主

3.请不要忘记展示自己在Github/Gitee/Gitlab 等开源代码平台的用户 ID以及自己参与过的开源项目链接;

4.切忌在这个部分罗列不相关的信息,提供的信息应该尽可能和自己所申请的项目相关,包括但不限于:

·已经为开源项目提交过贡献;

·参与开源社区/项目经验;

·虽然未参与相关社区/开源项目贡献,但是有了解开源社区/项目的学习能力;

·虽然未参与过开源,但是有类似功能软件的开发经验;

·若以上经验都没有涉及,需要着重体现自己对项目使用技术栈的掌握程度,以及展现自己的学习能力;

开源项目实战—提交项目申请书之前的叮嘱

1.加入“腾讯犀牛鸟开源人才培养计划”人才社区,对感兴趣的项目进行主动学习和熟悉,提前进行知识储备,提交项目申请书之前能有一个大概认知;

2.关注感兴趣项目github社区动态,别忘记给心仪项目点一个star!

3.如果你还不会使用Github等平台基础操作,请赶快进入课堂学习:https://lexiangla.com/teams/k100046/classes?category_id=85636f8e885811ebb7511a953f785b6d&company_from=79350bd4d06911ea91f05254002f1020 ,或找身边熟悉的同学交流,别忘记也推荐他们暑期一起来报名啦

4.如果您有任何问题,欢迎Email:[email protected]与我们联系

其他亮点

除此之外,学生还可以在项目申请书中描述选择该项目的理由、过去与项目技术相关的开发经历、课程等,并表达参与该项目并为社区提交贡献的意愿。

2021腾讯犀牛鸟开源人才培养计划扬帆启航!

5月20日晚,2021年度首届“腾讯犀牛鸟开源人才培养计划线上启动会·暨开源专家讲坛”正式开始。在这个特殊的日子,用一种特别的方式开启了“520·我爱开源”的成长之夏。

本次专家讲坛,我们荣幸邀请到中科院计算所研究员、副所长,**开放指令生态(RISC-V)联盟秘书长包云岗,清华大学计算机系教授,长江学者,万人领军人才,**计算机学会副理事长、亚洲图形学会副主席胡事民,**信息通信研究院云大所副所长,云计算开源产业联盟秘书长栗蔚,复旦大学计算机科学技术学院、软件学院副院长,**计算机学会软件工程专委会副主任彭鑫等4位专家学者。以及腾讯公司副总裁、腾讯开源办公室主任王巨宏,腾讯开源运营负责人王春雨,Apache member、Apache sparkPMC、Apache LivyPPMC邵赛赛3位腾讯专家为大家带来开源领域的精彩分享。

同时,也有来自全国高校,热爱开源的优秀学生观看了启动会暨开源专家讲坛,开始了开源世界的探索之旅。


腾讯公司副总裁、腾讯开源办公室主任王巨宏在启动会开场致辞中表示:

“未来的世界一定是一个开源的世界,如果你对开源完全不了解,可能你在这个行业里已经处于劣势了。未来随着**的发展,我们希望能够为世界开源大潮贡献更多我们的力量,能够跟大家一起贡献出有质量有名声有口碑的开源项目。这是我们的梦想和初衷,也希望跟大家一同去实现这样的一个梦想。”


腾讯开源运营负责人王春雨,也为大家做了腾讯犀牛鸟开源人才培养计划的整体详细介绍,帮助大家更加了解本次项目:

我从2016年开始负责腾讯开源的运营工作,见证了腾讯开源从默默无闻到崭露头角。随着国家和学界、业界对开源项目的重视及投入,我们相信同样的进程也将在国内高校展现。我们相信“千里马”在大学校园里,这也是我们发起「 犀牛鸟开源人才培养计划」的初衷。
我们坚信**的大学校园,未来一定会如海外大学一样,诞生像Spark这种顶级的开源项目(Spark是Apache基金会最为活跃的开源项目之一,拥有数千名活跃开发者,它的最初创始人是来自美国加州大学伯克利分校的在校生)。
希望「 犀牛鸟开源人才培养计划」能够加速开源文化在校园中的传播。


清华大学计算机系教授,长江学者,万人领军人才胡事民教授,也为大家介绍了《开源人才培养与“计图”的开源实践》,胡老师讲到:

我们要发展开源,就得遵守规则, 遵守开源⽂化。**很多开发者已经开始扮演重要的角色,作出了很多的贡献。但是开源数量不是最主要的,质量是最主要的。
发展开源软件,应该强调科学精神,就是要踏踏实实做事情,这种脚踏实地的⽂化,不管是学术界还是企业都应该实际践⾏!


Apache member,Apache sparkPMC邵赛赛作为嘉宾,也给大家带来了《我的开源之旅》精彩分享。讲述了自己是如何从一个Apache社区Committer到Member的成长之路,对同学们有了很深的启发。赛赛分享到:

关于开源社区,我想分享以下四点体会:
1、开源社区就是通过技术来决定你的个人成就,你的代码就是开源领域的硬通货,这里不单单说你解决了多少厉害的bug。更重要的是,代码的可读性高,符合社区风格也很重要。我们通过不断累积高质量的文档,会对自己开源的声望有很大的帮助。

2、第二重要的点在于“沟通”。开源社区就和在公司里大家协作做事情是一样的。你要让别人知道你做的东西能解决什么问题、带来什么价值。能够高效地把你所做的事情交付出去,这是一个非常关键的点,也是我们在社区中取得更多的影响力的很重要的因素。

3、任何一个大的开源项目都不是一个人做的,包括Linux,都是很多全球各地的人来共同维护。这时个人能力固然重要,但如何发挥社区的力量,让项目能够健康、更有生命力的往前走也是非常重要的。

4、最后很重要的一点就是持之以恒。开源是一个长期投入的过程,不是立竿见影或者靠数量和流量的事情。可能需要经过数十年不停的贡献、打磨,做很多非常低调的事情,才能在这个项目中获得很大的收获。


在开源专家讲坛第二期的分享中,**信息通信研究院云大所副所长栗蔚女士,在《**生态发展现状》中讲到:

企业侧需建立稳定的开源模式:我国自发开源企业需要建立稳定的开源商业模式,一是针对国际基金会顶级开源项目,建立社区反馈和联动机制;二是建立自主开源生态,重点在操作系统、数据库、中间件等基础软件领域探索开源。

构建开源治理体系:针对自发开源企业,开源使用企业建立开源软件管理体系,第三方组织需制定开源软件治理的行业标准,通过制定开源软件管理规则帮助企业规范开源软件的使用和输出,实现企业软件的全覆盖和全流程管理。同时配套建设开源风险检测,开源生态监测等平台,推动企业落地开源治理体系建设。


复旦大学计算机科学技术学院、软件学院副院长彭鑫,为大家介绍了关于《开源第三库复用及依赖管理》。彭鑫教授提到:

开源第三方库在软件开发中得到了大量的使用,通过多渠道广泛了解和学习开源第三方库,有利于提升软件开发效率和质量。同时,在使用第三方库时,需要注意兼容性、许可证与版权、缺陷与漏洞等方面的问题。第三方库背后的供应链问题也同样需要引起我们的注意。


最后,中科院计算所研究员,副所长包云岗为大家介绍了《开源芯片与敏捷设计:现状与趋势》,包教授讲到:

智能物联网(AIoT)时代的到来,使得处理器芯片需求更加碎片化。目前我国优秀的处理芯片人才储备严重不足,降低芯片设计门槛是人才危机的一种破解之道。我们希望通过降低芯片门槛,繁荣芯片市场,构建开源的芯片生态,实现让学生不再害怕做芯片,让本科生可以带着自己设计的芯片毕业,让做芯片像写APP那么简单,让天下没有难做的芯片。


本次开源专家讲坛受到了学界和高校学子的热情关注,也激发了大家对探索广阔开源世界的好奇心和热情。不少同学已经开始报名并提交了项目实战申请,并在官方平台“犀牛鸟开源人才培养社区”中,开始进行开源基础培训系列课程的学习。不少同学也在社区中发布笔记,分享了自己的总结和思考,与来自全国的同学们碰撞新的灵感。

在接下来5月到9月近4个月的时间里,参与项目的学生将通过开源基础培训和开源进阶研学,了解开源基础-进阶知识和13个开源项目,并围绕自己感兴趣的项目报名提交项目proposal。通过导师筛选的同学将进入开源实战环节,在专家导师的深入指导下,进行编程实践,磨练自己的实力。

腾讯犀牛鸟开源人才培养计划希望通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才,普及开源文化,助力开源人才生态发展。我们也期待在不久的未来,**能涌现出更多的开源人才,参与到开源贡献中。

加入腾讯犀牛鸟开源人才培养计划

一起成长这一夏!

[点击报名]

project proposal

《项目申请书模板》

项目申请书分为三个部分,技术方案、时间规划、项目经历,请用以上3部分作为框架来详细展开。

技术方案

1.请记住,技术方案越详细越有利于项目导师的理解和认可;

2.在技术方案中,学生应该重点展示出自己对开源项目的理解程度,可以从以下几点入手:

  • 根据自己的理解和前期项目学习储备来拆解目标开源项目,尽可能描述各个模块的功能;
  • 重点对项目发布的任务或需求进行分析,体现自己的思考和思路;
  • 具体描述自己的技术方案,比如自己的方案将会添加哪些模块,以及这些模块如何与现有模块通信;

3.最好能为自己的方案找到一些可执行的依据,包括但不限于:

  • 其他项目的成功经验;

  • 论文等提供的理论依据;

时间规划

1.时间规划的颗粒度最好以周为单位;

2.开源项目实战培养环节为2个月,我们需要您将时间划分为两个大的阶段(如,4周为一个阶段),并计划每个阶段希望能完成的任务和挑战;

3.在每个阶段内,以周为单位,描述自己一周内计划完成的任务;

项目经历

1.项目经历的描述是为了让项目和项目导师对每一位申请学生的技术实践能力有更清晰的认识;

2.项目经历请重点以参与过开源社区/开源项目的经历为主

3.请不要忘记展示自己在Github/Gitee/Gitlab 等开源代码平台的用户 ID以及自己参与过的开源项目链接;

4.切忌在这个部分罗列不相关的信息,提供的信息应该尽可能和自己所申请的项目相关,包括但不限于:

·已经为开源项目提交过贡献;

·参与开源社区/项目经验;

·虽然未参与相关社区/开源项目贡献,但是有了解开源社区/项目的学习能力;

·虽然未参与过开源,但是有类似功能软件的开发经验;

开源项目实战—提交项目申请书之前的叮嘱

1.加入“腾讯犀牛鸟开源人才培养计划”人才社区,对感兴趣的项目进行主动学习和熟悉,提前进行知识储备,提交项目申请书之前能有一个大概认知;

2.关注感兴趣项目github社区动态,别忘记给心仪项目点一个star!

3.如果你还不会使用Github等平台基础操作,请赶快参加开源基础培训,《六步玩转GitHub》随学随用,或找身边熟悉的同学恶补一下,别忘记也推荐他们暑期一起来报名啦

4.如果您有任何问题,欢迎Email:[email protected]与我们联系

2023腾讯犀牛鸟开源人才培养计划—TDesign

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
TDesign 是腾讯第一个对外开源的企业级设计体系,基于腾讯海量业务沉淀,为 PC、Mobile、小程序等平台提供丰富组件库,通过统一组件 API 接口为上层业务开发提供跨平台和跨端的同构方案。TDesign 具有统一的 价值观,一致的设计语言和视觉风格,帮助用户形成连续、统一的体验认知。

项目导师
孙哲,TDesign PMC 成员

导师寄语
TDesign 已经对外开源一年多时间了,各个技术栈陆续发布了 1.0 正式版本,组件库建设进入新阶段。目前公司内外的组件用户都很期望能够提供更多的页面模板来体验组件使用或基于模板来做业务项目开发,我们的设计师同学已经有一些移动端针对某些特定业务场景的页面设计资源,期待你来将他们转化为“开箱即用”的页面实现。

编程任务
题目:TDesign 业务模板实现
内容:参照已有各个行业领域的设计资源,开发对应业务模板。
编程任务:
TDesign 目前有两个移动端模板的设计稿资源:通用场景模板和活动报名场景模板。例:https://codesign.qq.com/s/2bzpZvlE2b9kAaV,访问密码:UMOD
本次编程任务期望招募到了解微信小程序开发的同学,一起参与实现这两个模板,并上架到微信小程序 IDE 的模板市场。TDesign 微信小程序组件库 repo:https://github.com/Tencent/tdesign-miniprogram

模板内页面较多,报名同学可以自行组队的认领一个模板或模板内关联性比较强的几个流程页面实现;也可以自行认领实现某一个页面。

贡献值以最终上架到 IDE 模板市场的模板数量为准,按照贡献的页面数量给予分值

联系导师
孙哲:[email protected]

latest activities on Rhino-bird Community

2021的这个夏天

腾讯犀牛鸟开源人才计划正式启动啦!

除了开源课堂、大咖分享等超多学习干货外

我们还为大家准备了丰富的K吧有奖互动活动

边学边玩,参与“腾讯犀牛鸟开源人才培养计划”K吧互动即有机会获得:

🐧鹅厂周边潮物、京东卡、Switch等奖品

快来康康吧!👀

“腾讯犀牛鸟开源人才培养计划”K吧进入方式:
image


活动一:K吧成员专属抽奖

  • 活动规则:加入“腾讯犀牛鸟开源人才培养计划”K吧,即可参与抽奖。

  • 活动时间:5月17日——6月21日

  • 活动奖励:5月31日、6月22日,我们将从所有加入K吧的成员名单中分别抽出5名同学送出鹅厂周边公仔1只+笔记本1枚。届时请同学们关注“腾讯犀牛鸟开源人才培养计划”K吧首页公告和本文评论区,了解获奖信息。


活动二:轻享学习打卡有奖

  • 活动规则:在轻享带#开源学习打卡# tag分享学习心得/学习笔记,即可完成打卡。期间累计完成10次打卡,即可参与抽奖。

  • 活动时间:5月17日——6月21日

  • 活动奖励:腾讯周边潮玩、京东卡、Q币、电子产品等

  • 获奖公布:获奖名单将于6月23日公布,届时请同学们关注“腾讯犀牛鸟开源人才培养计划”K吧首页公告和本文评论区,了解获奖信息。


活动三:报名有礼了

  • 活动规则:报名参加开源人才培养计划,第1个、第8个、28个、88个、100个报名的同学可欧气附身,获得主办方提供的超赞奖品。(➡️戳我报名)

ps.报名后经导师审核通过,进入实战筛选的同学,均可获得一份活动官方定制的礼盒一份。

  • 活动时间:5月17日——6月21日
  • 活动奖励:腾讯周边潮玩、京东卡、Q币、电子产品等
  • 获奖公布:获奖名单将于6月23日公布,届时请同学们关注“腾讯犀牛鸟开源人才培养计划”K吧首页公告和本文评论区,了解获奖信息。
    快叫上小伙伴们一起报名吧!

 除了以上的小互动外,我们还会在不定期在“腾讯犀牛鸟开源人才培养计划”K吧发布更多好玩、有趣的活动,欢迎大家保持关注!😉

2023腾讯犀牛鸟开源人才培养计划—3TS

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program 2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。
2023年将持续聚焦行业技术热点,提供企业真实项目和开发场景,提供前端、AI、大数据、基础平台、数据库等5大核心技术领域的明星项目和开源导师。
各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,开展编程实战,并有机会获 得腾讯开源贡献者证书(目前全球只发出了30+张)。 更多项目信息请看:https://opensource.tencent.com//summer-of-code

项目简介
腾讯公司TDSQL团队与**人民大学联合研制的面向数据库事务处理的验证系统。该系统旨在通过设计和构建事务(包括分布式事务)处理统一框架,并通过框架提供的访问接口,方便使用者快速构建新的并发控制算法;通过验证系统提供的测试床,可以方便用户根据应用场景的需要,对目前主流的并发控制算法在相同的测试环境下进行公平的性能比较,选择一种最佳的并发控制算法。目前,验证系统已集成13种主流的并发控制算法,提供了TPC-C、PPS、YCSB等常见基准测试。3TS还进一步提供了一致性级别的测试基准,针对现阶段分布式数据库系统的井喷式发展而造成的系统选择难问题,提供一致性级别判别与性能测试比较。

项目导师
陈育兴,3TS开源项目负责人

导师寄语
Tencent Transaction Processing Testbed System(简称3TS),是腾讯公司 TDSQL 团队与**人民大学数据工程与知识工程教育部重点实验室联合研制的面向数据库事务处理的验证系统。该系统可以方便用户根据应用场景的需要,在相同的测试环境下对目前主流的并发控制算法进行公平的性能比较,选择一种最佳的并发控制算法。目前,验证系统已集成十余种主流的并发控制算法,提供了TPC-C、YCSB 等常见基准测试。该系统还便于设计、测试、验证新的控制算法,从而提高算法性能,同时便于检验算法的正确性,尤其保证是事务的一致性。

编程任务
基于3TS-Coo框架,测试数据库的一致性
目标对象:数据库爱好者、初学者(会SQL语句)、DBA等

内容:
此题目是判断数据库事务的执行正确性(一致性),核心任务是测试数据库的一致性,包括但不限于如下数据库(可以是3TS测过之外的任何数据库):
1 YugabyteDB
2 Cassandra
3 FaunaDB
4 Redis-Raft
5 MariaDB
6 Dgraph
基本要求:数据库事务处理知识,Linux系统机器(4核8G以上机器),C++,Python, SQL
预备知识:
1.数据库事务处理数据一致性评估验证模型:https://github.com/Tencent/3TS/tree/coo-consistency-check/
2.以往测试结果:https://coo3ts.github.io/result/
预期结果:
1.初级:基于测试框架部署代码,部署单机数据库(e.g., PostgreSQL, MySQL)的一致性测试与验证
2.中级:熟悉测试框架、输出阅读文档、输出功能文档、完善开源项目文档
3.高级:使用测试框架测试更多数据库的一致性
收获:
1.熟悉数据库事务处理技术与一致性的概念
2.掌握各种体系下一致性的概念及其异同
推荐文章:
一致性模型与检测技术:
Adya model:Atul Adya and Barbara H. Liskov. 1999. Weak Consistency: A Generalized Theory and Optimistic Implementations for Distributed Transactions. (1999)
Elle:Peter Alvaro and Kyle Kingsbury. 2020. Elle: Inferring Isolation Anomalies from Experimental Observations. Proc. VLDB Endow. 14, 3 (2020), 268–280. https://doi.org/10.5555/3430915.3442427

Kaile Huang, Si Liu, Zhenge Chen, Hengfeng Wei, David Basin, Haixiang Li, and Anqun Pan. 2023. Efficient Black-Box Checking of Snapshot Isolation in Databases. Proc. VLDB Endow. 16, 6 (February 2023), 1264–1276. https://doi.org/10.14778/3583140.3583145
https://www.vldb.org/pvldb/vol16/p1264-wei.pdf
Cheng Tan, Changgeng Zhao, Shuai Mu, and Michael Walfish. 2020. COBRA: making transactional key-value stores verifiably serializable. In Proceedings of the 14th USENIX Conference on Operating Systems Design and Implementation (OSDI'20). USENIX Association, USA, Article 4, 63–80.

联系导师
陈育兴:[email protected]
QQ交流群:429468482

犀牛鸟开源人才培养计划-学生指南

一、目标人群

“腾讯犀牛鸟开源人才培养计划”面向在校高校学生

二、学生如何报名

关注活动官网了解具体信息,本次计划分为3个培养模式:

  1. 开源基础培训:注册开源人才社区&完成 线上报名,可进行线上学习(零基础可参与)
  2. 开源进阶研学:注册开源人才社区&完成 线上报名 &完成线上学习&通过线上测试(2023年8月发布)的同学,可获得腾讯颁发的“开源人才”电子证书。
  3. 开源项目实战:注册开源人才社区&完成线上报名&提交 项目申请书 &通过实战初选的同学,1个学生最多提交3份项目申请书;通过结业&导师提名的学生会收到税后6000~12000(税前)不等的丰厚奖学金礼包或“开源人才优秀学生”证书或含金量极高的“腾讯开源贡献者证书”

三、开源项目实战Q&A

选择学生的标准

项目会根据学生提交的项目申请书(包括项目计划、技术方案、项目经历等),综合考虑入选学生。

建议学生在申请之前要积极主动学习项目相关资料以及代码托管工具使用,无论你是什么学历来自哪个学校哪个专业,项目申请书和实践能力是选择的重点。

从哪里获得参与本次开源项目实战的项目列表

关注活动官网(https://opensource.tencent.com/summer-of-code )-项目列表页面

开源项目实战中,一个学生可以申请几个项目

一个学生最多可以同时申请三个项目,如果入选后最终只能选择一个项目和导师一起启动编码之旅。如果有任何问题,组委会会与项目以及您一起协调。

学生是否可以申请不在本次活动项目列表的项目

本次活动不可以,感谢您的关注!

学生如何与导师沟通

每个项目描述中都会有指定的导师名称和联系方式,建议学生习惯用社区的方式(如电子邮件)与导师沟通。

请学生注意与导师沟通的基本礼仪,导师提供本次项目任务的指导和建议,项目本身的申请、设计和开发需要您独立完成。

学生什么时候开始启动开源项目实战研发

组委会正式公布开源项目实战的初选学生后。

学生是否可提前研发

在组委会公布中选学生名单之前,该项目的学生人选都处于未确定的状态,任何一个学生的申请都可能因为有其他学生提出更好的项目方案或其他原因而落选。组委会不建议学生提前开始研发工作,应该将精力放在提交项目申请书、完善项目方案上。无论是本次活动的项目,还是未来学生在工作中参与的项目,前期的项目规划和方案设计都是非常重要的。

四、对参加“腾讯犀牛鸟开源人才培养计划”学生的建议

1、计划中三个培养环节及重要学习资源,将在乐享犀牛鸟校园“腾讯犀牛鸟开源人才社区”承载,包括各开源项目精选学习资源、github使用培训、学界及业界大咖分享、项目指南手册、开源福利活动等内容,请注册登录社区后获得更多资讯。
2、参与活动前,请详细阅读活动官网、学生指南等相关信息,组委会尽可能把考虑到的内容写到此帮助文档中。如有未尽事宜,请Email: [email protected]
3、注册登录“腾讯犀牛鸟开源人才社区”后,请仔细查看和学习项目文档,提前熟悉开源社区的参与方式、沟通渠道、设计文档、社区开源仓库代码等内容。
4、如果您希望参与开源进阶研学和开源项目实战的培养环节,请认真正确填写报名信息,包括基本信息、项目申请书等内容,确保我们一定能联系到您。
5、每个参与培养计划的学生,请根据不同培养环节的要求进行学习;报名参加开源项目实战环节的学生确认每周至少20+小时能够投入在项目中,有付出才有更多的收获。
6、希望报名参与开源项目实战培养环节的学生,请梳理自己擅长领域和技术栈等,这些都有利于选择合适的项目,提高选中概率。
7、组委会会严格按照截止时间来收集报名申请,仅限活动官网渠道接受的报名,延期提交的申请不会被接受。报名参与开源项目实战环节,早一点提交项目申请书能让项目导师早一点了解同学们的情况,希望有意向参与项目实战的同学们尽可能早一点提交项目申请书。

五、学生在活动中可以得到哪些支持

1、“腾讯犀牛鸟开源人才社区”提供丰富多元的学习内容,学生可线上了解腾讯前沿技术、拓展科研视野、修炼职场智慧、对话技术、专家目导师专业指导。
2、官方QQ群(群号:859260607,加群请务必备注学校+专业),群里会及时发布活动相关信息和资讯。
3、进入开源项目实战培养环节的学生将得到开源导师1V1指导。

六、学生在活动中可以得到哪些激励

1、开源课程学习环节:

完成线上学习&通过线上测试,获得腾讯颁发的“开源人才”结课证书(电子版)

2、开源项目实战环节:

通过初选学生都会收到组委会寄出的一份腾讯周边和“开源项目实战参与证书”(电子版)

通过复选学生都会收到组委会寄出的一份腾讯开源礼包

通过结业&导师提名的学生会收到“开源项目实战结业证书”或6000~12000(税前)不等的丰厚奖学金礼包或“开源人才优秀学生”证书或含金量极高的“腾讯开源贡献者证书”

七、开源项目实战考核流程

上半程考核流程

学生在“腾讯犀牛鸟开源人才社区”及时提交每周结果输出
导师从以下几个方面给出评审意见,并将评审意见反馈到组委会。
项目是否按计划进行
项目代码和产出是否按计划提交和输出,评估项目输出的质量
组委会根据导师评审意见和导师确认是否通过上半程考核,通过的学生有机会获得亲临腾讯暑期研学机会
上半程考核通过的学生继续跟随导师开启项目实战下半程
上半程考核未通过的学生停止继续参与项目

下半程考核流程

学生在“腾讯犀牛鸟开源人才社区” 及时提交每周结果输出
导师从以下几个方面给出评审意见,并将评审意见反馈到组委会:
评估项目计划是否符合项目最初设立的目标和要求。
评估项目输出完成度和输出质量。
评估项目相关文档的完善程度。
导师认为需要评估的其他方面。
组委会组织专家评审团,针对项目产出和导师评审意见进行综合评估,给出最终结业学生名单。
组委会给结业&提名的学生发放丰厚奖学金以及相关证书。

八、其他Q&A

在暑期即将毕业的学生是否可以参与

只要在报名时学生证处在有效期内,就可以报名参加。

学生应该使用什么编程语言来进行开源项目实战编码

学生可根据项目的需求来选择编程语言。应该与项目使用的编程语言保持一致。

学生应该使用什么语言与导师沟通

组委会官方提供的信息以及社区提供的项目列表,目前都采用中文

学生已经是社区的一员,可以申请社区的项目吗

可以申请

2022腾讯犀牛鸟开源人才培养计划-Cherry Markdown

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、**信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、**人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
Cherry Markdown Editor 是腾讯对外开源的 Javascript Markdown 编辑器,具有开箱即用、轻量简洁、易于扩展等特点,可以运行在浏览器或服务端(NodeJs)。

项目导师
崔家维,Cherry Markdown PMC
魏林贤,Cherry Markdown PMC
胡杰雄,Cherry Markdown PMC

导师寄语,
欢迎感兴趣的同学积极参与!项目地址:https://github.com/Tencent/cherry-markdown

编程任务
初阶任务:完善CommonMark语法解析
研究CommonMark规范,完善Cherry Markdown行内语法hook(sentence hook)以支持更多CommonMark语法特性,并增加通过10个单测用例。

中阶任务:表格所见即所得功能
熟悉Cherry Markdown编辑器基本架构,在表格所见即所得功能基础上支持拖拽行列、复制单元格的功能。

高阶任务:hook执行支持异步调用
当前Cherry Markdown的解析引擎采用同步调用各语法hook对markdown原文进行解析渲染,设计并支持异步hook调用机制以支持更多解析场景。

联系导师
崔家维:[email protected]
魏林贤:[email protected]
胡杰雄:[email protected]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.