矩阵乘法的优化比如说两个矩阵A和B相乘,A存入一级cache,B存入二级cache,但在做乘法的时候存在重复copyB以

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

lz99722 幼苗

共回答了20个问题采纳率:90% 举报

如果A确实能完全存入一级缓存,那么把B按列分块,一块一块乘就行了.
一般来讲矩阵乘法并不是像你说的那样做的,而要把A,B,C都分块,对于每一级存贮器而言,应该至少分成5个部分来管理.比如说,A的某一块常驻于这一级存贮,然后余下的部分分为四块:
(1)上一步已经运算完成的C块——写入低一级存贮
(2)下一步将参与运算的B块——从低一级存贮读入
(3),(4)正在参与运算的B和C块
然后对于这一级存贮器上的小矩阵块运算C=AB仍然按照同样的管理方式递交给上一级存贮来计算.一般来讲A块选得略小一点,具体的分配方式取决于运算和I/O的速度,尽量保持计算单元忙碌.

1年前

4
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 2.019 s. - webmaster@yulucn.com