[发明专利]一种多米诺优化的GPU加速电力上三角方程组回代方法在审
申请号: | 201710478820.5 | 申请日: | 2017-06-22 |
公开(公告)号: | CN107423259A | 公开(公告)日: | 2017-12-01 |
发明(设计)人: | 周赣;孙立成;张亮;李琦;姚瑶;何朝伟;冯燕钧 | 申请(专利权)人: | 东南大学 |
主分类号: | G06F17/12 | 分类号: | G06F17/12;G06F17/16;G06Q50/06 |
代理公司: | 南京苏高专利商标事务所(普通合伙)32204 | 代理人: | 张婧 |
地址: | 210018 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多米诺 优化 gpu 加速 电力 三角 方程组 方法 | ||
1.一种多米诺优化的GPU加速电力上三角方程组回代方法,其特征在于:所述方法包括:
(1)CPU中根据雅可比矩阵的LU符号分解结果,即上三角变换矩阵U的稀疏结构,对上三角变换矩阵U各行进行并行化分层,进一步生成回代运算所需的运算顺序eorderU;并将GPU计算所需数据传输至GPU;
(2)在GPU中设置上三角变换矩阵U各行的标志位markU;
(3)在GPU中调用LU回代运算内核函数LUbackward。
2.根据权利要求1所述的多米诺优化的GPU加速电力上三角方程组回代方法,其特征在于:所述步骤(1)中,并行化分层将上三角变换矩阵U的n行归并到若干层中,然后根据先小层号后大行号的原则进行排序,生成上三角变换矩阵U的回代运算顺序eorderU;GPU计算所需的数据包括:上三角变换矩阵U,运算顺序eorderU,线性方程组维度n,线性方程组的前推运算结果y。
3.根据权利要求1所述的多米诺优化的GPU加速电力上三角方程组回代方法,其特征在于:所述步骤(2)中,在GPU的设备内存中为上三角变换矩阵U各行设置标志位markU(k),k表示行号,并置值为0,表示没有完成第k行的计算。在内核函数计算完成第k行时,将标志位markU(k)置为1。
4.根据权利要求1所述的多米诺优化的GPU加速电力上三角方程组回代方法,其特征在于:所述步骤(3)中,LU回代运算内核函数定义为LUbackward<Nblocks,Nthreads>,其线程块大小Nthreads固定为128,线程块数量Nblocks=(n-1)/Nthreads+1。
5.根据权利要求4所述的多米诺优化的GPU加速电力上三角方程组回代方法,其特征在于:所述内核函数LUbackward<Nblocks,Nthreads>的计算流程为:
(2.1)CUDA自动为每个线程分配线程块索引blockID和线程块中的线程索引threadID;
(2.2)将blockID和threadID赋值给变量bid和t,之后通过bid和t来索引bid号线程块中的t号线程;
(2.3)第bid号线程块中的t号线程负责计算运算顺序eorderU中的第bid*blockDim+t行,设行号为k,k=eorderU[bid*blockDim+t],其中,blockDim=Nthreads;
(2.4)第bid号线程块中的t号线程中,变量i从k+1递增到n,如果U(k,i)≠0,并且markU(i)=1,采用公式x(k)=y(k)-x(i)×U(k,i)来计算回代结果x的第k个元素x(k),若markU(i)不等于1,线程等待,直到markU(i)为1继续执行;
(2.5)采用公式x(k)=x(k)/U(k,k)更新x(k);
(2.6)设置第k行的标志位为1,markU(k)=1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710478820.5/1.html,转载请声明来源钻瓜专利网。