湖南大学信息科学与工程学院本科生实验报告
(2022 学年秋季学期)
课程名称:高性能计算导论
实验内容
1.通过 OpenMP 实现通用矩阵乘法
通过 OpenMP 实现通用矩阵乘法(实验 1)的并行版本,OpenMP
并行线程从 1 增加至 8,矩阵规模从 512 增加至 2048。
通用矩阵乘法(GEMM)通常定义为:
C = AB
𝐶
m,n
=
𝑁
𝑛
=
1
𝐴
𝑚,𝑛
𝐵
𝑛,𝑘
输入:M , N, K 三个整数(512 ~2048)
问题描述:随机生成 M*N 和 N*K 的两个矩阵 A,B,对这两个矩阵做
乘法得到矩阵 C.
输出:A,B,C 三个矩阵以及矩阵计算的时间(思考下数据依赖)
2.基于 OpenMP 的通用矩阵乘法优化
分别采用 OpenMP 的默认任务调度机制、静态调度 schedule(static,
1) 和动态调度 schedule(dynamic,1)的性能,实现#pragma omp for,
并比较其性能。