OpenSourceTalent icon indicating copy to clipboard operation
OpenSourceTalent copied to clipboard

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

Open tencent-adm opened this issue 2 years ago • 1 comments

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

欢迎广大高校学子及开发者加入2025腾讯犀牛鸟开源人才培养计划!犀牛鸟开源人才培养计划同教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、中国信息通信研究院一起作为联合指导单位,腾讯开源和腾讯高校合作联合主办,开发者通过参与腾讯全链路技术栈15个明星项目的学、练、赛研学,有机会获得腾讯颁发的荣誉证书、现金奖励以及腾讯特色礼包,获得“优秀学生”即可优先获得腾讯面试机会。

期待同学们在本次研学旅程中,和腾讯一起探索未知、学习技术,让开源伴你成长,收获满满一夏!

更多项目信息请看:腾讯开源活动官网腾讯开源研学基地

项目简介

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

项目导师

倪辉,ncnn作者

导师寄语

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

培养概览

1️⃣ 参与“腾讯开源基础课程” 完成考试可获得《腾讯开源研学结课证书》

2️⃣ 参与“腾讯开源issue实战” 完成任意issue即可获得专属《腾讯开源实战证书》+ 腾讯周边精美礼包一套。其中issue难度对应礼包大小

3️⃣ 参与“腾讯开源课题实战” 任务奖金从6K、8K到12K不等、腾讯犀牛鸟研学专属《优秀学生证书》或《优秀开发者证书》、全球限量《腾讯开源贡献者证书》 *获得《优秀学生证书》,即可优先获得腾讯面试机会

4️⃣ 彩蛋玩法:分享有礼、帮带有礼

【玩法1-分享有礼】 在任意社交平台(知乎/b站/掘金/CSDN等)分享你在【本届犀牛鸟研学的心得+犀牛鸟官网】,在9月10日前把分享记录填写在【分享有礼登记表】表中,分享量Top 10即可获得鹅厂周边礼包!🎁

【玩法2-帮带有礼】: 你可以在项目社群、项目repo页面、项目研学基地【我要提问】区域三个位置回答其他同学提出的问题,在9月10日前,我们会综合导师意见,对积极且正确帮助他人解答问题的幸运同学送出鹅厂周边礼包!🎁

如何贡献

参与“腾讯开源issue实战”

进入“研学基地”,参与“腾讯开源issue实战”,选择你感兴趣项目的 Issue 任务,认领和完成它。7月10日开放 issue ,学生及开发者可无门槛参与和认领

1、如果你愿意解决issue,请在腾讯开源研学基地的【3️⃣issue认领任务大厅】领取issue任务 2、Fork 到个人的仓库下 3、在个人仓库解决完对应的任务后,提交 PR 至 Issue 所在仓库的 master 分支 4、PR提交后,项目导师将进行 code review, PR 被合并后即视为任务完成 5、如有任何疑问可以在评论区留言或者邮件至联络人

参与“腾讯开源课题实战”

时间安排:6月20日至7月28日为活动报名期,8月1日公布入围名单,8月2日至9月10日为课题实战期,通过筛选的学生即可参与此模块。

初阶任务:

  1. pnnx input npy files 目标:pnnx添加 input=a.npy,b.npy 参数,支持从npy文件获取输入tensor的shape和内容,用于pnnx后续的推理优化 难度:普通 前置条件:熟悉cpp,跨平台处理环境变量

https://zhuanlan.zhihu.com/p/444022507 《PNNX编译流程(新)》

https://zhuanlan.zhihu.com/p/427512763 《5分钟学会!用 PNNX 转换 TorchScript 模型到 ncnn 模型》

  1. ncnn in micropython 目标:为micropython平台,实现ncnn c api的绑定和调用例子 难度:普通 前置条件:熟悉c/cpp

https://github.com/Tencent/ncnn/blob/master/src/c_api.h ncnn C API

https://docs.micropython.org/en/latest/develop/cmodules.html MicroPython external C modules


中阶任务:

  1. spir-v fastmath mode 目标:ncnn编译glsl到spir-v后,当GPU支持VK float control2扩展时,在spir-v中添加fastmath模式的capability 难度:普通~难 前置条件:熟悉cpp,了解spir-v二进制

https://github.khronos.org/SPIRV-Registry/extensions/KHR/SPV_KHR_float_controls2.html

https://github.com/KhronosGroup/SPIRV-Guide

参考 https://github.com/Tencent/ncnn/blob/master/src/gpu.cpp#L3510 inject_local_size_xyz() 类似实现 inject fastmath capability

  1. persistent vulkan pipeline cache 目标:为pipeline cache增加新的保存和加载api,实现文件级缓存vulkan pipeline数据,必须严格检查shader,平台信息,GPU型号,驱动版本和pipeline二进制的对应一致性 难度:普通~难 前置条件:熟悉cpp,了解vulkan-api

https://docs.vulkan.org/guide/latest/pipeline_cache.html

https://github.com/Tencent/ncnn/blob/master/src/gpu.h gpu信息查询接口

https://github.com/Tencent/ncnn/blob/master/src/pipelinecache.h pipelinecache实现 load save


高阶任务:

apple amx optimization 目标:结合ruapu检测apple amx指令集,实现apple amx在conv/gemm的优化,并实现动态派发,ci测试结果正确并有性能提升 难度:难 前置条件:熟悉cpp,指令集优化

https://github.com/corsix/amx

https://zhen8838.github.io/2024/04/23/mac-amx/

https://github.com/Tencent/ncnn/pull/5649 去年未完成的实现代码

联系导师

倪辉:[email protected]

💁🏻‍♀️ 如有项目任何疑问,欢迎加入腾讯开源犀牛鸟官方微信群,期待你来!

Image

💁🏻‍♀️欢迎加入ncnn项目官方交流群,导师在线为你答疑解惑!

Image

tencent-adm avatar Jun 13 '23 06:06 tencent-adm

issue

suzhenheng666 avatar Jul 10 '25 06:07 suzhenheng666