Weekly Summary 19
Apr 21, 2024 12:30 pm UTC+8
中科大高新区
1 本周的工作
1.1 工作目标
- 虽然AI技术高速发展,但是语音的识别难度还是比较大。不同于文本翻译,口语的停顿、口音、语调和不严格遵循语法使得学习英语听说还是相当值得投入时间学习的。
- 工作目标安排划分,遵循25min番茄工作法、动态任务量和拆分打乱的思路
- 上午:
- 英语单词积累 baseline 20
- 英语听说:每日英语听力、多邻国口语
- 下午:
- 英语单词积累 plus +20
- 华为1h旁听
- 英文阅读 :pom论文阅读
- Victima L1 Cache拓展(1.potman运行 2.Cache机制了解 3. 修改的设计与实现)
- 晚上:
- 英语单词积累 plus +20
- 华为1h旁听
- 间隔
- wonyoung 攻略 (晚上9点决定当晚要看的内容)
- 网站开发
- VENTA X pico apk download
- 人际关系的自我反思overleaf论文
- Waifu2x-Extension-GUI 8K Upscaling bug
- citywalk 攻略,1. 景点看点、高德打分、时间安排 2. 景点间通勤方式和时间 3. 推荐食宿位置、价格、特色
- 出手办
- WARP网络配置
1.2 每日安排
- Mon:
- 和涂布新师弟询问相关事宜
- 华为: 1h 走进华为一半
- highlight color text,in ISC
- Tues:
- 关闭
硬件加速,重新尝试一遍Waifu2x。 - 下午晚上,yfy教授VR非局域网串流方法。
- 关闭
- Wed:
- 关闭
硬件加速,重新尝试一遍Waifu2x。 - 重新安装alyx
- 构建 - 职场交往晋升模型
- 关闭
- Thurs:
- 新版本还是不对。去掉30s切片,重新尝试一遍Waifu2x。
- 上手 victima
- Fri:
- victima debug环境配置
- Sat:
- victima 尝试理解访存
- 熬夜,修改安老师的意见
- Sun:
- 周报
1.3 Key Objectives
一部分OKR(Objectives and Key Results)
| metrics | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday |
|---|---|---|---|---|---|---|---|
| Weigh AftGettingUp | 64.1 | ||||||
| Memorize English Words | |||||||
| Listening exercise | |||||||
| Running | x | x | |||||
| In-door Exercise | |||||||
| Go2Bed (Before 10pm) | 0:00 | 2:30 | 0:50 | ||||
| Release | |||||||
| Fall Sleep (Before 2am -> 0am) | 2:00 | 4:00 | 4:00 | 4:00 | 4:00 | 4:00 | 4:00 |
| remove blackhead weekly | |||||||
| Facial moisturizing |
1.4 实施注意事项
- wonyoung自律:时刻注意体态仪表笑容、天鹅颈、长食多睡常拉伸。5、6点早起去GYM。
托福的学习捡起来,还有日语和韩语的学习。- 自适应间隔计划:跑步和In-door运动间隔,晚上1点前间隔奖励与作品收集。
- 晚上的工作时间,多使用工具GPT-like来工作,进行枯燥工作。
- 室内运动: 建议每半天一次(早起和晚归)。内容仰卧起坐(包括侧卧),平板支撑,俯卧撑,Kegel
- 睡觉时间以平板时间为准。每晚睡眠在7~8小时之间,参考
2 后续可选事务
2.1 Daily:外部指标性任务与Deadline管理
- 240515 论文答辩(准备PPT)
- 240601 决定好去不去日本,需要办理护照和定机酒
- 240610 毕业手续
- 240819 华为东莞报道,青浦宿舍需要提前解决。
2.1.1 日常的自律
- 锻炼: 早中晚的番茄学习法的间隔选择两次
- 语言学习:
2.2 Weekly: 为未来发展铺垫的先行工作
2.2.1 待权衡的决策
- 难得有时间,工作社畜就完全没时间了。不仅请假会扣2000+一天,还会影响年终绩效
- 加深和沛祺的羁绊
- 之前对日本动漫的喜爱也对日本保留有一种独特的向往,虽然现在减轻了许多。
- 开销属实大了,1W~2W。主要家里反对意见大。
- 家里人身体不好,不陪家人,反而和朋友出去玩。感觉孝道上有所欠缺。关于如何感恩/回报:(父母、前辈)多陪陪爸爸,但是爸爸会对什么开心呢?旅游太花钱了肯定不开心。还是不了解爸爸。
- 控制白月光目标的理念,去日本需要和girl friend 一起去最佳。
2.2.2 繁杂事务处理
- warp网络配置解决youtube,VENTA X 解决未来出租屋流量焦虑
- 手办要出掉,解决毕业寄行李压力、家庭争吵压力、出租屋空间压力
2.2.3 实用工具开发
- highlight color text,in ISC
- 支持页面显示有限个(20个)元素,在这些元素底部,显示可选的页面编号,比如" 1, 2, 3, …, 19"。当前页面数字加粗并下划线。
- 支持上下文切换按钮
- News和Event的缩略图应该遵循limited info的原则,应该实现一种情感的导向,忌讳图片里大量文字。
- 筛选功能:比如用于Publication 会议的筛选,或者根据news或者events的类型筛选
- 小功能:ics的主题可以借鉴 ,
- 可折叠sidebar
- 自定义照片的大小: 还是只能用
- admonition的其他常见颜色
- 各级标题的颜色,渐黑?
- 如何让字体变色,加粗默认暗红色?
- deadline倒计时,还会根据距离的时间有不同的颜色。
- Default Subpage
- SubHome, 75%page pic
- News:
- 改成 3-4444。 现在的 1-2-4444太不平衡了?
- Review:
- 单独设置: Weekly Reports & Year-End Recap
- Events
- 专注于各种通知和Deadline
- 开发分页按钮,一页只放20个元素。
- Event支持长期的
pinned event, 每周实际组会allInOne。图钉+红色底圈 - 给模板加上Event的上下文切换的按钮
- Notice
- 比如学期组会安排,卫生清洁安排
- 与地点无关
- 首页的名人头像和名言:Our technology,our machines,is part of our humanity.We created them to extend ourself,and that is what is unique about human beings. - Ray Kurzweil
- 照片墙: Lab Life
- 接下来我会首先考虑实现一个照片墙的功能,来分离event里的活动照片。来划分出一块没那么学术严肃的页面。
- 每个模块:任意大小设置,有名字图片两部分,图片能循环播放列表
- 点击效果,点击照片放大,点击名字进入pic列表(点击放大功能的适用区域应该现在在照片墙和single page页面)
- markdown-grammar-switcher: 不同的SSG的特殊功能对应不同的markdown语法,但是人们写的markdown只有一份。这个仓库的作用就是在static html生成的路径上.
- 打算学习Pandocs的IR和filter看支不支持定制化https://sspai.com/post/77206 https://geekdaxue.co/books/Pandoc-user-guide-2.18
2.3 Weekly: 个人能力提升
- 职业能力
- AI软硬件开发、设计、优化能力
- 视野的拓展
- 乔师兄的论文
- 第一篇高引就是GPU https://scholar.google.com/citations?user=jmjRUi4AAAAJ&hl=en
2.4 Monthly: 从事个人兴趣项目
- 放松
- 弹钢琴
- Game
- 王国之泪
- 异度之刃3
- 最终幻想 重制版 第二部
- 旅游
- 杭州
- 日本
3 任务优先级(估计)
3.1 任务评估与时间分配
| 紧急性(3) | 重要性(3) | 喜好(1) | 工作量(3) | 总分 | 分配 | 要求 | |
|---|---|---|---|---|---|---|---|
| thesis | 3 | 3 | 0 | 3 | 9 | 四天多 | 3 |
| AI | 1 | 2 | 1 | 2 | 6 | 一天多 | 1 |
| ACSA-Web | 1 | 1 | 1 | 2 | 5 | 一天 | 1 |
| Summary | 21 |
4 周报
组织新的一周的周报:
本周开始上手配置和运行Victima模拟器,并尝试理解的访存模拟部分。但是还没弄明白其逻辑。下周将根据代码了解其访存逻辑的具体实现。
Dear Qingcai,
Here is an update on the progress made this week and the focus areas for the coming week.
This Week’s Activities:
Victima Simulator Setup and Exploration: This week, I began setting up and operating the Victima Simulator. My focus has been on trying to understand the multi-level cache simulation part. While I am still familiarizing myself with its logic, I’ve made some progress in handling the basic configurations. Goals for the Upcoming Week:
Deepening Understanding of Cache Logic: Next week, I plan to delve deeper into the multi-level cache logic by closely examining the simulator’s code. This will involve understanding the specific implementations of cache mechanisms within Victima, which is crucial for our PIM ongoing research. Best regards,
Shaojie Tan
5 论文盲审信息
面向AArch64平台的静态性能分析工具研究
计算机系统结构 高性能计算
高性能架构;性能模型;静态分析;微架构探索;AArch64平台;
high-performance architecture; performance modeling and simulation; static analysis; in-core architecture exploration; throughput prediction
5.1 摘要
性能建模是计算系统设计和软件性能优化的基石。然而,现代处理器微架构的复杂性使得构建准确的性能模型变得既困难又耗时。在此背景下,以简洁和快速性著称的静态性能分析工具,为高效性能建模提供了一条可行途径。同时AArch64 架构因其高能效比、广泛的应用场景以及日益增长的市场占有率而备受瞩目。尽管静态性能分析工具在 X86 平台上已有长期的发展,但在 AArch64 平台上的相关研究则相对匮乏。鉴此,本文在 AArch64 平台开发了一套完整的端到端静态代码分析工具开发及评估流程,并通过精确评估现有的性能建模模型,在结合 AArch64 处理器的微架构特性后,对 ARM 鲲鹏平台实施了针对性的优化。这些措施显著提升了静态性能分析工具的准确性,对于确保性能优化和架构设计的准确性具有至关重要的作用。本文的主要贡献包括:
- 针对 AArch64 平台开发静态性能分析工具及评估框架:本文首先提出一种半自动化的指令建模方法,旨在加速指令建模过程,以促进该平台上静态性能分析工具的开发。继而,本文针对基于模拟的 llvm-mca 和基于分析的 OSACA 工具,实现了它们对应的 AArch64 版本。为了精确评估静态性能分析工具的准确度,本文引入了一种构建精确运行时环境的策略,并构建了一个包含广泛且真实的基本块数据集,从而实现了对静态性能分析工具性能的全面和真实性评估。
- 面向 AArch64 平台的静态性能分析工具选择与改进: 基于新评估框架下不同工具的性能表现,本研究开发了一套综合评估方法,涵盖可解释性、开发难度和可扩展性等多维度。借助此方法,本文选定 llvm-mca 作为优化的基础,并针对 AArch64 平台的微架构特征进行了精准优化,从而显著提升了其准确度。
- 静态性能分析工具的实践和创新应用:本研究探索了静态性能分析工具在增强软硬件协同理解方面的价值。一方面,提出了基于识别并分析流水线瓶颈的性能优化策略,旨在利用静态代码分析工具,指导软件在特定硬件环境中实现性能优化,以充分利用硬件的潜能。另一方面,提出了一种基于静态性能分析的处理器设计预评估方法,该方法与传统的模拟技术相比,极大地加快了处理器设计空间探索的过程。通过这些工作,本文不仅填补了 AArch64 平台静态性能分析工具评估框架和开发流程的空白,而且通过深入研究和优化现有工具,大幅提高了工具的准确性和实用性。
5.2 创新点
-
构建了一个完整和可靠的静态性能分析工具的评估框架和开发流程 本研究在AArch64平台上构建了一个全面且可靠的静态性能分析工具评估框架,以应对该平台统一评估基准和数据集缺乏的挑战。通过实现一种父子进程监控机制,确保了代码块内存访问在理想的物理内存条件下进行,保证了测试的一致性和结果的准确性。此外,本研究构建了一个涵盖超28万基本块的广泛数据集,为静态性能分析提供了丰富的测试案例。同时,开发了一种半自动化的指令数据获取方法,高效准确地收集AArch64指令的建模数据,这些创新措施共同确保了评估框架的完整性和可靠性。
-
面向AArch64平台实现一个高精度且具有解释性的通用静态性能分析工具 本研究针对AArch64平台上静态性能分析工具的不足,基于X86平台上成熟工具的调研,选取并改进了llvm-mca工具以适应AArch64架构。考虑到llvm-mca的可拓展性,本文通过定制化改进,增强了其针对AArch64的预测精度和解释性。这些改进深入到llvm-mca核心代码层面,充分考虑了AArch64的特性,有效提升了性能分析的准确度和可解释性。最终,本研究成功实现了一个高精度且具有良好解释性的通用静态性能分析工具,为AArch64平台上的性能分析提供了强有力的支持。
5.3 改进之处/工作展望?
- 微架构空间探索
虽然本研究已对微架构进行了初步探索,但对于微架构的深入理解尚有较大空间。特别是,后端微操作(uops)的调度机制,如何由调度器决定分配至特定的执行端口(例如加法或加载端口),这一细节仍有待深入研究。目前采用的端口分配策略多基于随机选择或优先考虑压力较低的端口,然而,有研究指出在x86平台上,调度器往往在压力最低和次低的端口之间进行选择。AArch64平台的端口调度机制仍是一个值得深究的问题。为此,我们提议参考x86平台上uiCA的研究,为AArch64平台设计一系列微基准测试,以对处理器流水线进行更精确的建模,进而提升静态性能分析工具的精度。
- 基于微指令的模拟
当前,主流的静态性能分析工具如OSACA和llvm-mca,均以指令而非微操作(uops)作为代码块模拟的基本单位。尽管在本研究中,我们通过一些技巧解决了对常见指令微操作模拟的问题,但鉴于无论是RISC还是CISC架构的现代处理器,其执行的基本单位均为微操作,要想进一步提升静态分析工具的准确率,就需要以微操作作为模拟的基本单位。uiCA已经基于x86架构下的微操作探索完成了这一任务,如果我们能在AArch64架构下实施类似的研究,将有望显著提升静态性能分析工具的精确度。
5.4 论文相关成果
5.4.1 1
Quantifying Throughput of Basic Blocks on ARM Microarchitectures by Static Code Analyzers: A Case Study on Kunpeng 920
二、三、四、五
2022 IEEE 24th Int Conf on High Performance Computing & Communications
2022 IEEE 24th Int Conf on High Performance Computing & Communications
5.4.2 2
Uncovering the performance bottleneck of modern HPC processor with static code analyzer: a case study on Kunpeng 920
三、四、五、六
CCF Transactions on High Performance Computing
ISSN 2524-4922
15 September 2023
6 被遗忘的工作
- 下周介绍网站:已有的模块,如何修改,拓展的功能(公示模块,长期持续的events,和照片墙,可以筛选的)
- ACSA内容的填充
- 公示:工资组成明细 + 周/月/学期的考核试行方案 + 分组安排
- 实验室资源架构整合:(安老师了解个人的工作内容,交流平台, 文档资料积累的平台)
- docs mkdocs: 运维的知识: 网站,服务器的使用
- dokuwiki(Mkdocs+额外的验证和加密功能): 内部学术经验文档,文档用的小图片
- 实验室统一的新手须知
- 注册实验室LDAP机器账号,dokuwiki账户,群晖账户
- 组织结构介绍
- 日常的个人任务(超算比赛,课程助教,学期研讨会)
- 以及如何更新自己在实验室网站的信息
- 学术研究入门指南
- 每个小组出各自的入门须知(PIM的基础知识,数据流, 医疗影像的基础知识)
- 实验室统一的新手须知
- 群晖开WebDav吧(实现网络端文件下载):存储PPT,论文PDF和视频。