5.19
昨天看了一些查找表的方法,现在感觉如果做的话重合度太高,本身倒是很合适,但是做的话重合度太高,不是很好
有一个新的想法是两个矩阵乘法和softmax共用加法树,softmax朴素实现,但是缺点是只能串行计算,不过其他时间可以说成在refresh的时间,但是如果性能放低要求,现在的算法降并行度好像也能满足。
感觉问题主要出在浮点数串行计算上,以及3d结构并行度本来就高,加法的面积才会如此大,现在似乎只能用性能换面积
今天思路这块还是看看别人做浮点数的文章,有没有能学习的,然后刚刚有个想法是改变矩阵乘法的顺序。另外有没有可能朴素softmax12/3这样利用好加法树。再细化一下浮点定点转换的想法。如果不行可以改fp16,也能省一部分面积。
spinal hdl,昨天看了vec和reg,今天总结一下然后继续往后学。
昨晚上又失眠到两点多,爬起来学了一会儿才去睡觉,估计是好久没喝咖啡了
昨天看了一些查找表的方法,现在感觉如果做的话重合度太高,本身倒是很合适,但是做的话重合度太高,不是很好
有一个新的想法是两个矩阵乘法和softmax共用加法树,softmax朴素实现,但是缺点是只能串行计算,不过其他时间可以说成在refresh的时间,但是如果性能放低要求,现在的算法降并行度好像也能满足。
感觉问题主要出在浮点数串行计算上,以及3d结构并行度本来就高,加法的面积才会如此大,现在似乎只能用性能换面积
今天思路这块还是看看别人做浮点数的文章,有没有能学习的,然后刚刚有个想法是改变矩阵乘法的顺序。另外有没有可能朴素softmax12/3这样利用好加法树。再细化一下浮点定点转换的想法。如果不行可以改fp16,也能省一部分面积。
spinal hdl,昨天看了vec和reg,今天总结一下然后继续往后学。
昨晚上又失眠到两点多,爬起来学了一会儿才去睡觉,估计是好久没喝咖啡了


