Rainmaker's Notebook
『求雨巫师的神奇之处在于他总是躲着不见你,却总说刚下完的雨是拜他所赐。』——《天真的人类学家》
  • Home
  • Archives
  • About
  • SiteXC
  • 2019 日本游记,二:京阪神

    2019-02-12 |
    • { Travel }
    • { Japan }

    二:京阪神

    Read On »
  • 2019 日本游记,一:和歌山县

    2019-02-12 |
    • { Travel }
    • { Japan }

    一:和歌山县

    Read On »
  • SC18:年轻人的第一次学术会议

    2018-11-17 |
    • { HPC }
    • { Travel }
    • { Conference }

    本科眼馋 SC 三年了,读研以后终于可以去 SC 了。年轻人的第一次学术会议啊。

    Read On »
  • OpenMP fork-join cost 测试

    2018-09-20 |
    • { ICC }
    • { C }
    • { OpenMP }

    前两天和基友讨论问题的时候,想起来此之前先后在几个场合遇到过什么场合开 OpenMP 多线程的加速能抵过开线程的 overhead 这个问题。

    Read On »
  • 禁用 mmap 和 memory trip 来加速 MPI RMA

    2018-09-05 |
    • { MPI }
    • { Linux }

    这两天遇到一个小坑,和 MPI & Linux 内存管理有关。

    Read On »
  • 比起C++性能榨汁机,你可能更需要的是 -O3 和 ICC

    2018-05-24 |
    • { SIMD }
    • { ICC }
    • { C }

    前两天看到一个文章系列:《C++性能榨汁机》,其中前面四篇(第四篇)在讲分支预测和如何避免分支预测带来的性能下降问题。文章大体的思路是对的,只是我觉得手写条件传送代码实在是有点奇技淫巧,在绝大部分的情况下是不应该提倡的。我觉得比起条件传送代码,用 SIMD 加上掩码才是更直观的操作。我还是用原文的代码来说明这个问题。

    Read On »
  • 2D Poisson 方程与 Finite Element Method

    2018-02-04 |
    • { PDE }

    上周上 Advanced Scientific Computing 的时候老板讲了 2D Poisson 的有限元法,用的是四边形等参数单元。他布置的作业是写第一类边界条件的求解器。由于我印象中 FEM 用三角网格比较多,因此自己又对照着写了三角形等参数单元的版本,以及把第三类边界条件的情况也做了出来。下面是一点笔记,主要包括计算用到的公式和方法。

    Read On »
  • CUDA 与 OpenCL 简明对比

    2018-01-13 |
    • { CUDA }
    • { OpenCL }

    又称『如何一把梭在 CUDA 和 OpenCL 之间进行转换』。

    Read On »
  • 代数多重网格(Algebraic Multigrid)简介

    2018-01-01 |
    • { Multigrid }
    • { LinearSystemSolver }

    代数多重网格(AMG)是利用几何多重网格(Geometric Multigrid, GMG)的一些重要原则和理念发展起来的不依赖于实际几何网格的多重网格方法。它继承了几何多重网格的主要优点,并且可以被用于更多类型的线性方程组。本文将介绍 Classic AMG 的基本算法并忽略数学推导过程。

    Read On »
  • HPCG 3.0 reference implementation 阅读笔记

    2017-12-27 |
    • { Multigrid }
    • { LinearSystemSolver }
    • { MPI }
    • { PDE }

    HPCG (High-Performance Conjugate Gradient) 是如今主要的 HPC 系统性能测试基准之一,是一个精简的大型稀疏方程组并行求解器,包含了区域分解(Domain Decomposition)、多重网格(Multigrid)和预条件子(Preconditioner)这些重要的线性方程组求解技术。我在学完 MATH 6644 这门课以及自己动手写了 3D Multigrid 以后,我便一直想看看 HPCG 是如何实现的(虽然我还没学过 DD)。下面的记录是我阅读 HPCG 3.0 官方参考实现的源代码的笔记,源代码参见 GitHub .

    Read On »
« prev1234next »
© 2020 - Enigma Huang
Powered by Hexo , Theme - Icalm