VS Code连接远程Linux服务器调试MPI程序

1.在 VS Code 上安装扩展

  • C/C++

2.通过 VS Code 连接远程 Linux 服务器

3.通过 VS Code 在远程 Linux 服务器上安装扩展

  • C/C++

4.打开远程 Linux 服务器上的文件夹

【注】本文以 /root/ 为例。

5.创建项目文件夹,并在项目文件夹下创建MPI程序

在这里插入图片描述
在这里插入图片描述

6.点击左侧菜单栏的“运行和调试”,点击“创建 launch.json文件”

【注】需要确保右侧已打开 test.c 文件

7.修改 launch.json 如下

{
   
    "version": "0.2.0",
    "configurations": [
        {
   
            "name": "(gdb) 附加",
            "type": "cppdbg",
            "request": "attach",
            "processId": "${command:pickProcess}",
            "program": "/root/demo/test", // 编译后的程序路径
            "MIMode": "gdb",
            "miDebuggerPath": "/usr/bin/gdb", // 调试器路径
            "setupCommands": [
                {
   
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
   
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        },
    ]
}

8.添加循环sleep()函数,让程序等待

在这里插入图片描述

9.编译MPI程序

【注】加上 -g 选项
在这里插入图片描述

10.运行MPI程序

在这里插入图片描述

11.按 F5,输入 test,选择其中一个进程

在这里插入图片描述

12.按 ctrl+shift+p,点击在新窗口复制工作区

在这里插入图片描述

13.在新窗口按 F5,输入 test,选择另一个进程

在这里插入图片描述

14.点击暂停按钮(两个工作区都执行)

在这里插入图片描述

15.手动修改debug变量为0(两个工作区都执行)

在这里插入图片描述

16.点击逐过程

【注】逐过程可以仅单个进程一步步执行。但在一步步逐过程中,会出现当前进程暂停的现象。这可能是因为当前进程走到了同步点,需要等待其它所有进程都到达同步点之后,才能继续往下执行。因此,此时需要将其它进程逐过程到代码的同一个地方。
在这里插入图片描述

相关推荐

  1. vscode连接远程服务器失败

    2023-12-17 09:28:02       56 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-17 09:28:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-17 09:28:02       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-17 09:28:02       87 阅读
  4. Python语言-面向对象

    2023-12-17 09:28:02       96 阅读

热门阅读

  1. 第二百一十回

    2023-12-17 09:28:02       69 阅读
  2. 最大距离。

    2023-12-17 09:28:02       54 阅读
  3. react面试总结3

    2023-12-17 09:28:02       46 阅读
  4. 力扣题目学习笔记(OC + Swift) 13. 罗马数字转整数

    2023-12-17 09:28:02       58 阅读
  5. 12.13每日一题(备战蓝桥杯快速排序)

    2023-12-17 09:28:02       49 阅读
  6. 【docker】docker安装Mysql

    2023-12-17 09:28:02       53 阅读
  7. Python学习笔记第七十八天(OpenCV鼠标事件)

    2023-12-17 09:28:02       52 阅读
  8. 使用boost::range_const_iterator的示例程序 - 编程

    2023-12-17 09:28:02       64 阅读
  9. [python高级编程]:02-类

    2023-12-17 09:28:02       69 阅读
  10. .NET基础面试题一

    2023-12-17 09:28:02       58 阅读
  11. oracle 10046事件跟踪

    2023-12-17 09:28:02       55 阅读
  12. LeetCode经典150题Golang版.189. 轮转数组

    2023-12-17 09:28:02       69 阅读