划水年记·2022
讲道理,把自己的划水经历赤裸裸地摆在台面上让人公开处刑,还蛮是一种催人奋进的方法。
总结
PhD学习的第一年(或者说头四个月)一下子就过去了。做得好的地方有:
- 对课题还是越来越感兴趣的。
- 除了项目内的工作,Linux和Vim之类的技能也大有提高。
- 没有忽略老本行,反而还稍微巩固提高了点。
- 视野也是大有开拓的!
一些反思:
- 学术交流收获不大:一者组里所里数电方向的不多,二者还是有些不熟悉也不太擅长社交环境。慢慢来吧。
- 需要多读文献:刚开始读当然会慢,都是量上来了才越读越快的。因为做的不是纯技术的内容,得看看能不能安排点固定时间读读文献,总结点找文献和安排文献阅读的方法论。
- 口口声声说需要有明晰的路径图,但是碰到大茬还是进度非常慢:多和Alex讨论讨论,把控会议的关键点。每周目标要明晰,也得用一用甘特图之类的。
- 没特殊情况周五白天不出门玩了,有些打乱节奏。作息也不能太不规律。
第十四周
上周纯码农,进度正常。
下周没有下周了,下周圣诞节假加上出行安排,没有正经工作时间了。这两周干了太多代码,带哥们都不在加上文献储备问题,ASOCat是没有推进的。
假期主要工作:
- 多读点文献,至少每个方面都读到
次要工作:
chmod
和VSCodeNeovim
- 年记
第十三周
上周没啥好说的,RTL进度还行,testbench还是不熟练。
这周主要做ASOCA,ASOCat看看荷兰人的文献。
主要工作:
- (100%)COMP BUF sign-off
(0%)梳理HDPROC情况- (100%)整理荷兰人的文献
次要工作:
- (100%)学习用
proxyjump
搭载远程目录并更改权限 - (100%)准备lr和accom。
第十二周
经典低估工作量。简单的都搞定了,难的下不了手。
这周有出行计划,剩下的时间里就做COMP好了。codelet list和slipnet接口慢慢来吧。
下周起更新调整为周三,以跟原进度会保持步调。
主要工作:
- (150%)COMP做好初版
- (100%)不要奢望法国队能走很远。
次要工作:
- (50%)优化
sshfs
配置,更新相关笔记 - (100%)配置
coc-commentary
或coc-surround
第十一周
虽然要做的都做了,但是上周任务比较肤浅,其实没太多实质性进展。这周必须开冲!
但话说回来,今天又接到了COMP的新需求,asocadb
的interface问题也悬而未决有点无从下手(大概得跟Chris及Adrian好好聊聊),加上slipnet迭代和coderack整理。需要调整一下安排,任务量太重会极大打击工作信心的。
主要工作:
- (100%)设计pandas到pydot的接口
- (0%)直接从codelet list出发,尝试理解相关机制(有成果就好)
- (40%)向COMP模块添加mask输入和模式选择功能
次要工作:
- (100%)整理一下vim本体的配置
- (0%)配置
coc-commentary
或coc-surround
第十周
严格分割工作和业余时间之后晚上时间瞬间不够用了,次要工作推进比较慢,所以周二才更新周记————不过这是一件好事!
COMP模块总算要sign off了。因为以往经验根本没人管testbench怎样,上周好好地学习了一波正经testbench的写法,收获很多也花了许多时间。这周专心ASOCat。
主要工作:
- (100%)重拾codelet:无论怎样要理出一两个micro op开个头。
- (100%)完成slipnet文档的outline
次要工作:
- (0%)尝试推进codelet文档
- (70%)配置完coc.nvim,阅读
coc-commentary
说明
第九周
周五六日虽然干了活但效率比较低,得整点方法,比如做好todo list。
休息好后下周开始多锻炼一下,其他无功无过。
主要工作:
- (100%)再迭代一版slipnet。
- (100%)完成COMP的testbench。
- (50%)根据周三的technical开始规划下一部件的设计。
次要工作(别花太多时间):
- (30%)学会Verilator。
- (40%)配置coc.nvim。
第八周
第一次翘班,经验不足(你懂我意思)……除了这一点,上周其实没啥毛病。
路线diverge了很多,进度有些慢了,后面真得赶一赶。所以晚上积累理论这个东西可以先不那么着急。
主要工作(可能超额):
- (100%)其实我也不知道工作量有多少但是得把slipnet完成
- (30%)slippage前后置/description二选一梳理并初步文档化
- (50%)COMP模块收尾
次要工作:
- (100%)学点Vim
- (20%)学点Verilator
第七周
还凑合,出现的岔子跟预想的差不多,并且堆了不少代码以量取胜了。
总结一下问题的话,现在需要从积累技术向积累理论转变,工作不够深入。
主要工作:
- (100%)总结并完成一版sliplink设计。
- (100%)基于1.,搭建slipnet alpha。
- (70%)改进COMP模块以支持输出后6位。
次要工作:
- (0/10)Kanerva
第六周
有点难以置信,上周的工作内容和原定任务几乎不搭边……并且现在看来,上周完全是低估了Slipnet设计的工作量。
必须明确,至少目前而言工作日晚上和周末不能拿来完成正式工作,除非真的非常琐碎。不在这两个时间安排工作一者可以提高工作时间的效率,二者可以有时间学点杂七杂八的。
本周的工作安排得保守一些吧(希望这些足够保守):
- (4/10)按照README改进图数据库代码。
- (40/40)把slipnet都放上去。
次要:
- (0/1)完成slipnode representation的说明文档。
- (0/20)Kanerva。
第五周
没什么好评价的上周,中规中矩跟上了节奏,基本上要做的都做完了。
可能工作日晚上还可以优化一下,现在莫名其妙一个晚上就过去了。
本周任务:
- (0/1)完成Slipnet设计。
- (1/1)尽量完成Plan的草稿。
- (0/24)初步整理每个codelet。
次要:
- (0/20)Kanerva
第四周
上周收获不少,但是博客,vim,verilator之类应该是业余工作而非搁置主要工作的理由。而作为真正的part-time work,阅读的推进可以说是十分之慢了。
本周会议事项较多,重要会议应该保障同步,力求领先。
另外,这周的周末就别想工作了。所以要紧的事项,一定记得要周中完成,下周一好好交差。
本周任务:
- (2/2)通过两次会议总结出Slipnode和object的存储representation思路。
- (1/1)至少有实质性地再次推进文档工作。
次要:
- (8/20)20页Kanerva!
第三周
甚至不清楚到底是因为自己确实划,还是起步有断层所以显得进度很慢了。
总结问题:primer没落到实处->完成工作耗时太长+没有正确的工作顺序->频繁更换手头任务+没有任何实质推进
暂停彻底分解Copycat具体机制,转战成效更直接的codelet在接口的micro op上。另外,周中可以做点DIC工作分散一下压力。
注意不要跟去年一样逼得自己啥都搞不定。
本周任务:
- (0/1)完成codelet在硬件上的micro op解析
- (2/1)至少初步地了解COMP接口
次要:
- (2/20)20页Kanerva
第二周
没能完成coderack,甚至主函数都只完成了部分入口。文档的编写让自己意识到Copycat的具体实现实际上非常动态且复杂。例如,Slipnet和Workspace有着相当复杂的互动,主流程之外有着非常多的自定义函数还不清楚原理。
然而,当前版本的Slipnet应当是相对静态的。这一问题和软硬件界面的位置成了已知的两大问题。
本周任务:
- (0/1)完成可读的文档第一版草稿,i.e.,理解Copycat的具体实现方法。
- (0.7/1)尽量推进完成Cat()和Coderack()。
次要:
- (0/2)完成Workspace和EasyCopy。
- (9/20)推进20-30页Kanerva。
第一周
讲道理,工作上不是很成功的一周:入学手续意外地拖拉,暂时无法适应居家办公,周末花费了太多时间在化学实验入门(做饭)上。学了不少python内容,虽然这语言本身语法也烂简单。
根据以往的经验来看,作息和生活事务的阵痛很快就会过去,这一点不需要太担心。但是下周得慢慢学会居家办公,看看能不能网上找点辅助工具。
手头工作是写一个简单版Copycat,整体不复杂。目前遇到的难点有这几个:
- workspace到底是个什么?文献读得有点迷糊:好像没有workspace也能跑?而且Alex也说软硬件交界面就在workspace上。这似乎就是一个可以被处理掉的部件。
- codelets的运行方式没有非常搞懂,包括:本身的内容,调用的逻辑。这个可以结合现有的项目照猫画虎搞定,只是bug和性能肯定血烂。
- 长远地看,codelets list应当是要结合interface的反馈采用非监督学习完成。目前看起来非常复杂,并且暂时也不是需要考虑的问题。
本周任务:
- (0.75/2)分析co.py.cat代码,作为EasyCopy和文档的参考,完成主函数和coderack。
- (1/1)推进文档草稿工作,在文献里找找描述codelets的文件,完成skeleton。
抱着让别人看懂的想法,一边学一边给自己的问题写备忘就很够了。
次要任务:
- (0/2)完成Workspace和EasyCopy。
- (15/20)推进20-30页Kanerva。