40 lines
962 B
Bash
Executable File
40 lines
962 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# 编译脚本 - 使用mpic++直接编译
|
|
|
|
echo "编译MPI-OpenMP矩阵乘法程序..."
|
|
|
|
# 编译串行版本
|
|
echo "编译串行版本..."
|
|
g++ -O3 -march=native gemm_serial.cpp -o gemm_serial
|
|
if [ $? -eq 0 ]; then
|
|
echo " 串行版本编译成功: gemm_serial"
|
|
else
|
|
echo " 串行版本编译失败!"
|
|
exit 1
|
|
fi
|
|
|
|
# 编译并行版本
|
|
echo "编译并行版本..."
|
|
mpic++ -O3 -march=native -fopenmp gemm_parallel.cpp -o gemm_parallel
|
|
if [ $? -eq 0 ]; then
|
|
echo " 并行版本编译成功: gemm_parallel"
|
|
else
|
|
echo " 并行版本编译失败!"
|
|
exit 1
|
|
fi
|
|
|
|
# 编译优化版本
|
|
echo "编译优化版本..."
|
|
mpic++ -O3 -march=native -fopenmp gemm_optimized.cpp -o gemm_optimized
|
|
if [ $? -eq 0 ]; then
|
|
echo " 优化版本编译成功: gemm_optimized"
|
|
else
|
|
echo " 优化版本编译失败!"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "所有版本编译完成!"
|
|
echo "可执行文件: gemm_serial, gemm_parallel, gemm_optimized"
|