当前位置: 首页 > news >正文

MPI,Pthreads和OpenMP等并行实验环境配置

(假设你已按照文档前面的步骤正确安装了 VMware 和 Ubuntu 20.04)

第一部分:安装 C++/OpenMP/Pthreads 环境(修正后)

  1. 打开终端: 在 Ubuntu 中启动终端应用程序。

  2. 更新软件包列表:

          sudo apt update

    (提示时输入你的用户密码

  3. 安装编译工具: 这会安装 gcc, g++, make 以及必要的开发库,其中包含了对 OpenMP 和 Pthreads 的基础支持。

          sudo apt install build-essential

  4. 验证 GCC 安装(可选):

          gcc --version

    • 关于 OpenMP: GCC 自带 OpenMP 支持。要编译使用 OpenMP 的代码,必须在编译和链接时添加 -fopenmp 标志。例如:gcc -fopenmp my_openmp_code.c -o my_openmp_program

    • 关于 Pthreads: Pthreads 库 (libpthread) 是 build-essential 提供的标准 C 库 (glibc) 的一部分。要编译使用 Pthreads 的代码,添加 -pthread 标志。例如:gcc my_pthread_code.c -o my_pthread_program -pthread

第二部分:安装 MPI 环境(MPICH 4.3.0 - 修正后)

  1. 下载 MPICH:

    • 访问 MPICH 官方下载页面:https://www.mpich.org/downloads/

    • 找到最新稳定版本的链接(例如 mpich-4.3.0.tar.gz)。

    • 打开终端,切换到你想要下载文件的目录(例如,下载文件夹:cd ~/Downloads),然后使用 wget 下载:

            # 如果有更新的稳定版本,请替换下面的 URL
      wget https://www.mpich.org/static/downloads/4.3.0/mpich-4.3.0.tar.gz

  2. 解压压缩包:无需 sudo

          tar -zxvf mpich-4.3.0.tar.gz

  3. 进入源码目录:

          cd mpich-4.3.0

  4. 配置构建过程: (以普通用户身份运行,无需 sudo

    • 选择一个安装目录。推荐安装在你的主目录下,这样安装时就不需要 sudo。例如:$HOME/mpi/mpich-4.3.0。

    • 运行配置脚本,指定安装前缀 (--prefix) 并禁用 Fortran(除非你需要它并且已经安装了 gfortran)。

            mkdir -p $HOME/mpi
      ./configure --prefix=$HOME/mpi/mpich-4.3.0 --disable-fortran

    • (等待配置过程完成。它会详细检查你的系统环境。)

  5. 编译 MPICH: (以普通用户身份运行,无需 sudo

    • -j N 标志可以通过使用 N 个并行任务来加速编译。将 N 替换为你分配给虚拟机的 CPU 核心数(例如,按文档是 4)。

            make -j4
    • (这一步会花费一些时间。)

  6. 安装 MPICH: (以普通用户身份运行,无需 sudo,因为安装目录在你的主目录下)

          make install

  7. 配置环境变量:

    • 打开你的 .bashrc 文件进行编辑(无需 sudo):

            gedit ~/.bashrc

    • 滚动到文件末尾,添加以下行(如果你选择了不同的安装前缀,请相应修改 MPI_ROOT 的路径):

            # MPICH Environment Settings
      export MPI_ROOT=$HOME/mpi/mpich-4.3.0
      export PATH=$MPI_ROOT/bin:$PATH
      export LD_LIBRARY_PATH=$MPI_ROOT/lib:$LD_LIBRARY_PATH
      export MANPATH=$MPI_ROOT/man:$MANPATH
    • 保存文件并关闭 gedit。

  8. 应用环境变量更改: 让刚才的修改在当前终端会话中生效:

          source ~/.bashrc

    (或者,关闭当前终端,然后重新打开一个新的终端。)

  9. 验证安装: 检查系统是否能找到 MPICH 的命令和库:

          which mpicc
    which mpiexec
    mpicc --version

    • 你应该能看到指向你安装目录的路径(例如 /home/你的用户名/mpi/mpich-4.3.0/bin/mpicc)以及版本信息。

  10. 运行示例进行测试:

    • 切换到你之前解压的 MPICH 源代码 目录下的 examples 文件夹:

            # 假设你还在 ~/Downloads/mpich-4.3.0 目录下,或者切换回去
      cd examples

    • 使用 4 个进程运行 cpi(计算 Pi)示例:

            mpiexec -n 4 ./cpi

    • 你应该会看到类似以下的输出:

            Process 0 of 4 is on 你的主机名
      Process 1 of 4 is on 你的主机名
      Process 2 of 4 is on 你的主机名
      Process 3 of 4 is on 你的主机名
      pi is approximately 3.1415926544231239, Error is 0.0000000008333307
      wall clock time = 0.xxxxxx

这样就完成了在你的 Ubuntu 虚拟机上针对 C++, OpenMP, Pthreads, 以及 MPICH 4.3.0 的环境配置。

相关文章:

  • n8n 快速入门2:构建自动化工作流
  • Scartch038(四季变换)
  • SSE技术的基本理解以及在项目中的使用
  • C++日志系统实现(一)
  • redis----通用命令
  • windows鼠标按键自定义任意设置
  • ubuntu修改时区和设置24小时格式时间
  • 分布式系统中的 ActiveMQ:异步解耦与流量削峰(一)
  • 潮乎盲盒商城系统全开源多级分销推广海报奖品兑换试玩概率OSS云存储多端源码
  • 《Java高级编程:从原理到实战 - 进阶知识篇五》
  • Qt中QVector的实现与简化
  • 统计学中的p值是什么?怎么使用?
  • TS 枚举类型
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】4.2 数据类型转换(CAST函数/自定义函数)
  • WSL在D盘安装Ubuntu
  • 8.5 从零到生产:Docker+K8s+CI/CD全链路部署实战手册
  • 【SpringAI+阿里云百炼】AI对话4个Demo
  • 40. 组合总和 II
  • 洛谷 P2866 [USACO06NOV] Bad Hair Day S
  • Untiy基础学习(五)Inspector窗口中可编辑的变量
  • 贵州省委省政府迅速组织开展黔西市游船倾覆事故救援工作
  • 美“群聊泄密门”始作俑者沃尔兹将离职
  • 魔都眼|买买买,老铺黄金新店开业被挤爆:有人排队5小时
  • 西湖大学2025年上海市综合评价招生简章发布
  • 证监会:坚决拥护党中央对王建军进行纪律审查和监察调查决定
  • 神十九乘组安全顺利出舱