拖拖拖, 一个月过去了, 最终还是开始写总结了. 大三转瞬即逝, 马上就要大四了. 这学期的时间又浪费到哪里去了呢?

胡言乱语的 introduction

这不是故事总结, 但是吐槽里面会有一些剧透

老实说, 笔者其实很早就接触过 BanG Dream! 了. 笔者和 BanG Dream! 最早的交集是在高中, 那时候笔者非常喜欢看网上各路大神的吉他 cover 视频, 在疫情期间刷到了一位女装大佬 up 主 的东方曲 cover. 那时候笔者还是一个单纯的东方 only 爱好者, 对二次元其他方面的了解几乎是 0. 在那时候, 笔者从这位 up 的 cover 曲子里面第一次听闻了 Roselia 的 Fire Bird, 一首非常 power 的曲子, 也非常符合笔者当时的胃口.

Roselia 9th Single Blu-Ray Edition Cover

然后第二次接触 BanG Dream!, 大概就是今年 2025 年了. 从 2021 年到现在, 时间间隔也挺久的了. 这次笔者是通过 MyGO!!!!! 这个算是之前非常火热的一部番剧了解的. 看这部番的动机完全就是大三上过于高压, 在被考试和论文的重重压力打爆之后, 转向了无尽的自我补偿… 在第一遍看 MyGO!!!!! 的时候, 笔者并没有非常认真, 也并没有非常带入… 看完之后确实有点小感动, 故事情节还算可以. 当然, 看这部番还有另一个更直接的原因, 那就是追当季番: Ave Mujica. 总之, MyGO!!!!! 大致给笔者铺垫了追 Ave Mujica 所需要的全部背景知识, 然后就被笔者暂时的抛诸脑后了.

在一月末二月初准备托福的时候, 笔者每周最期待的事情, 就是周四晚上观看新的一集 Mujica. 在当时的笔者看来, Ave Mujica 是一个足够黑暗、猎奇的作品, 其上来就营造了一种高度压抑恐怖的氛围, 前几集可谓是集集爆 (nyamu 摘面具, sakiko失控, mutsumi 激活第二人格, 乐队解散), 观影体验一点也不轻松 (类似的氛围在 MyGO 的中间偏后几集的时候也有出现, 只不过这里上来就开大招了), 给了笔者一种独特的体验, 吸引着笔者追下去. OP 的那种宿命感, 以及 ED 的苍凉, 笔者在观看前的心理期望大抵是一部类似小圆的黑深残作品.

然而, 故事的发展逐渐有点失控. 第七集是笔者开始觉得诡异的一集, Crychic 的众人在了解到了 sakiko 之前家里发生的事情之后, 对 sakiko 的态度发生了大反转. 这个其实在意料之中, 但是令人很费解的是, 编剧在这一集中把众人无视 anon 不回消息进行了描写, 这种对主线 (Crychic 和解) 完全无关的描写很难让人觉得不是别有用心, 也让笔者觉得观感稍微有点差.

然后后面的剧情就是急转直下, 典型例子就是第八集 umiri 突然爆发, 自称是因为不爽想要买东西. 但是类似的情绪在之前的剧情中, 似乎并没有任何的体现, 笔者在这之前对她的认知完全是一个铁面无情的支援 bass 手, 仅仅在第 7 集结尾观看 Crychic 演出以及希望 sakiko 和 mutsumi 重组乐队对的时候才似乎有些情绪波动. 虽然这确实很符合现实中人的表现 —— 在现实中我们也不少见到一个比较内敛的人, 其实有丰富的内心活动, 但是在一部作品中, 这样突然的转变需要时间去消化. 一个人突然展现了自己不为人知的一面, 那就需要有对应的故事展开, 去支撑这个人内心的一面, 或者前文得有一些相关的蛛丝马迹. 不幸的是, 前文的铺垫似乎找不到任何提示 (对比之下, soyo 在 MyGO 中在一开始就给人一种心机大姐姐的感觉), 而实际故事展开又不像 sakiko 那样足以撑满一整集. 因此, 笔者面对这一个转变, 在第一次观看时的感觉是: “啊? (2 声)” 的确, 冷静下来的思考的话, umiri 的故事的确令人唏嘘: 第一支乐队的队友放了自己鸽子, 害怕类似的事情重现于是风险管理加入了很多乐队. 只可惜对于当时在追番的笔者来说, 第八集的剧情并没能成功让笔者很好的代入并共情.

当然, 笔者承认, 在第一次观看的过程中, 确实受到了身边同学的一些影响, 以一种稍微有点看乐子的心态去观赏作品… anyway, 追完之后, 笔者的第一感觉是: 这部番毁了, 也没有仔细再去品鉴的欲望.

在 4 月, 伴随着 Ave Mujica 的结束, 笔者大三下学期的各门课程也逐渐走向了收尾. Model Checking 大作业, 笔者花了大概 3 ~ 4 天速通了. 感想就是 modern C++ 的理论与实践, 也算是找到一个机会让笔者爽写了一次 modern C++. 自从在开源项目 xgrammar 打工之后, 笔者的对 C++ 的理解似乎提升了不少, 也开始包容更多种多样的写法. 在这个过程中, 笔者也学习了不少关于 github ci 的小知识, 并且把 Model Checking 的大小作业 全部用 github workflow 部署, 还是非常爽的. 在这段时间里, 笔者除了在等暑研的 DS2019, 也给 xmake 贡献了 xgrammar 的包, 能给自己喜欢的 toolchain 做出一些贡献, 也是一件非常开心的事情. 不过这确实并没有什么挑战, 只是一些纯经验, 生活中还是需要有一些更加 dokidoki 的事情的.

5 月份, Stanford 的 DS2019 迟迟到来, 笔者赶紧填完了各种表格, 一周的时间速通的签证. 由于是去广州办的签, 所以比较快, 如果办上海的估计排队得排到死. 笔者的运气比较好, 一次就顺利过签. 具体细节已经忘光光了, 只记得那个外国老哥在最后对我说了一句 “Enjoy your summer in Stanford!”, 我回了他一句 “Thank you”, 大概就这些吧. 总之, 到这里还算是一切顺利. 从广州回来后, 笔者先是急着肝完了 Eurosys 的实验. 这次 submission 真的是过于极限, 直到提交前 30min 甚至还没写完.

这次赶 paper 的经历也把笔者打穿了, 之后笔者回到家周末头疼了整整两天. 在修养完毕之后, 回到学校赶紧去办了学院流程. 这套流程并不简单, 中途笔者还填错了一次日期. 幸运的是, 笔者多次和相关老师联系求助, 最终也是极限在出发前的一周完成了所有的流程. 至此, 笔者的这个学期大抵也是结束了.

这个学期本身就没什么课程, 压力称不上大. 但笔者都在做些什么呢? 看番, 这确实很重要. 笔者追完了 Ave Mujica, 补了 MyGO!!!!!, Girl Bands Cry, 孤独摇滚. 少女乐队名著应该是齐全了 (如果算上高中笔者云过的轻音少女的话). GBC 和小孤独, 给笔者的感觉是纯纯的温馨治愈, 慢慢的人间真情… 在看 GBC 的那个下午笔者用掉不少纸巾, 而笔者也永远不会忘记看到小孤独融化那一刻, 自己脸上挂着的笑容. 确实是治愈系深作. 而 MyGO 和 Mujica, 这两部作品给笔者带来了不一样的思考, 虽然第一遍看的时候不是非常认真, 但确实让笔者感觉耐人寻味, 这也为笔者后来二刷埋下了伏笔.

6 月份, 笔者飞去了美国. 这是笔者这辈子第一次出国, 还是非常激动的. 加州确实是一个气候比较宜人的地方, 湾区 Stanford 那边尤其如此. 在短暂的 100 多天暑研的日子里, 笔者只撞上了一天下雨天, 还是在临走前的一天, 也算是非常幸运了. 加州整体呈现出一种比较干旱、类似沙漠的气候条件, 第一次逛 Stanford 的时候给人一种沙漠神殿的感觉, 不过据说冬天可能会更多下雨. 最令人满意的一点是, 即使是夏天, 最高温度基本也不会超过 30 摄氏度, 没有太阳直射的时候甚至会感到有点冷, 骑车必须得披上外套, 昼夜温差非常的大.

在 3 个月的暑研中, 比较有意思的是 7 月初和同学一起去 OSDI 玩. 虽然笔者自己对 system 的理解并不是很够, 也并不认识很多的领域内的人, 但是有身边的同学带着去认识各个老师, 整体体验还行, 没有太自闭, 最后顺走了 ATC/OSDI 的牌子也是挺搞笑的. OSDI 的收获还是挺大的, 听到了许多有意思的工作, 认识了不少的人, 也是第一次参加这么大型的会议, 机会真的难得.

OSDI/ATC-25

这三个月中, 其实各种小事故也层出不穷. 比如刚到美国的时候手机卡直接 gg 了, 国内手机阉割了国外的频段直接没有信号, 最后的 solution 是直接买个新的手机, 幸亏有比较热心的人在笔者刚到的前几天帮忙, 不然大抵是要死在异国他乡了 (bushi). 然后刚安定下来没几天, 大力出奇迹把电脑的充电线搞坏了. 当时真的非常紧张, 然而冷静下来后笔者用手边的螺丝刀和一些小工具, 硬是把充电头里弯掉的那根针掰直, 然后就能用了…

总是, 意外一直都有发生. 在过去, 笔者遇到这些意外可能就会比较不知所措, 大概率会消极应对, 比如开摆或者拖延拒绝想办法直到不得已. 但是出国以后, 笔者就不能像是在国内这样瞎搞了, 毕竟容错更低了. 也算是强行培养了一波独立生存的能力.

6,7,8 三个月稍微出去玩了玩, 去过 NV 老巢, 去过 UCB sky lab 和 MIT. 虽然大部分时间笔者都是一个人呆在 lab, 不过由于 7,8 月份忙着手头的工作, 所以也不算太无聊, 只不过一个人稍微有点孤独, 但感觉在呆了 2 个月以后也习惯了这种感觉, 有时候也会觉得一个人呆着没有人打扰挺好的, 如果没有生活的压力的话.

NVIDIA

最大的插曲大抵是 UCLA 那边彻底 gg 了, 原因是笔者犯了一些愚蠢的错误, 导致最终去不了了, 这也是笔者最后回国了才发现的. 只能说以后对于一些重要的文件还是要更加慎重, 这类愚蠢的错误已经重演了不知道多少次了. 在 8 月中下旬意识到了必然去不了 UCLA 后, 笔者才突然意识到自己的暑研之旅即将结束了. 虽然笔者一直会有点抱怨说自己一个人干感觉非常自闭, 但一想到要走心里还是非常难过的.

总之, 暑假三个月一眨眼就过去了, 很快就来到了最终分别的时刻. 笔者自然是非常难过的. 笔者感觉还没怎么交流过 idea, 而且组里的老哥真的也都非常非常的 nice, 氛围可以说顶级好, 没有黑暗竞争内卷 (请勿对号入座). 本来打算拖到 DS2019 的 grace period 的最后一天离境的, 然而和家长的一次视频通话无意间提醒了笔者, 笔者没有请假还得回学校签到. 于是, 笔者就仓促的决定卡在极限时刻回国, 正好赶在开学报到前两天 (但实际是一天, 笔者一开始以为是周一报道…) 回国.

当地时间 (UTC - 07) 2025/09/12 凌晨, 笔者乘上了回国的航班. 飞机一点点的驶离海岸线, 看着黑夜里那点城市的灯火, 消失在远方地平线. 笔者知道, 自己这趟美国之旅大抵是彻底画上了句号.

在飞过阿拉斯加、白令海峡的时候, 笔者看到了窗外的点点星光. 说起来, 那里应该是北极附近吧. 下方就是无尽的白色海洋, 上面则是浩瀚的银河. 笔者是第一次见到如此壮丽的景色, 虽然没能拍下当时所见, 但是这一幕已经深深的映在了笔者脑海里, 笔者可能一辈子都忘不掉那一瞬间的震撼吧. 望向宇宙星空, 在这一刻, 一切都消失了, 剩下的只有无尽和永恒. 在漆黑的夜空中, 飞机侧翼的灯火成为了唯一的一盏灯.

以上大概是笔者大三下的整体 timeline 吧. 如果说上学期 (大三上) 是在压力爆炸之后, 回头寻找自己生活中 doki doki 的时刻, 那么这学期的笔者就是更多在主动创造属于自己的 doki doki 的时候. 笔者这学期最开心的事情, 就是补完了一堆少女乐队番: 在 1 月份补了 MyGO, 1 ~ 3 月追了 Ave Mujica, 4 月补了 孤独摇滚, 5 月补了 Girl Bands Cry, 6 月去美国飞机上认真二刷了 MyGO, 7 月在往返 OSDI 的飞机上二刷了 Ave Mujica, 最后在 9 月回国的飞机上补完了云了一万年剧情的轻音少女. 同时, 笔者在这学期也做到了自己给自己的约定, 基本每周都回家练琴. 比较遗憾的是在科研上目前还是 0 突破, 暑研也因为自己的一些原因也没做出满意的结果.

最后的一点感慨, 是如果有了想法不及时去做, 那么这份冲动很快就会消失. 所以一定要坚定的 carry out, 笔者不希望以后的自己再活在后悔之中.

Intro 部分, 写于 2025/09/18 00:40 UTC + 08, D19 109 寝室

寒假

在大三上半学期 杂七杂八的东西 - 大三上小结 的时候, 笔者稍微有点被压力爆了, 因此寒假的时候笔者非常的低迷. 整个寒假, 笔者除了考完了托福, 没有做什么建设性的事情. 一个有意思的事情是, 在此之前, 笔者给 xgrammar 项目打工, integrate 进去了 sglang, 也算是给 lianmin 整了个投名状. 笔者一开始并没有想长期搞开源项目的打算, 可能只是因为为了完成承诺别人要求完成的事情罢了. 但是在寒假的时候, 笔者因为除了托福之外, 闲的没事情干, 于是便开始给 xgrammar 项目写代码. 这么做的动机非常简单, 笔者是一个 C++ 爱好者, 而 xgrammar 是一个 C++ 项目, 非常对笔者的胃口.

寒假的 highlight 自然是准备托福. 笔者的父母虽然早就让笔者好好准备托福, 但是笔者比较不耐烦, 一直以课程和项目作为开脱. 到了寒假, 实在是推不掉了, 只能硬着头皮开始学了. 事实上, 笔者一开始学的时候也不是非常的认真. 网课的时候非常没耐心, 经常切屏去刷 b 站/知乎, 即使知道这是一个意义重大的考试, 但也没有做好十足的准备. 这样的事情其实发生了很多次, 高考之前, 笔者也有过类似的行为: 在很重要的网课时期, 依然无法集中精力去听课, 上课不是在聊天就是在玩.

这样的后果是, 大约 2 月的第一周过半了以后, 笔者突然意识到距离最终考试只有 10 天了, 于是紧张和不安开始发力… 这个阶段笔者的效率倒是不错, 再加上家长找了一个还不错的一对一的老师, 练习的效果也很好, 提升很显著, 也积攒了不少的信心.

最后 15 号去上海大学考, 考完听力没错, 阅读扣两分, 口语虽然口胡了不少, 但没有出现致命卡顿, 还算是可以. 在这个时候, 笔者也联系上了 Stanford 的 PhD Zhiqiang, 一段惊心动魄的科研之旅即将开启.

整个寒假, 基本就是围着托福走. 除了托福, 也给 xgrammar 交了一两个小 PR, 其他就一点正事没干. 不过也是在寒假, 笔者重新拿起了吉他, 开始每天练习一些基本功. 在过去的 2024 年, 笔者不知道在忙些什么, 基本没有花多少时间在琴上. 直到这个寒假, 笔者才意识到, 自己是真的喜欢这个乐器的. 笔者在高中就听了不少大失真、以吉他编曲的核心的曲子, 而在上大学后则更多的接触了一些日本 ACG 的曲子, 听的大部分也算是 guitar-driven 的. 虽然笔者不太可能真的成为梦想中的 guitar 大师, 但至少笔者希望能成为自己的 guitar hero, 能够弹出让自己感动的旋律.

不过话说回来, 笔者在当时确实也意识到了自己一个寒假啥都没做, paper 也没咋看, 技术知识也没咋学, 心里自然是很焦急. 笔者一直都害怕落后别人, 也害怕自己不能兑现自己给其他人的一些承诺. 最近 (2025/09/17) 笔者看了 tianqi 的一个 talk, 其中提到 “你的勇气很大程度上, 来自于你过去对自己的承诺”, 结合当时和现在的自己来看, 这句话确实说的很有道理. 但这个承诺对笔者的约束, 可能更多的是恐惧驱动的, 害怕自己做的不好. 感觉虚荣和恐惧, 才是笔者一直以来的核心动力, 而笔者喜欢什么, 笔者可能自己也不知道. 自己喜欢什么, 想要在未来做些什么, 也成为了后面一直萦绕在笔者脑海里的问题.

学期

学习

难得学期小结写点学期心得

一个短暂的过渡学期. 学期的开始, 笔者有各种宏伟的计划, 比如 lead sglang 的一个小项目的 PR, 帮 zhiqiang 改 hicache, 学 RDMA 然后完善 system 2 的 tutorial. 到头来一个都没有干成. 即使列出来了计划, 生活中的一些琐事也会消磨笔者做事的热情, 最后就彻底把整件事情抛诸脑后. 当然, 这可能也是因为笔者对这些事情并没有足够的兴趣, 比如 sglang 那边笔者一开始完全的想法完全就是干点事情, 让自己看起来不要什么都没干. 而 zhiqiang 那边同理. RDMA 则是因为笔者自己完全不会, 而它听起来很厉害很高大上.

一个正常的学习路线, 笔者认为应该是, 意识到某个东西的有强大的功能或者不错的前景, 因此愿意为之付出时间去了解. 如果知识急于想要做点事情证明自己, 但是缺少一个良好的动机, 那么在学习的路上就会一直缺少正反馈, 最后学着学着就没耐心了.

动机, 一般是兴趣驱动. 但是笔者在这里又遇到了一个困境. 笔者自知自己比较喜欢一些比较 engineering 的事情, 比如写一些有趣的 C++ meta programming, 比如搭建一个 system (Compiler, OS), 但是这些东西很多时候没有什么 “科研价值”. 而笔者又非常渴望能做一些有意思的 “科研”, 想做一些大家认为非常 “fancy” 的工作. 前者可能是出于笔者的思维惯性 (笔者比较熟悉这些东西, 所以想做相关的东西), 后者则应该是处于笔者的虚荣心. 总之, 这两者很大程度上是 conflict 的. 想要做自认为喜欢的事情, 就感觉不够 “fancy”, 看起来不够酷. 想要做比较酷的东西, 可是论文又一点看不进去… 总之, 笔者似乎一直在做着 A, 但是又相信着 B…

当然, 可能也只是笔者对于那些 “fancy” 的东西的入门路线不太对, 不够熟悉, 尚未纳入舒适圈, 因此读起来比较坐牢. 这里一部分原因可能是, 笔者不希望自己看起来很菜, 因此经常会不懂装懂, 也不喜欢向别人提问, 导致进步非常的缓慢. 这一点笔者在学期中也逐渐意识到了, 也有在改变自己, 这一点或许是笔者这学期最大的提升吧, 放下所谓的 “面子”, 接受自己的无知, 承认他人的成功与优秀.

不过到头来, 笔者似乎还是不知道自己想要什么. 笔者甚至觉得, 自己对音乐的热爱远远超过了所谓的学术. 从高中的时候, 笔者就非常痴迷于音乐. 刚上高中接触东方不久, 就把东方同人音乐某一个子风格下面的乐队都翻了一遍, 从 THBwiki 翻到 BandCamp, 然后 twitter 每天关注自己喜欢的乐手的最新动态, 一有时间就上外网去找各种资源. 在高三的时候, 笔者甚至自己 DIY 了一个简易的 guitar, 并且也自己用数学推导了一些音乐理论 玄学. 那时候的疯狂现在的笔者恐怕是再也不会有了, 现在的笔者已经完全被学业缠住了… 但这真是笔者想要的答案吗.

~~我从来没觉得搞学术快乐过~~

简单来说, 最后大抵是给 sglang 和 xgrammar 贡献了一些非核心的小 PR, hicache 那边主要跑了跑实验, 讨论了讨论如何减少 PCIe stall, 然后把学期中正常的工作做完, 其他基本也没干些啥了. 至少, 笔者认为没有达到自己心目中的目标.

笔者上半年刷了不少番 (比起过去算挺多的), 大部分都是少女乐队相关的. 不得不说, 这些 girl bands 也是笔者重新拿起吉他的动机之一.

MyGO

第一个看的是 MyGO!!!!!. 是在寒假回家前的那个下午速通的. 当时看的目的只是为了能去补当季新番 Ave Mujica, 并不是太认真. 不过后来在去美国的飞机上二刷了, 那次可真是哭的稀里哗啦啊 (bushi).

在 soyo (长崎爽世, そよ) 的身上, 笔者看到了自己曾经的影子. 笔者依然记得大一下的时候, 组织了一个 关于 Minecraft Impart 服务器 服务器. 一开始, 大家看起来玩的都挺开心, 至少笔者自己是这么认为的. 然后到了大二的时候, 渐渐的就没人来了. 笔者不知道是哪里出了问题, 总之就是各种祈求大家能够回来. 那时的笔者和 soyo 为了能够重组 crychic 而奔走东西的样子真的太像了, 为了找回自己过去的快乐的记忆… 确实, 那时候的笔者也真是满脑子都是自己啊.

名场面

笔者也有时会像 soyo 一样, 在平时生活中经常会刻意的去表现自己 (当然不是 soyo 那种温柔表现), 也确实很希望身边人能够接纳自己, 真的非常希望能让身边每一个人开心, 害怕看到别人失落的表情. 每当遇到自己想不明白的事情, 就会放弃思考, 从来没敢直面这些问题. 正如 soyo 忘不掉 crychic, 笔者可能也一辈子忘不掉和同学一起快乐游戏的时光, 以及高中第一次听到自己喜欢的音乐时候激动, 还有自己倒腾音乐的那份热情了… but life still goes on, 笔者不应该过度沉溺在过去的那些事情中, 不能止步于自己的记忆之中. 可能这也是笔者看 MyGO 最大的感触吧.

在一刷的时候, 笔者其实对 soyo 并没有很深刻的印象. 在一开始的剧情中, 就已经处处透露出 soyo 这个人是一个表里不一、有小心思的人了, 因此后面会有什么样的反转, 其实基本已经在意料之中. 不过一刷的时候, 那个惊人的一跪, 这份对过去的执念, 也是吓到笔者了… 一刷的时候, 笔者的目光可能更多的放在阳角 anon 身上. anon 看起来就是一个看起来单线程, 稍微有点虚荣但又非常乐观向上的角色, 这种阳里稍微带点阴的角色塑造方式在当下, 笔者感觉甚至可以称的上有点扁平 (? 瞎说的不负责). 不过 anon 也是贡献了不少的名场面, 而且她和 tomorin 互相鼓励, 在迷茫中前进, 也确实算是这个番很大的一个看点.

至理名言

小灯, tomorin, 是一个非常非常有意思的角色. 看起来自闭小孩, 其实有很强烈的情感, 并且在关键时候将 anon 拉出低谷, 被 rana 认为是有趣的女孩子, 也大胆唱出了 soyo 和 taki 以及众人的心声… 用歌词表达自己的情感, 这一点确实小灯确实做的非常好, 和 anon 的互相拯救 (也可能是单向) 真的看的笔者无比感动, 无论是一刷还是二刷. 虽然笔者可能和 tomorin 并没有太多的共鸣, 但这并不妨碍她成为笔者在 MyGO!!!!! 中和 soyo 并列最喜欢的角色. 有意思的女孩子.

这可能是笔者看的第一个人物关系写的这么复杂的番剧 也可能是目前最接近百合番的 好吧后面 Ave Mujica 看起来更是重百合, 但里面的人物塑造在复杂的同时也没有过于脱离实际, 很好体现出了不同性格的人的不同特点. 最后 MyGO!!!!! 众人以真心相对、于迷茫中前行的结局, 也宛如童话一般美好, 算是这个番最大的泪点吧.

GBC & 孤独摇滚

非常抱歉笔者由于没有二刷这两部番, 时间也过去快半年了, 所以可能没法像 MyGO!!!!! 的分 (gui) 析 (che) 那样细致.

未完待续.

Ave Mujica

暑假

Stanford

感谢 lianmin 和 ying 的帮忙, 联系到了 Stanford 和 UCLA 的学长学姐. Stanford 这边联系上的是 Zhiqiang, 在去之前笔者一直有 (试图) 在帮着 hicache 相关的东西, 也因此笔者对 sglang 的框架有了更加深入的了解. Stanford 那边的手续, 笔者办的也是一波三折. 虽然 invitation letter 上写的是 6 月初要去, 但是直到 5 月初的时候, 笔者才收到正式的 DS2019, 而且还是在垃圾邮件中. 感谢上课玩手机, 让笔者没有错过这封至关重要的邮件.

invitation letter 上写的是 06/04 ~ 08/31, 不过实际上笔者 06/02 就去了 (btw, 插播一个广告, Lily White 在美国). 到的当天笔者先是在住的地方硬撑到了晚上 18 点, 然后安详的睡了过去. 这可能是笔者出生以来睡得最香的一次, 笔者从来没有这么长时间的清醒过.

笔者花了一两天就安顿下来了, 时差其实也很快就倒过来了 年轻就是好啊. 在后面的几天里面, 笔者先开始干 sglang 的一些 PR.

前两周干的主要就是 radix tree API 的 clean up. 在当时, sglang hi-radix tree 的 integration 过于 bug prune (虽然似乎没啥问题, 稳定能跑), 而且根据在 core scheduler 里面充斥着各种根据是否开启 hicache 的 if 特判非常不对笔者的胃口, 于是笔者大刀阔斧的把 radix tree 相关的 API 都多做了一层封装. 然后是 C++ hi-radix tree, 这玩意一开始写出来是为了 scheduling 服务, 因为一些比较 fancy 的基于 prefix 信息的 scheduling 用 Python 实现过于慢了, 不过似乎 scheduling 那边因为过于复杂一直没 upstream 进去, 这个 hi-radix tree 最终也没啥后文了.

这段经历看起来对笔者的未来不会有任何的影响, 但实际上这段时间笔者完整 walk through 了 sglang 的 core scheduler, 给后面自己写的 LLM 框架埋下了伏笔 (真的吗?).

第三周的时候老板 Christos 开始找笔者聊项目的事情. 一开始 Zhiqiang 提议了 RL 的一些东西, 笔者后来也把和好友 Conless 聊的 RL 那个 idea 给了老板画了个大饼, 不过一直没拿定主意. 在这个时候, 笔者稍微做了一点点 RL 的 profiling, 并且开始自己写一个 LLM training 框架. 其实一开始写框架的时候, 笔者只是纯觉得写代码爽, 再加上希望整点花活, 比如自动生成 model pipeline (实际是重载运算符, 不是很聪明的样子), deduplicate model 类, 于是便噌噌噌开始写自己人生第一个 LLM 框架了.

一开始的框架是想写的 general 一点, 因为一开始讨论的 idea 就包括了 colocate training & inference, 笔者希望能够在一个 process 里面同时完成这两个任务. 这个框架从 6 月 26 号开始写, 在去 boston 前 (7/5) 基本写完了大概, forward pass 没有问题.

在 7 月的时候, 最有趣的事情就是 OSDI 之旅. 人生第一次参加顶会, 心里自然是非常激动的, 不过激动似乎有点过了头, 去那边的三天没有一晚上是睡好的… 本来想着去那边多认识一点老师, 只可惜笔者完全没做过什么攻略, 嘴上说着要大胆 social, 实际也只敢跟在同学的后面…

回来之后, 笔者最终在 RL 和 fault tolerance 的两个项目中选择了 fault tolerance 的项目. 老实说笔者自己也不太记得清楚是为什么了, 根据模糊的记忆, 可能是因为笔者害怕短短的三个月做不出结果, 因此放弃了之前就有过不少讨论了 RL project. 这么做确实有点功利和短视, 笔者当时也确实有点受到良心的拷打, 自己做科研一直动机不纯, 而且做的也挺烂的…

不过 fault tolerance 确实也不算一个完全无聊的项目. 笔者还是一步步找到了不少的 challenge, 并且也优化出了一些解决方案, 跑出了还不错的结果. 笔者是在之前的那个 LLM 框架上修改的. 感谢之前阅读 sglang core scheduler 源码的经历, 笔者得以在一周之内把一个 modern LLM serving engine 所需要的全部 feature 都写完. 在 7 月末的时候, 笔者的框架基本以及可以对标 sglang 了.

7 月的一切看起来都无比的顺利, 每周都有显著的推进, 事业看起来兴兴向荣, 然后就是灾难的 8 月.

8 月笔者感觉自己似乎完全是在止步不前, 除了稍微 tune 了一点自己的 DP-attention 调度算法, 测了一堆数据, 就没有其他的改进了. 由于前半个月老板在欧洲, 笔者拿不到 in-time 的 feedback, 笔者自己也拿不定主意, 因此不敢推进. 在这里, 笔者浪费了接近一个月的时间, 除了中间把之前 hicache 的 paper 的实验补了, 其他几乎什么都没干… 在这个阶段, 笔者也开始对自己的东西无比怀疑. 这玩意真的有人会 buy 吗. 至少如果只有 20% 的 gain, 那么笔者很难说服自己这是一个有意义的工作.

总之, 到 9 月, 直到笔者的 SEVIS 已经 inactive 了, 笔者才意识到自己的时间已经不多了. 在最后的一周里面, 笔者 3 天补完了后面需要的 host back up 部分, 并且实现了 parallel PCIe utilization. 最后也算是在走之前把工作的整体都实现完成了, 只剩下一点点 corner case 要补一下, 还需要测一些实验即可.

未完待续

轻音