分析采集的数据

对采集的数据进行分析并展示时序图,通过时序图能可视化函数调用信息以及进线程之间的创建关系,定位网络问题;分析并展示兼容性信息,识别K-NET网络加速套件与用户业务之间的亲和性。

命令功能

分析采集的数据并展示时序图以及兼容性信息。

命令格式

分析并展示时序图:

devkit advisor knet [-h | --help] {seq-diag} {-d DIR_OF_RECORDED_DATA} {-o OUTPUT_FILE_PATH} [-c CONFIG_FILE_PATH] [--max-threads MAX_NUM_OF_THREADS_TO_DISPLAY] [--func-limit MAX_NUM_OF_FUNC_CALLS_TO_DISPLAY] [--tids TIDS_TO_DISPLAY] [-l {0,1,2,3} | --log-level {0,1,2,3}] [--set-timeout TIMEOUT]

分析并展示兼容性信息:

devkit advisor knet [-h | --help] {compat} {-d DIR_OF_RECORDED_DATA} {-c JSON_CONF_FILE_PATH} [-l {0,1,2,3} | --log-level {0,1,2,3}] [--set-timeout TIMEOUT]

参数说明

表1 展示时序图参数说明

参数

参数选项

参数说明

-h/--help

-

获取帮助信息。

-o

OUTPUT_FILE_PATH

必选参数,指定待输出的时序图文件的路径,时序图文件为.md格式。

-c

CONFIG_FILE_PATH

指定配置文件路径,指定时只展示配置文件中的函数时序图,若不指定该参数,则显示数据文件里的所有函数时序图。

-d

DIR_OF_RECORDED_DATA

必选参数,指定存放数据文件的目录。

--max-threads

MAX_NUM_OF_THREADS_TO_DISPLAY

指定展示的最大线程数。当线程数过大的时候可以指定该参数,和--tids参数冲突,不能同时指定。

--func-limit

MAX_NUM_OF_FUNC_CALLS_TO_DISPLAY

指定在单个线程内单个函数的最大展示次数。当某个函数调用次数过多的时候可以指定该参数。

--tids

TIDS_TO_DISPLAY

TID数组,指定时只展示指定TID的时序图。当线程数过大的时候可以指定该参数。与--max-threads参数冲突,不能同时指定。

-l/--log-level

0/1/2/3

设置日志级别,默认为1。

  • 0:日志级别为DEBUG。
  • 1:日志级别为INFO。
  • 2:日志级别为WARNING。
  • 3:日志级别为ERROR。

--set-timeout

-

任务超时时间,单位为分钟,若执行时间超过超时时间则退出执行。默认无超时时间,任务将持续执行直到结束。

表2 展示兼容性参数说明

参数

参数选项

参数说明

-h/--help

-

获取帮助信息。

-c

JSON_CONF_FILE_PATH

必选参数,指定json格式的兼容性配置文件的路径。

说明:

工具提供配置文件模板compat_conf.json,配置文件模板路径为“/root/CLI/DevKit-CLI-xxx-Linux-Kunpeng/advisor/devkitplugins/affinity/tools/compileopt/templates/compat_conf.json”。

“/root/CLI/DevKit-CLI-xxx-Linux-Kunpeng/”为命令行工具安装路径。

-d

DIR_OF_RECORDED_DATA

必选参数,指定存放数据文件的目录。

-l/--log-level

0/1/2/3

设置日志级别,默认为1。

  • 0:日志级别为DEBUG。
  • 1:日志级别为INFO。
  • 2:日志级别为WARNING。
  • 3:日志级别为ERROR。

--set-timeout

-

任务超时时间,单位为分钟,若执行时间超过超时时间则退出执行。默认无超时时间,任务将持续执行直到结束。

使用示例

运行以下命令,查看时序图及兼容性支持的功能信息:
1
devkit advisor knet -h

返回信息如下:

OVERVIEW
    Run this command to analyze the POSIX call information collected by librecord.so, generate a sequence diagram or display compatibility.

USAGE
    devkit advisor knet [POSITIONAL ARGUMENTS] [OPTIONS]

POSITIONAL ARGUMENTS
      {seq-diag,compat}     Modes of KNet
        seq-diag            Analyze and Display the Sequence Diagram
        compat              Analyze and Display the Compatibility

OPTIONS
      -l {0,1,2,3}, --log-level {0,1,2,3}
                            Specifies the log level of the current task. The default value is INFO.
      --set-timeout TIMEOUT
                            Specifies the timeout period of a task. By default, the timeout period is not set.