第12届开源开发工具大会(OSDT Conf,原 HelloGCC Workshop)将于12月5-6日(周六周日)线上举办。本次大会将与PLCT实验室的年度开放日(PLCT OpenDay 2020)协调举办。 开源开发工具大会是由OSDT社区(原名HelloGCC社区)组织的一年一度的开发者交流大会,我们在这里分享自己在开源软件方面的开发工作,研究成果,经验学习。话题主要面向开源开发工具,包括 GCC、Binutils、GDB、GLibc、Clang/LLVM、QEMU、Gem5、Chisel/FIRRTL、MLIR、TVM、CIRCT等。 本次大会将与PLCT实验室的年度开放日(PLCT OpenDay 2020)协调举办。PLCT Lab 全称是「程序语言与编译技术实验室」,隶属于中国科学院软件所(ISCAS)智能软件研究中心(ISRC)。每年12月份会举办一次开放日(OpenDay)活动,向外界展示和介绍这一年来PLCT做过的好玩的技术尝试,以及我们认为在某些角落改变世界的成果。此次开放日是PLCT第2次举办,欢迎来现场一起享受技术交流的快乐。(由于疫情今年还是不要来了,全线上。)
- 感谢清华大学出版社,赞助OSDT大会10本《给予FPGA与RISC-V的嵌入式系统设计》。
- 感谢电子工业出版社,赞助OSDT大会5本《程序员修炼之道(20周年纪念版)》和5本《实战Java虚拟机(第二版)》。
- 感谢澎峰科技(PerfXLab)公司赞助OSDT大会2套 Perf-V FPGA 35T 开发板、1套 Perf-GAP8 开发板。
- 感谢中国科学院软件研究所智能软件研究中心提供会议场地支持和Zoom会议室支持。
NOTE:书籍跟开发板原先打算现场赠送给提问者以及抽奖赠送。但是由于疫情原因,今年会议改成线上活动之后,如何有(免)效(费)分发还在讨论中。欢迎有过类似经验的小伙伴提供宝贵建议及分享下经验。
- 2020年12月4日(周五) 09:30 - 17:30 PLCT OpenDay 2020
- 2020年12月5日(周六) 10:00 - 17:30 OSDT Conf 2020
- 2020年12月6日(周日) 10:00 - 17:30 OSDT Conf 2020
- 直播观看: https://live.bilibili.com/10339607
- 腾讯会议: 注册报名后获取腾讯会议接入方式
- Zoom会议: 12月6日上午的会议通过Zoom会议举行,注册报名后获取Zoom会议接入方式
- 注册链接:
- 09:00-09:30 设备准备等
- 90:30-10:00 吴伟:PLCT Lab Roadmap 2021 video
- 10:00-10:30 邱吉:V8 for RISC-V:从何处来、往何处去 video
- 10:30-11:00 邢明杰:RISC-V向量扩展指令架构及编译器支持 video
- 11:00-11:30 史宁宁:方舟编译器与 Android Runtime video
- 11:30-12:00 赵伟峰:九层之台,起于累土 —— TenonStudio2020功能及特性介绍 video
- 12:00-14:00 Break
- 14:00-14:30 许中兴:TenonStudio涉及的技术领域 video
- 14:30-15:00 汪达:机器人描述语言SDFormat介绍 video
- 15:00-15:30 张洪滨:使用MLIR完成一个端到端的编译流程 video
- 15:30-16:00 张尹:基于RISC-V向量扩展的OpenCV优化 video
- 16:00-16:30 廖春玉:RVV-Intrinsic 在 Clang 中的实现 video
- 16:30-17:00 陈小欧:LLVM测试框架介绍 video
- 17:00-17:30 (预留报告位)
- 09:30-10:00 设备准备等
- 10:00-10:30 吴章金:人生苦短,我用 Linux Lab 学内核与嵌入式 video
- 10:30-11:00 张先轶:基于RISC-V向量指令集优化基础计算软件生态 video
- 11:00-11:30 杨文章:面向IoT领域的程序设计语言——DeepLang video
- 11:30-12:00 汪辰:制作一个 RISC-V 平台上的最小安卓系统 video
- 12:00-14:00 break
- 14:00-14:30 安龙飞:C++20协程简介和应用 video
- 14:30-15:00 陈嘉炜:RISC-V Binutils 简介 video
- 15:00-15:30 陆旭凡:RISC-V Vector object in stack and implementation on LLVM video
- 15:30-16:00 陆亚涵:V8中的指针压缩及其实现源码分析 video
- 16:00-16:30 陶立强:V8寄存器分配源码分析——以添加RISCV-C扩展为背景 video
- 16:30-17:00 千里冰封:后现代类型系统, video slides
- 17:00-17:30 闪电演讲(提前或现场报名)
- 09:30-10:00 设备准备等
- 10:00-11:00 MaskRay:How to handle long branches video
- 11:00-11:30 叶锦云:华为毕昇编译优化技术分享 video
- 11:30-12:00 闪电演讲环节
- 12:00-14:00 break
- 14:00-14:30 王萌:RT-Thread 的 USB-Host 在树莓派上的实现进展 video
- 14:30-15:00 张定立 Java on RISCV简介与毕昇JDK HiFive Unleashed测试 video
- 15:00-15:30 王俊强:QEMU 中 RISC-V SoC 的新增与实现 -- 以 NucLei SoC 为例 video
- 15:30-16:00 李威威:Spike 扩展方式简介 video
- 16:30-17:00 sequencer:Jabber before your trip to RocketChip video
- 17:00-17:30 闪电演讲环节
吴伟:PLCT Lab Roadmap 2021
回顾总结 PLCT Lab 在 2020 年的工作,规划 2021 年的工作。
吴伟是 PLCT Lab 的项目总监。
邱吉:V8 for RISC-V:从何处来、往何处去
介绍 V8 for RISC-V 的历史、现状、未来计划。
邱吉博士是PLCT实验室虚拟机分支 V8 for RISC-V 项目负责人。
邢明杰:RISC-V向量扩展指令架构及编译器支持
介绍RISC-V向量扩展指令架构,以及在编译器如何支持。
邢明杰老师是中科院软件所高级工程师,研究方向为编译技术。
史宁宁:方舟编译器与 Android Runtime
方舟编译器开源一年多,商业宣传的热度已经过去,沉积下来的是真正关注编译器发展的业内同行。方舟编译器发展到了什么程度、面临哪些问题、可能会在哪些方向上发展,以及方舟编译器与ART的关系等,这些都是业内同行所关注的内容,本次报告将试图对这些内容进行一个分享,并对PLCT在方舟编译器社区所做的工作进行一个总结。
史宁宁,中科院软件所PLCT实验室项目主管。OSDT、方舟编译器等开源社区活跃贡献者,编写的“LLVM每日谈”、“方舟编译器学习笔记”等系列博客影响较大。2020年9月出版了《华为方舟编译器之美——基于开源代码的架构分析与实现》,是方舟编译器社区第一本图书。
赵伟峰:九层之台,起于累土 —— TenonStudio2020功能及特性介绍
TenonStudio2020功能及特性介绍。
赵伟峰是中国科学院软件研究所智能软件研究中心TENON项目组成员。
许中兴:TenonStudio涉及的技术领域
对TenonStudio涉及的一些技术领域进行初步的介绍,包括技术概况,参考文献,开源系统,个人开发的体会等
许中兴是中国科学院软件研究所智能软件研究中心TENON项目组组长。
汪达:机器人描述语言SDFormat介绍
演讲内容简介:略。
汪达是中国科学院软件研究所智能软件研究中心TENON项目组成员。
张洪滨:使用MLIR完成一个端到端的编译流程
以一个简单的例子介绍使用 MLIR 完成从计算图到 X86/RISC-V 平台上的编译通路 报告人简介: 中科院软件所智能软件研究中心PLCT实验室学生 MLIR社区贡献者 (MLIR Python Bindings) 知乎/B站 - 法斯特豪斯
张尹:基于RISC-V向量扩展的OpenCV优化
OpenCV提供了一个其内部通用的向量系统,叫做Wide Universal Intrinsics。这个系统为前端程序员提供了统一的接口,而在编译时,这些接口会被向量系统转换成当前平台所支持的SIMD/向量体系结构的指令。该项目为Wide Uniersal Intrinsics实现了基于RISC-V指令集及其"V"(向量)扩展(RVV)的支持,从而使OpenCV在RISC-V体系结构上也能获得向量加速。
张尹同学是PLCT实验室在读硕士生。
廖春玉:RVV-Intrinsic 在 Clang 中的实现
廖春玉是PLCT实验室编译器分支 RVV-LLVM 项目编译器工程师。
陈小欧:LLVM测试框架介绍
陈小欧是PLCT实验室测试开发工程师。
吴章金:人生苦短,我用 Linux Lab 学内核与嵌入式
项目作者亲自揭秘 2020 国内人气开源项目 Linux Lab,陪您换一种方式学习和开发 Linux 内核与嵌入式 Linux 系统,更高效更经济。
吴章金是 Linux Lab、MIPS Ftrace 等开源项目作者,Linux 官方社区贡献者,国内知名 Linux 技术社区泰晓科技创建者。
张先轶:基于RISC-V向量指令集优化基础计算软件生态
简介:随着RISC-V Vector向量指令集的发展,需要基础计算软件库和框架进行针对性的优化才能发挥向量指令集的高性能优势。本报告将介绍我们针对开源矩阵计算库OpenBLAS和计算机视觉库OpenCV在RISC-V Vector指令集优化的进展。
张先轶博士本科和硕士毕业于北京理工大学,博士毕业于中国科学院大学,之后分别在UT Austin和MIT进行博士后研究工作。国际知名开源矩阵计算项目OpenBLAS发起人和主要维护者。2016年,创办PerfXLab澎峰科技,提供智能边缘计算解决方案和支持国产芯片的软件生态和计算平台。
杨文章:面向IoT领域的程序设计语言——DeepLang
华为编程语言实验室指导了一个开源的编程语言叫deeplang。Deeplang所有设计都是开源的,包括 spec,compiler,vm等。
Deeplang开源社区的开发团队由浙大、中科大、帝国理工的学生组成。
Deeplang的官网:www.deeplang.org
Deeplang的官仓:https://github.com/deeplang-org/deeplang
杨文章同学是deeplang开发团队成员、中科大学生。
汪辰:制作一个 RISC-V 平台上的最小安卓系统
如何在 RISC-V 平台为安卓制作一个最小系统,相关背景和技术介绍。
汪辰是PLCT实验室 AOSP for RISC-V 项目组主管。
安龙飞:C++20协程简介和应用
本次报告主要介绍协程基本概念、C++20协程的使用方式、C++20协程库现状,以及C++20协程库在阿里巴巴的应用。
安龙飞是阿里巴巴工程师。
陈嘉炜:RISC-V Binutils 简介
RISCV-Binutils工具框架,as,ld等工具的使用介绍,对riscv的支持(其他待定)
陈嘉炜是PLCT实验室编译器分支GNU工具链工程师。
陆旭凡:RISC-V Vector object in stack and implementation on LLVM
陆旭凡是PLCT实验室编译器分支 RVV-LLVM 项目组LV4实习生。
陆亚涵:V8中的指针压缩及其实现源码分析
陆亚涵是PLCT实验室虚拟机分支V8项目组工程师。
陶立强:V8寄存器分配源码分析——以添加RISCV-C扩展为背景
陶立强是PLCT实验室虚拟机分支V8项目组LV3实习生。
千里冰封:后现代类型系统
过于复杂的类型系统可以让它的表达力强大到可以表达数学定理,原理是通过把编译期能进行的推理放大到一个完整的 runtime language 上,这样类型里面可以放任何可以跑的程序。 而这种类型系统可以和同伦、拓扑的概念结合起来——如果把一个类型视为一个拓扑空间,它的实例就是里面的离散的点,实例之间的相等关系就是把离散的点连接起来的线段,线段与线段之间也可以连起来构成『同伦』。 所谓同伦类型论就是把拓扑里面可能对连续的结构进行的变换加进类型系统里,如一条线段等于一个点、线段与线段可以连起来、S1 的同伦群同构于整数加法群 (传统类型论无法讨论这些事实) 等。 这种思考方式给类型系统的研究带来的新的启发:能不能在类型系统里模拟拓扑世界里的那些操作呢?于是这就又诞生了新的研究,它们又重新站在类型系统,或者说软件工程的角度去实现出基本的拓扑操作。
同伦类型论除了讨论拓扑之外,给传统类型论带来的好处有:允许更灵活的外延性操作 (包括对于状态机之间的相等性、函数与函数之间的相等性的具体定义)、给一些原本无法确定类型的元编程函数以类型 (univalence 定理)、允许重载等号关系 (无意中解决了 Coq 里面的 setoid hell 问题,能表达 quotient 和更复杂的拓扑空间)。 可以看出,很多和拓扑无关的传统类型系统里面的问题被它解决了,并且提供的解决方案也算优雅。
本次分享会简单梳理从简单的类型系统到依赖类型系统到同伦类型系统的发展过程。
闪电演讲环节
提前或现场报名
MaskRay:演讲题目待定
TBD
叶锦云:华为与GCC/LLVM(是否出席待定)
华为在GCC和LLVM上持续投入,向社区贡献了大量的代码,近期还发布了华为GCC和基于LLVM的编译器以助力华为通用计算平台的发展。我希望通过这个演讲结合一些具体例子概括华为在开源编译器上的工作以及规划。
叶锦云,现在华为编译器部门任技术专家。
马骏: Clang/LLVM 在阿里的开发与落地(闪电)
TBD
王萌:RT-Thread 的 USB-Host 在树莓派上的实现进展
王萌是PLCT实验室模拟器分支LV4实习生。
张定立:Java on RISCV简介与毕昇JDK HiFive Unleashed测试
张定立 1.介绍目前Java世界对于RISC-V的支持; 2.简介毕昇JDK for RV64并介绍其在HiFive Unleashed上的调试方法; 3.分析毕昇JDK for RV64开源后从qemu到HiFive Unleashed的crash问题以及对应的第一个patch的代码分析 4.分享SPECjvm2008与DaCapo-9.12-bach-MR1等benchmark的测试结果
张定立是PLCT实验室虚拟机分支 OpenJDK for RISC-V 项目组成员。
王俊强:QEMU 中 RISC-V SoC 的新增与实现 -- 以 NucLei SoC 为例
如何在QMEU现有的RISC-V架构下新增Nuclei Soc,主要介绍(指令),csr,eclic, timer,uart等新增内容的原理与实现,以及如何组合成gd32vf103 和 hummingbird board来运行裸机程序和Linux系统
王俊强是PLCT实验室模拟器分支的QEMU项目主管。
李威威:Spike 扩展方式简介
结合我们已经完成以及当前正在进行的一些工作,介绍一下针对spike(指令(级),设备以及内存访问方式等)的一些扩展方式
李威威是PLCT实验室模拟器分支的Spike项目主管。
郭任:TBD(是否出席待定)
TBD
sequencer:TBD(演讲题目待定)
TBD
闪电演讲环节
提前或现场报名
- OSDT 2019: https://github.com/hellogcc/OSDT2019
- OSDT 2018: https://github.com/hellogcc/OSDT2018
- OSDT 2017: https://github.com/hellogcc/OSDT2017
- OSDT 2016: http://www.hellogcc.org/?p=34295
- OSDT 2015: http://www.hellogcc.org/?p=34190
- OSDT 2014: http://www.hellogcc.org/?p=33910
- HelloGCC 2013: http://www.hellogcc.org/?p=33518
- HelloGCC 2012: http://linux.chinaunix.net/hellogcc2012
- HelloGCC 2011: http://linux.chinaunix.net/hellogcc2011
- HelloGCC 2010: http://linux.chinaunix.net/hellogcc2010
- HelloGCC 2009: https://sites.google.com/site/hellogccworkshop/hui-yi-ri-cheng
微信公众号:hellogcc2007