You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/learning-paths/embedded-and-microcontrollers/streamline-kernel-module/4_sl_profile_oot.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@ Once Streamline is installed on the host machine, you can capture trace data of
28
28
To communicate with the target, Streamline requires a daemon, called **gatord**, to be installed and running on the target. gatord must be running before you can capture trace data. There are two pre-built gatord binaries available in Streamline's install directory, one for *Armv7 (AArch32)* and one for *Armv8 or later(AArch64)*. Push **gatord** to the target device using **scp**.
@@ -54,14 +54,14 @@ Select **Select counters** to open the counter configuration dialogue.
54
54
Add `L1 data Cache: Refill` and `L1 Data Cache: Access` and enable Event-Based Sampling (EBS) for both of them as shown in the screenshot and select **Save**.
55
55
56
56
{{% notice Further reading %}}
57
-
To learn more about counters and how to configure them please refer to [counter configuration guide](https://developer.arm.com/documentation/101816/latest/Capture-a-Streamline-profile/Counter-Configuration)
57
+
To learn more about counters, see the Arm Developer [Counter Configuration Guide](https://developer.arm.com/documentation/101816/latest/Capture-a-Streamline-profile/Counter-Configuration).
58
58
59
-
To learn more about EBS, please refer to [Streamline user guide](https://developer.arm.com/documentation/101816/9-7/Capture-a-Streamline-profile/Counter-Configuration/Setting-up-event-based-sampling)
59
+
To learn more about EBS, see the [Streamline User Guide](https://developer.arm.com/documentation/101816/9-7/Capture-a-Streamline-profile/Counter-Configuration/Setting-up-event-based-sampling).
60
60
{{% /notice %}}
61
61
62
62

63
63
64
-
In the **Command** section, add the same shell command you used earlier to test our Linux module.
64
+
In the **Command** section, add the same shell command you used earlier to test our Linux module:
65
65
66
66
```bash
67
67
sh -c "echo 10000 > /dev/mychardrv"
@@ -93,12 +93,12 @@ In the **Functions** tab, look for the function `char_dev_cache_traverse()`. You
93
93
94
94
To view the call path for `char_dev_cache_traverse()`, right-click the function name and select **Select in Call Paths**.
95
95
96
-
This opens the Call Paths tab, where you can trace which functions called `char_dev_cache_traverse()`. In the **Locations** column, you'll see the sequence of calls—starting from the userspace `echo` command and ending in your kernel module `mychardrv.ko`. This helps you understand how execution flows from userspace into your kernel code, making it easier to spot where performance issues might begin.
96
+
This opens the **Call Paths** tab, where you can trace which functions called `char_dev_cache_traverse()`. In the **Locations** column, you'll see the sequence of calls—starting from the userspace `echo` command and ending in your kernel module `mychardrv.ko`. This helps you understand how execution flows from userspace into your kernel code, making it easier to spot where performance issues might begin.
97
97

98
98
99
99
Because you compiled your kernel module with debug information, Streamline can show you exactly which lines of code are responsible for cache misses.
100
100
101
-
Double-tap the function name to open the *Code* tab. The top half of this view highlights each line of your source code and shows how many cache misses it caused. The bottom half displays the disassembly for those lines, with counter values for each assembly instruction. This makes it easy to spot which parts of your code are causing performance issues.
101
+
Double-tap the function name to open the **Code** tab. The top half of this view highlights each line of your source code and shows how many cache misses it caused. The bottom half displays the disassembly for those lines, with counter values for each assembly instruction. This makes it easy to spot which parts of your code are causing performance issues.
102
102

0 commit comments