沐曦通用GPU科学计算用户手册
1. 概述
1.1. 编写目的
1.2. 科学计算软件框架介绍
1.3. 适用产品
2. MXMACA容器化应用
2.1. 基于Docker的容器化应用
2.1.1. 验证编译和运行环境
2.1.2. 发布MXMACA的应用程序
2.1.2.1. 容器提交构建方式
2.1.2.2. Dockerfile构建方式
2.2. 基于Singularity的容器化应用
2.2.1. 示例
2.3. 基于Slurm集群的容器化应用
2.3.1. 示例
3. mcThrust并行库
3.1. 并行算法
3.1.1. thrust::transform
3.1.2. thrust::reduce
3.1.3. thrust::copy
3.2. 迭代器iterator
3.2.1. thrust::constant_iterator
3.2.2. thrust::counting_iterator
3.2.3. thrust::permutation_iterator
3.2.4. thrust::transform_iterator
3.2.5. thrust::zip_iterator与thrust::tuple
4. 统一寻址内存模型
4.1. 使用方法
4.2. 技术实现
4.3. 使用示例(C++)
4.3.1. 示例1
4.3.2. 示例2
5. OpenMP与OpenACC
5.1. OpenMP
5.1.1. 计算构件
5.1.1.1. 代码示例1
5.1.1.2. 代码示例2
5.1.2. 数据管理
5.1.2.1. 代码示例
5.2. OpenACC
5.2.1. 计算构件
5.2.1.1. Kernels构件
5.2.1.2. Parallel构件
5.2.1.3. Loop构件
5.2.2. 数据管理
5.2.2.1. 代码示例
6. Fortran
6.1. 调用MXMACA
6.2. 代码示例
7. MPI通讯协议
7.1. 常用API
7.2. 使用示例
8. 并行编程库适配
8.1. Kokkos与RAJA
8.2. Kokkos与RAJA的基本用法
8.2.1. 安装与编译
8.2.2. 应用程序的编译与执行
8.2.3. 代码示例
8.2.3.1. Kokkos代码示例
8.2.3.2. RAJA代码示例
8.3. Kokkos/RAJA与MXMACA平台的适配
8.3.1. shuffle相关接口的使用
8.3.2. 汇编指令
9. 高性能求解器适配
9.1. PETSc与HYPRE
9.2. PETSc与HYPRE的使用
10. METAX DockerHub HPC APP
10.1. 基准测试
10.1.1. HPL
10.1.2. macaHPCG
10.1.3. SHOC
10.2. 材料力学与分子动力学
10.2.1. VASP
10.2.2. CP2K
10.2.3. GROMACS
10.2.4. LAMMPS
10.2.5. OpenMM
10.2.6. NAMD
10.2.7. Amber
10.3. 并行编程库
10.3.1. RAJA
10.3.2. Kokkos
10.4. 求解器
10.4.1. PETSc
10.4.2. HYPRE
10.5. 生物医学与健康
10.5.1. AutoDock
10.5.2. BlastP
10.5.3. RELION
10.5.4. BART
10.6. 力学
10.6.1. PyFR
10.6.2. METAXFOAM(OpenFOAM)
10.6.3. SPECFEM3D
10.7. 可视化
10.7.1. Cycles
11. 附录
11.1. 术语/缩略语
沐曦通用GPU科学计算用户手册
索引
索引