HPC调试器功能说明
高性能计算(High-Performance Computing)是指利用大规模、高速、并行处理的计算机系统来解决复杂的科学、工程和商业问题的计算方法和技术。高性能计算的目标是通过利用大量的计算资源和并行处理能力,以高效、快速、准确的方式进行计算,从而加快问题的求解速度和提高计算的精度。
HPC详细内容请参见https://support.huawei.com/enterprise/zh/doc/EDOC1100454741/8484b898?idPath=23710424|251364417|251364851|252309137|262039693。
HPC调试器提供HPC场景多节点并行调试能力,支持以Launch、Attach模式调试MPI、MPI+OpenMP应用。
命令功能
支持对MPI及MPI+OpenMP程序进行Launch调试,仅支持mpirun命令运行方式。
支持对MPI及MPI+OpenMP程序进行Attach调试,仅支持Slurm调度器的srun运行方式。
 Launch调试通过调试器直接启动并管理程序全生命周期,一般用于本地开发中的全周期调试;而Attach调试则是将调试器实时附加到已运行进程,适用于无法直接启动或需动态介入的调试场景。
支持的编程语言包括C、C++和Fortran。
命令格式
Launch模式:
1 | debugger launch [-h | --help] {-w APP_WORKLOAD | --workload APP_WORKLOAD} {-s SOURCE_PATH | --source SOURCE_PATH} {-m MPIRUN_CMD | --mpicmd MPIRUN_CMD} {-p RPC_SERVER_PORT | --port RPC_SERVER_PORT} [-l {0,1,2,3} | --log-level {0,1,2,3}] [-e ENVIRONMENT_VARIABLES | --env ENVIRONMENT_VARIABLES] [-a APP_ARGS | --args APP_ARGS] [-n THREAD_NUM | --threads THREAD_NUM]  | 
Attach模式:
1 | debugger attach [-h | --help] {-w APP_WORKLOAD | --workload APP_WORKLOAD} {-s SOURCE_PATH | --source SOURCE_PATH}{-r RUN_MODE | --run-mode RUN_MODE}{-j JOB_ID | --job JOB_ID} {-p RPC_SERVER_PORT | --port RPC_SERVER_PORT} [-l {0,1,2,3} | --log-level {0,1,2,3}] [-e ENVIRONMENT_VARIABLES | --env ENVIRONMENT_VARIABLES]  | 
参数说明
参数  | 
参数选项  | 
参数说明  | 
|---|---|---|
-h/--help  | 
-  | 
可选参数,获取帮助信息。  | 
-w/--workload  | 
-  | 
必选参数,待调试程序可执行文件路径。 例如:/home/test/mpi_demo  | 
-s/--source  | 
-  | 
必选参数,待调试程序源码文件目录。 例如:/home/test  | 
-m/--mpicmd  | 
-  | 
必选参数,需执行的mpirun命令,需使用英文双引号引起来。 例如:“mpirun --allow-run-as-root -np 4”  | 
-p/--port  | 
-  | 
必选参数,Agent Server运行端口号,设置后用于上报启动信息。  | 
-l/--log-level  | 
0/1/2/3  | 
可选参数,设置日志级别,默认为1。 
  | 
-e/--env  | 
-  | 
可选参数,设置环境变量,设置时需使用英文双引号引起来。有以下3种方式可选,可根据实际情况进行修改。 
 例如:“export PATH=$PATH:/path/to/mpi”  | 
-a/--args  | 
-  | 
可选参数,设置待调试程序运行参数,若存在多个参数需使用空格隔开。  | 
-n/--threads  | 
-  | 
可选参数,输入的OpenMP应用thread数量,取值范围1~1024。  | 
参数  | 
参数选项  | 
参数说明  | 
|---|---|---|
-h/--help  | 
-  | 
可选参数,获取帮助信息。  | 
-w/--workload  | 
-  | 
必选参数,待调试程序可执行文件路径。 例如:/home/test/mpi_demo  | 
-s/--source  | 
-  | 
必选参数,待调试程序源码文件目录。 例如:/home/test  | 
-r/--run-mode  | 
-  | 
必选参数,指定程序的运行方式,仅支持Slurm调度器运行方式。 
  | 
-j/--job  | 
-  | 
必选参数,指定job ID。  | 
-p/--port  | 
-  | 
必选参数,Agent Server运行端口号,设置后用于上报启动信息。  | 
-l/--log-level  | 
0/1/2/3  | 
可选参数,设置日志级别,默认为1。 
  | 
-e/--env  | 
-  | 
可选参数,设置环境变量,设置时需使用英文双引号引起来。有以下3种方式可选,可根据实际情况进行修改。 
 例如:“export PATH=$PATH:/path/to/mpi”  | 
使用示例
执行以下命令,查看HPC调试器支持的功能信息:
1 | devkit debugger -h  | 
返回信息如下:
1 2 3 4  | The most commonly used debugger sub commands are: launch Starts and debugs a program directly from the development environment. attach Connects the debugger to an already running process for real-time debugging. See 'COMMAND -h/--help' for more information on a specific command.  |