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 如下

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.点击逐过程

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

相关推荐
二哈喇子!3 天前
MySQL命令行导入数据库
数据库·sql·mysql·vs code
二哈喇子!3 天前
使用 VS Code 连接 MySQL 数据库
vs code
游学者6 天前
Docker 升级后 VS Code 本地调试 AWS Lambda 报「Running AWS SAM projects locally requires Docker」的那些坑与排查思路
aws·lambda·vs code
lucky-billy1 个月前
使用 VS Code 通过 SSH 编译 Linux C++ 程序
linux·ssh·vs code·远程编译
钱彬 (Qian Bin)2 个月前
从零开始发表SCI论文—第1篇:安装Latex写作工具
latex·vs code·sci论文·环境准备
HackerTom2 个月前
vs code jupyter连gpu结点kernel
python·jupyter·gpu·vs code·远程
oscar9995 个月前
在VS Code中直接操控浏览器
vs code·browser
!win !5 个月前
Trae/Vs Code/Cursor命令行无法跑npm命令
开发工具·vs code·cursor·trae
漫步企鹅5 个月前
【VS Code - Qt】如何基于Docker Linux配置Windows10下的VS Code,开发调试ARM 版的Qt应用程序?
linux·qt·docker·arm·vs code·开发调试
R.X. NLOS7 个月前
VS Code远程开发新方案:使用SFTP扩展解决Remote-SSH连接不稳定问题
运维·服务器·ssh·debug·vs code