[发明专利]一种向量DSP核的矩阵LU分解向量化计算方法在审
| 申请号: | 202111491342.4 | 申请日: | 2021-12-08 |
| 公开(公告)号: | CN114139108A | 公开(公告)日: | 2022-03-04 |
| 发明(设计)人: | 夏宁;李世平 | 申请(专利权)人: | 江苏华创微系统有限公司;中国电子科技集团公司第十四研究所 |
| 主分类号: | G06F17/16 | 分类号: | G06F17/16;G06F15/80 |
| 代理公司: | 南京擎天知识产权代理事务所(普通合伙) 32465 | 代理人: | 涂春春 |
| 地址: | 211899 江苏省南京*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 向量 dsp 矩阵 lu 分解 量化 计算方法 | ||
本发明公开一种向量DSP核的矩阵LU分解向量化计算方法,包括如下步骤:S1、矩阵补零;S2、对矩阵B转置得到转置矩阵C;S3、转置矩阵C内的上三角矩阵D的行Dr进行行消元;S4、按照公式R=R‑Dr’*er进行更新矩阵panel的计算;S5、判断r是否等于N‑1,若不是,令r=r+1,转步骤S3,若是转步骤S6;S6、向量DSP核使用向量指令进行矩阵转置获得矩阵B的LU分解结果;S7、向量DSP核将获得矩阵B的LU分解结果拷贝至原矩阵在DDR存储器中的存储位置。优点:本发明计算方法,通过向量化的矩阵转置操作将矩阵LU分解中的非连续存储访问转化为连续存储访问,有利于充分发挥向量加载数据的优势。
技术领域
本发明涉及一种向量DSP核的矩阵LU分解向量化计算方法,属于数字信号处理-DSP技术领域。
背景技术
LU分解是密集运算的经典算法,由于有着广泛的应用范围和重要的应用价值,一直以来都处于核心地位。著名的LINPACK测试程序通过求解线性方程组来测试超级计算机的性能,而矩阵LU分解(LU Factorization,LU)是求解稠密线性方程组最常用的一种方法。LINPACK测试程序通过矩阵分块LU分解将矩阵分解为上三角矩阵和下三角矩阵,再通过两次三角方程组求解实现最终的方程组求解,其中矩阵LU分解的计算量占据整个计算量的95%以上。因此,LU分解的性能直接决定方程组求解的性能,对于高性能计算领域非常重要。
发明内容
本发明提出一种向量DSP核的矩阵LU分解向量化计算方法,采取的技术方案为:
一种向量DSP核的矩阵LU分解向量化计算方法,包括如下步骤:包括如下步骤:
S1、向量DSP核根据芯片向量寄存器位宽完成矩阵补零;
S2、向量DSP核使用向量指令对矩阵B转置,得到转置矩阵C;
S3、向量DSP核对转置矩阵C内的上三角矩阵D的行Dr按照公式Dr=Dr/Dr[0]进行行消元,更新矩阵D的行Dr,初始化r=0;
S4、向量DSP核按照公式R=R-Dr’*er进行更新矩阵panel的计算;
S5、判断r是否等于N-1,若不是,令r=r+1,转步骤S3,若是转步骤S6;
S6、向量DSP核使用向量指令进行矩阵转置获得矩阵B的LU分解结果;
S7、向量DSP核将获得矩阵B的LU分解结果拷贝至原矩阵在DDR存储器中的存储位置。
本发明的计算方法中,提及的向量DSP核,是指带有向量寄存器的数字处理器芯片。
本发明技术方案的进一步优选,步骤S1的具体方法如下:
设,待求解矩阵标记为矩阵A,其规模为M*M阶,首地址记为A00;补零后的矩阵记为矩阵B,规模为N*N阶,首地址记为B00;每个矩阵的矩阵元素均为u字节,向量DSP核内的多个向量寄存器位宽均为w字节;
S1.1、判断矩阵A的矩阵行长是否为向量寄存器位宽w的整数倍,若是,矩阵A不需要补零,矩阵A与矩阵B标记为同一矩阵,N=M,B00=A00,转至步骤S2;反之,转至步骤S1.2;
S1.2、确定矩阵B的规模N,方法如下:条件一、NM,条件二、(N*u)%w=0;满足条件一和条件二的同时取得最小的N值为所需要的N值,得到矩阵B;将矩阵B初始化为全零矩阵;
S1.3、分别计算矩阵A和矩阵B的第i行元素首地址:
Ai[0]=A00+i*M*u; 公式(1)
Bi[0]=B00+i*N*u; 公式(2)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏华创微系统有限公司;中国电子科技集团公司第十四研究所,未经江苏华创微系统有限公司;中国电子科技集团公司第十四研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111491342.4/2.html,转载请声明来源钻瓜专利网。





