国产申威26010众核CPU上GEMM稠密矩阵乘高性能实现方法

    公开(公告)号:CN107168683A

    公开(公告)日:2017-09-15

    申请号:CN201710310445.3

    申请日:2017-05-05

    Abstract: 本发明公开了国产申威26010众核CPU上GEMM稠密矩阵乘高性能实现方法,针对国产申威众核处理器26010,并基于存储结构、访存、硬件流水线以及寄存器级通信机制等平台特性,优化矩阵分块与核间数据映射方法,设计了自顶向下的三级分块并行块矩阵乘算法,基于寄存器级通信机制设计从核计算资源数据共享方法,并利用主从核间异步DMA数据传输机制,设计了计算与访存重叠的双缓冲策略,在单个从核上,设计了循环展开策略与软件流水线排布方法,使用了高效的寄存器分块模式以及SIMD向量化乘加指令,实现函数优化。该高性能GEMM函数性能与单核开源BLAS数学库GotoBLAS相比,平均加速比为227.94,最高加速比为296.93。

    基于国产申威26010处理器的基2一维FFT的高性能实现方法

    公开(公告)号:CN106933777B

    公开(公告)日:2019-03-19

    申请号:CN201710150446.6

    申请日:2017-03-14

    Abstract: 本发明提出一种基于国产申威26010处理器的基2一维FFT的高性能实现方法,基于国产处理器申威26010平台,设计从核内行或列寄存器通信机制、访存‑计算重叠的双缓冲机制和256位单指令流多数据流的向量化运算等多种优化技术,同时提出基于两层分解的Stockham FFT计算框架且分解规则为库利‑图基算法,设计“接口层‑主核层‑从核层‑核心层”的四层结构框架进行基2一维FFT计算,从而有效解决FFT计算的访存带宽受限问题,有效提升基2一维FFT计算性能。与开源FFTW库相比,基于本平台的基2一维FFT计算性能急剧升高,以FFT计算的每秒浮点运算次数为例,其平均加速比为34.4,最高加速比达到50.3。

    基于国产申威26010处理器的基2一维FFT的高性能实现方法

    公开(公告)号:CN106933777A

    公开(公告)日:2017-07-07

    申请号:CN201710150446.6

    申请日:2017-03-14

    CPC classification number: G06F17/142

    Abstract: 本发明提出一种基于国产申威26010处理器的基2一维FFT的高性能实现方法,基于国产处理器申威26010平台,设计从核内行或列寄存器通信机制、访存‑计算重叠的双缓冲机制和256位单指令流多数据流的向量化运算等多种优化技术,同时提出基于两层分解的Stockham FFT计算框架且分解规则为库利‑图基算法,设计“接口层‑主核层‑从核层‑核心层”的四层结构框架进行基2一维FFT计算,从而有效解决FFT计算的访存带宽受限问题,有效提升基2一维FFT计算性能。与开源FFTW库相比,基于本平台的基2一维FFT计算性能急剧升高,以FFT计算的每秒浮点运算次数为例,其平均加速比为34.4,最高加速比达到50.3。

    申威26010众核CPU上GEMM稠密矩阵乘高性能实现方法

    公开(公告)号:CN107168683B

    公开(公告)日:2020-06-09

    申请号:CN201710310445.3

    申请日:2017-05-05

    Abstract: 本发明公开了申威26010众核CPU上GEMM稠密矩阵乘高性能实现方法,针对申威众核处理器26010,并基于存储结构、访存、硬件流水线以及寄存器级通信机制等平台特性,优化矩阵分块与核间数据映射方法,设计了自顶向下的三级分块并行块矩阵乘算法,基于寄存器级通信机制设计从核计算资源数据共享方法,并利用主从核间异步DMA数据传输机制,设计了计算与访存重叠的双缓冲策略,在单个从核上,设计了循环展开策略与软件流水线排布方法,使用了高效的寄存器分块模式以及SIMD向量化乘加指令,实现函数优化。该高性能GEMM函数性能与单核开源BLAS数学库GotoBLAS相比,平均加速比为227.94,最高加速比为296.93。

    基于浮点数压缩技术的大规模FFT实现方法及装置

    公开(公告)号:CN116502028B

    公开(公告)日:2023-10-20

    申请号:CN202310479328.5

    申请日:2023-04-28

    Abstract: 本公开涉及一种基于浮点数压缩技术的大规模FFT实现方法及装置,所述方法包括:对第i个维度的FFT计算结果进行共享指数浮点数压缩,并将压缩结果打包成第i个维度的压缩数据之后,拷贝至所述主机端;获取所述第i个维度的压缩数据后,对第i个维度的压缩数据依次进行解包和共享指数浮点数解压缩,并基于解压缩数据进行FFT计算,以得到第i+1个维度的FFT计算结果。本公开在压缩数据和解压缩数据时,在利用双重归一化技术来实现共享指数浮点数压缩技术,从而通过减少通信量来减少通信时间,并提高其并行效率。

    基于浮点数压缩技术的大规模FFT实现方法及装置

    公开(公告)号:CN116502028A

    公开(公告)日:2023-07-28

    申请号:CN202310479328.5

    申请日:2023-04-28

    Abstract: 本公开涉及一种基于浮点数压缩技术的大规模FFT实现方法及装置,所述方法包括:对第i个维度的FFT计算结果进行共享指数浮点数压缩,并将压缩结果打包成第i个维度的压缩数据之后,拷贝至所述主机端;获取所述第i个维度的压缩数据后,对第i个维度的压缩数据依次进行解包和共享指数浮点数解压缩,并基于解压缩数据进行FFT计算,以得到第i+1个维度的FFT计算结果。本公开在压缩数据和解压缩数据时,在利用双重归一化技术来实现共享指数浮点数压缩技术,从而通过减少通信量来减少通信时间,并提高其并行效率。

    一种大整数乘法Comba算法基于OpenMP的并行实现方法

    公开(公告)号:CN104793922B

    公开(公告)日:2017-08-25

    申请号:CN201510220528.4

    申请日:2015-05-04

    Abstract: 本发明公开了一种大整数乘法Comba算法基于OpenMP的并行实现方法,基于64位无符号长整型整数操作,通过添加三个临时数组存储加乘操作计算得到的中间结果,从而解决加乘运算与进位运算的数据相关性,将加乘操作与进位操作分开执行。在加乘操作阶段,基于中间结果每个数位求取时的计算独立性,通过OpenMP多线程编程采用动态调度策略实现加乘操作阶段的并行化,而进位阶段仍然串行执行来并行化Comba算法,提高算法效率。

Patent Agency Ranking