0%

《计算机系统结构》课程总结

​ 之前对这个课的印象就是:

后半学期每节课只有6个人去

​ 后面实际上下来感觉没有说的这么阴间。感觉还是挺对不起老师的。就去过两节,由于没有录屏也就没有拟合过上课内容。考试前一天晚上熬夜拟合了所有的PPT,做了往届题就往上怼了。但最后考试难度还行,只能说逃过一劫。

​ 这个课有个午餐会,和老师吃了一顿饭,老师在课上猛批了一下子人工智能,安利了一波做编译和做体系结构。后面和快手小学期的老师聊,发现行情和他说的倒也大差不差。总之,这个老师比较喜欢夹带私货,人还挺好的,爱好多,上课也认真。

TL;DR

一个方案、一种架构、一种机制,如果给人以简洁美、线条美、层次美,那么它注定就是好的。

课程内容

这个课给我的感觉像是”大合集“,里面的讲的大多数内容之前都学过:

  • 基础知识部分,讲了编码方式:汇编小学期讲过 X86,mips,造机学过riscv32编码
  • huffman编码:新生研讨课讲过
  • 讲cache原理:造机课讲过,而且实现了一遍
  • 讲流水线:
    • 普通流水线:造机课讲过,而且实现了一遍
    • 多功能流水线和调度:这个是新活,猛画自动机
  • 讲令牌环与tomasulo,硬件指令级并行:这个是新活,好神奇,学完以后感觉”怎么造机的时候不知道,要不然实现一遍肯定很好玩“
  • 循环展开与软件指令级并行:编原讲过一些编译优化,但没讲循环展开。循环以后感觉”没我想的那么复杂“。

上学期mini-decaf我开了一个编译优化分支瞎搞,当时循环展开我想的是:有些确定性的循环可以直接预计算完,这个是循环展开……

课程评分

55分考试 + 15分大作业 + 10分小作业 + 5分书面作业 + 10分雨课堂

  • 大作业是三选一:tomasulo实现、分支预测软件卷性能、树莓派实现硬件tomasulo。都还行,”硬件“实验也没有造机硬,我选的是软件实现tomasulo,大概长这样。

  • 小作业是cache测量,通过一些侧信道观察方法,找到一些电脑本机的cache配置。这个实验我觉得很有意思,虽然实际执行起来好像同学们有很多歧义,我打算写一个blog讲讲这个实验。

    《体系结构cache测量实验》

  • 书面作业对着PPT和课本拟合一下就行

  • 这学期考试挺简单,基本都是基础的内容。