华南农业大学编译原理实验_首届PLCT实验室开放日成功举办

首届PLCT实验室开放日成功举办

2019年12月18日,PLCT实验室首届开放日在中科院软件所五号楼中会议室举行。开放日的活动分为上午场和下午场,共有11个主题分享。上午场的主题分享有:《PLCT与方舟编译器社区建设》、《TenonStudio 2019年研发概述》、《Quick!未来之路》、《基于QEMU的模拟器扩展与实践》和《长洲岛2020:PLCT在培训和慕课领域的路线图》。下午场的主题分享基本都是与LLVM相关,是一个LLVM专场,主要有:《Tiger编译器后端实现》、《使用LLVM测试框架对ollvm进行性能评估》、《通过手写LLVM IR生成过程入门LLVM》、《如何从零开始写一个LLVM Pass》、《LLVM TableGen 实例讲解》和《LLVM中的RISC-V向量扩展支持》。

活动日接受现场报名的同时,也在Bilibili进行了在线直播。活动日当天线上、线下参与人数峰值达到600多人,累计参与人数达到1000余人。现场的茶歇和social环节,气氛也十分热烈,大家就相关议题展开了热烈的讨论。

现场的主题分享与讨论详情如下:

《PLCT与方舟编译器社区建设》 报告人:史宁宁 项目主管

方舟编译器开源以来,PLCT在其社区建设中发挥了重要作用。此次分享在介绍方舟编译器开源代码和社区建设的基础之上,介绍PLCT在方舟编译器社区建设之中所做的各项工作。同时,也将对PLCT未来在方舟编译器社区发展之中的工作方向进行了展望。

c649bbe905d6d3b2ad3517f453342d5b.png
《PLCT与方舟编译器社区建设》 报告人:史宁宁 项目主管

《TenonStudio 2019年研发概述》 报告人:许中兴 博士

TENON Project 是软件所与中科重德主导开发的工业机器人编程系统。TenonStudio 是TENON系统中的离线模拟开发环境。本次报告中,许中兴博士介绍了 TenonStudio 和控制器的架构、组成、各组件的开发状态、遇到的bugs等,涉及的领域等方方面面的情况。如果对这方面感兴趣的朋友,可以联系许博士:xuzhongxing@iscas.ac.cn。

e5c81c1608c89fde3e9238b290de4e44.png
《TenonStudio 2019年研发概述》 报告人:许中兴 博士

《Quick!未来之路》 报告人:赵伟峰 工程师

赵伟峰工程师自2019年下半年加入 TenonStudio 项目组。在本次报告中,赵伟峰介绍了加入项目以来对项目的一些思考、向 TenonStudio 中引入 QtQuick 的历程、带来的好处以及付出的代价。

d394d63b31767838675b00f9347d2e00.png
《Quick!未来之路》 报告人:赵伟峰 工程师

《基于QEMU的模拟器扩展与实践》 报告人:王俊强 工程师

王俊强工程师在2019年由于工作需要开始研究QEMU的内部实现原理。本次报告中,王俊强工程师将介绍QEMU的基本框架、实现原理,以及在项目中对QEMU进行的扩展。与此同时,他也在寻找国内做QEMU的志同道合的小伙伴,希望可以形成一个小的学习团体,一起交流进步。

abc6df3a666eaaebebe8f6e205218bfa.png
《基于QEMU的模拟器扩展与实践》 报告人:王俊强 工程师

《长洲岛2020:PLCT在培训和慕课领域的路线图》报告人:吴伟 项目总监

近期,PLCT实验室联合HelloGCC、HelloLLVM社区进行了编译技术教学的开放性尝试。本次报告阐述了我们近期的教学计划安排,以及在2020年的年度教学规划和目标。

0591b52faa650caba993eee5d3599f4c.png
《长洲岛2020:PLCT在培训和慕课领域的路线图》报告人:吴伟 项目总监

《Tiger编译器后端实现》 报告人:韩柳彤 保研实习生

Tiger 语言是编译原理教材《Modern Compiler Implementation in C》中定义的小规模教学用语言,我们为其实现了一个以RISC-V(RV32I)为目标指令集的编译器后端部分,为编译原理教学平台提供支持。韩柳彤详细的介绍了上述工作。

46a1b8a97a8072869cdd737ba85b81a7.png
《Tiger编译器后端实现》 报告人:韩柳彤 保研实习生

《使用LLVM测试框架对ollvm进行性能评估》 报告人:韩柳彤 保研实习生

Obfuscator-LLVM是一个开源的带有混淆功能的编译器。韩柳彤等人使用SPEC2006作为测试集,计划从代码尺寸、运行效率和代码相似性三个维度对OLLVM进行评估测试,为后续基于OLLVM的定制开发提供支持。

d3c28ff9797cad5f65b6445c5d24fc15.png
《使用LLVM测试框架对ollvm进行性能评估》 报告人:韩柳彤 保研实习生

《通过手写LLVM IR生成过程入门LLVM》 报告人:李威威 见习主管

LLVM IR 是LLVM编译框架的核心组成部分,是编译器前端和后端衔接的枢纽。本次报告对IR程序的构成以及IR相关核心类进行介绍,并通过实例讲解如何生成LLVM IR。

b83b119e61af7d692d12b1f56c0fa063.png
《通过手写LLVM IR生成过程入门LLVM》 报告人:李威威 见习主管

《如何从零开始写一个LLVM Pass》 报告人:廖春玉 工程师

LLVM Pass框架是LLVM系统的重要组成部分。LLVM的优化和转换工作是由很多个Pass来一起完成的,类似流水线操作一样,每个Pass完成特定的工作。本报告对如何实现一个LLVM Pass进行了介绍。

af49951c8e1cc23275f013bc0381d9ab.png
《如何从零开始写一个LLVM Pass》 报告人:廖春玉 工程师

《LLVM TableGen 实例讲解》 报告人:邢明杰 高级工程师

TableGen是一种DSL语言,用来处理领域特定的信息记录。LLVM使用TableGen来描述目标体系结构信息,学习TableGen有助于理解LLVM后端代码生成机制,为实现新的指令集架构支持打下基础。该报告通过实例对TableGen进行详细讲解。

ab80f5df06b00d780581584aa0a62d04.png
《LLVM TableGen 实例讲解》 报告人:邢明杰 高级工程师

《LLVM中的RISC-V向量扩展支持》 张尹 PLCT研究生

LLVM的RISC-V后端目前还没有对向量扩展的支持,而目前市场和学术界都对LLVM和RISC-V的向量扩展有一定的需求,所以我们致力于实现LLVM中的RISC-V向量扩展的支持。目前我们已经完成了RISC-V向量扩展指令的大部分汇编实现,后续会进一步对LLVM实现完整的RISC-V向量扩展支持。本次报告主要阐述RISC-V向量扩展的汇编代码实现与后续向量扩展支持所需的相关工作。

ffb87d270c8ca3ceebbd44ec1215ae34.png
《LLVM中的RISC-V向量扩展支持》 张尹 PLCT研究生

现场情况

5d29d3bdeb77bdab94f674c35656873b.png
现场情况

——后记——

现场主题分享的PPT已经上传到github,具体地址为:

https://github.com/isrc-cas/PLCT-OpenDay-2019​github.com

现场主题视频近一两日会上传到Bilibili,具体地址为:

哔哩哔哩 ( ゜- ゜)つロ 乾杯~ Bilibili​space.bilibili.com
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值