From 8be8abebf31ae99fdb90102e549dd9ad65edcaa2 Mon Sep 17 00:00:00 2001 From: Na Cui Date: Wed, 7 Aug 2024 10:51:26 +0800 Subject: [PATCH] doc: add cpu usage in acrntrace This patch adds the description of newly added parameter of acrntrace analyzer, as well as the user guide that how to analyze the cpu usage of VMs in cpu sharing case. Tracked-On: #8621 Signed-off-by: Na Cui --- doc/tutorials/debug.rst | 10 ++++++++++ doc/tutorials/images/debug_image29.png | Bin 0 -> 65807 bytes misc/debug_tools/acrn_trace/README.rst | 3 +++ 3 files changed, 13 insertions(+) create mode 100644 doc/tutorials/images/debug_image29.png diff --git a/doc/tutorials/debug.rst b/doc/tutorials/debug.rst index 7b594ecca..13facbaef 100644 --- a/doc/tutorials/debug.rst +++ b/doc/tutorials/debug.rst @@ -159,6 +159,16 @@ reason and times of each vm_exit after we have done some operations. vmexit summary information +4. Use the command to get a summary of cpu usage in cpu-sharing case:: + + # acrnalyze.py -i /home/trace/acrntrace/20231122-054116/0 -o cpu_usage --cpu_usage + + .. figure:: images/debug_image29.png + :align: center + + cpu usage summary information + + Using Self-Defined Trace Event ID to Analyze Trace ================================================== diff --git a/doc/tutorials/images/debug_image29.png b/doc/tutorials/images/debug_image29.png new file mode 100644 index 0000000000000000000000000000000000000000..8652deaa5b69bf8c30b7127e904d717cbfd6f045 GIT binary patch literal 65807 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 literal 0 HcmV?d00001 diff --git a/misc/debug_tools/acrn_trace/README.rst b/misc/debug_tools/acrn_trace/README.rst index fd6119d9d..be07e954f 100644 --- a/misc/debug_tools/acrn_trace/README.rst +++ b/misc/debug_tools/acrn_trace/README.rst @@ -75,6 +75,7 @@ Options: -f, --frequency=unsigned_int TSC frequency in MHz --vm_exit generate a vm_exit report --irq generate an IRQ-related report +--cpu_usage generate a cpu_usage report .. note:: The tool depends on TSC frequency to do time-based analysis. Be sure to configure the right TSC frequency that ACRN runs on. TSC frequency can be @@ -140,6 +141,8 @@ data to your development computer (Linux system), and run the analysis tool. - The analysis report is written to stdout, or to a CSV file if a file name is specified using ``-o filename``. - The scripts require Python3. + - If want to analyze cpu usage of each VM in cpu-sharing case, use ``--cpu_usage`` + to replace. Build and Install *****************