- 博客(8)
- 收藏
- 关注
原创 【Paper Review】VoxelNeXt:Fully Sparse VoxelNet
VoxelNeXt是一篇短小精悍的算法论文,颇有当年ResNet和Mask RCNN的遗风,这类论文的特点:结论是简单的,效果是拔群的,证明是困难的,给人一种八百里外命中目标的神奇感受我认为这种感觉来自于作者对于要解决的问题的深刻理解,靶子画的清晰无比,剩下的就只需要考虑如何打中,在这个努力的过程中尝试和比较了诸多方法,对于读者来说就容易晕头转向,搞不清真正的创新点。
2024-11-08 18:09:45 586
原创 【Paper Review】GAMMA:Gustavson SpMSpM Accelerator
通过并行比较和Merge操作完成部分和的Intersection和原地累加利用Scheduler进行PE级别的任务划分,通过FiberCache来减少访存开销每个PE内部都有R*depth个专用buffer,面积开销必然较大,也不利于提高并行度。
2024-11-06 17:05:19 938
原创 【Code Review】Find_First1 & Find_First1_Base
接上篇,find_first1也是一个常见的功能模块,用来把一个随机的二进制序列过滤成onehot,保留的是从低位开始出现的第一个1,通常用在round robin仲裁中寻找最高优先级的位置。
2023-03-31 18:02:35 132
原创 【Code Review】Onehot2Bin
最近在工程实践中用到了onehot2bin这个模块,发现它的写法和直观上的理解有一点差距,并不是很好理解,有必要记录一下。
2023-03-31 16:47:44 396
原创 【Note】Super Scalar Processor Chapter 3
虚拟存储器的基本思想:程序的总大小可以超过物理内存,操作系统(OS)负责维护当前使用的部分Memory Manage Unit(MMU):地址虚实转换单元虚拟存储器能简化程序地址空间的分配,利用虚地址可以把每个程序都映射到整个存储空间,也可以在程序员不感知的情况下动态地将程序分配在不连续的空间上虚拟地址能隔开不同程序的地址空间,还能实现程序之间的内容共享,以及动态地管理任意一段地址空间的访问权限(可以是全局、受限或者只读)
2023-03-19 22:03:02 92
原创 【Note】Super Scalar Processor Chapter 2
解决思路:冗余设计+缓存,例如2-way超标量使用能容纳4条指令的Cache Line大小,保证了每Cycle得到的平均指令数超过2,多余的指令缓存起来,如此就能稳定得到充足的指令。Filter Cache:类似的思路,保存刚刚从下级存储器读回的Cache Line,如果被再次访问则写入Cache,否则被丢掉,这避免了偶然被访问的Line进入Cache。Exclusive:L2和L1内容互斥,节省资源,替换时必须先将L1 Cache Line写回,多核情况下查找某个地址必须检查每一级Cache。
2023-03-12 23:20:07 128
原创 【Note】Super Scalar Processor Chapter 1
程序执行时间 = 指令数(算法) * CPI(微架构) * 时钟周期(工艺)每周期执行多条指令,但有区别于VLIW,超标量处理器依靠硬件自身来完成指令并行,而不是交给编译器和程序员,这样做可以兼容任何指令集,因此通用处理器的多发射离不开超标量架构设计的经典tradeoff精准的分支预测(性能提升)->电路复杂->不能连续取指->性能下降流水线拆细(主频提高)->流水线加深->预测失败代价大->高频低能。
2023-03-08 18:40:49 147 1
原创 【Arch】MSHR in Non-Blocking Cache
MSHR的两部分可类比于正常运行中的公交车,1个司机(MSHR本体的表项)对应1到N个乘客(Load/StoreTable的表项),始发站(首次缺失)司机上车,中间站(再次缺失)乘客逐渐增多,终点站(CacheLine读回)司机和乘客全部下车。
2023-03-06 01:40:58 924
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人