{ GEMM }

  • COSMA 算法分析

    |

    最近由于业务需要,我对 COSMA (Communication-Optimal S-partitioned Matrix-multiplication Algorithm) 做了一番比较深入的研究。本文简要概括了并行矩阵乘法的发展历史和思路,并分析了 COSMA 算法的思路和实现。

  • CPU Case Study - Optimizing DGEMM

    |

    Yet Another GEMM Study.

    两年前我按 Ref. 1 的页面(以前还没有 GitHub Repo 和 Markdown pages 呢)做过一次 DGEMM Optimization,当时做的效果其实不是很好。去年叶老师给我看了一下 BLIS 这个项目,说里面分块和分级 Cache 的思路值得一看。前两天一搜,居然出了 Ref. 2 这个 Repo,有如此详细的指导和参考代码,不自己造一次轮子简直说不过去了。我最后撸出来的代码在 这里

  • CUDA Case Study - SGEMM on Pascal

    |

    最近自己重新学 CUDA (以前上过课,长时间不用又忘记了),找些经典的 case study 自己照猫画虎弄一次加深一点认识。HPC 领域里一个绕不开的例子就是 xGEMM,即稠密矩阵-矩阵乘法。网上关于 CUDA 如何实现高性能 xGEMM 的介绍不多,而且很多都是 Fermi 时代的资料,面对 Kepler 有详细介绍的只有 Ref No.2 那个网页。我以 Ref No.1, No.2 两个网页的资料和代码为蓝本,一并参考了其他一些文章,自己动手实践了一下,代码在 这里