矩阵乘法的优化比如说两个矩阵A和B相乘,A存入一级cache-查字典问答网
分类选择

来自刁智华的问题

  矩阵乘法的优化比如说两个矩阵A和B相乘,A存入一级cache,B存入二级cache,但在做乘法的时候存在重复copyB以至于二级CACHE不够用的情况,怎么解决这个问题,也就是怎么进行优化

  矩阵乘法的优化

  比如说两个矩阵A和B相乘,A存入一级cache,B存入二级cache,但在做乘法的时候存在重复copyB以至于二级CACHE不够用的情况,怎么解决这个问题,也就是怎么进行优化

1回答
2020-08-04 18:23
我要回答
请先登录
罗国涛

  如果A确实能完全存入一级缓存,那么把B按列分块,一块一块乘就行了.

  一般来讲矩阵乘法并不是像你说的那样做的,而要把A,B,C都分块,对于每一级存贮器而言,应该至少分成5个部分来管理.比如说,A的某一块常驻于这一级存贮,然后余下的部分分为四块:

  (1)上一步已经运算完成的C块——写入低一级存贮

  (2)下一步将参与运算的B块——从低一级存贮读入

  (3),(4)正在参与运算的B和C块

  然后对于这一级存贮器上的小矩阵块运算C=AB仍然按照同样的管理方式递交给上一级存贮来计算.一般来讲A块选得略小一点,具体的分配方式取决于运算和I/O的速度,尽量保持计算单元忙碌.

2020-08-04 18:28:53

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •