diff options
author | Robert Walker <robert.walker@arm.com> | 2018-11-15 15:55:19 +0000 |
---|---|---|
committer | Mike Leach <mike.leach@linaro.org> | 2018-11-29 13:48:54 +0000 |
commit | d39a1473a10b1b744bace77780a67aa41e24941b (patch) | |
tree | c1af6a96f32b575ad28eade667c5a75a211bc730 | |
parent | 067791e2ba403cb446dfc72546c967baec56bfb7 (diff) |
Update AutoFDO guide
Update AutoFDO guide with links to CoreSight backports repository.
Update reference links.
Remove unfinished section.
Signed-off-by: Robert Walker <robert.walker@arm.com>
-rw-r--r-- | decoder/tests/auto-fdo/autofdo.md | 28 |
1 files changed, 10 insertions, 18 deletions
diff --git a/decoder/tests/auto-fdo/autofdo.md b/decoder/tests/auto-fdo/autofdo.md index a4c40cac985d..b1f22417b50e 100644 --- a/decoder/tests/auto-fdo/autofdo.md +++ b/decoder/tests/auto-fdo/autofdo.md @@ -87,8 +87,14 @@ kernel and many targets are using older kernels. To enable CoreSight trace on these targets, Arm have provided backports of the latest CoreSight drivers and ETM strobing patch at: - [TODO: link to git repos for CoreSight backports] - + <http://linux-arm.org/git?p=linux-coresight-backports.git> + +This repository can be cloned with: + +``` +git clone git://linux-arm.org/linux-coresight-backports.git +``` + You can include these backports in your kernel by either merging the appropriate branch using git or generating patches (using `git format-patch`). @@ -237,8 +243,8 @@ cycles. With these proof-of-concept patches, the strobe parameters are configured via sysfs - each ETM will have `strobe_window` and `strobe_period` parameters in `/sys/bus/coresight/devices/NNNNNNNN.etm` and these values will have to be written to each (In a future version, this -will be integrated into the drivers and perf tool). The attached `record.sh` -(TODO: attach!) script automates this process. +will be integrated into the drivers and perf tool). The `record.sh` +script in this directory [`<opencsd>/decoder/tests/auto-fdo`] automates this process. To collect trace from an application using ETM strobing, run: @@ -398,24 +404,10 @@ Use `create_gcov` for gcc. ## References * AutoFDO tool: <https://github.com/google/autofdo> - * Build fix: <https://github.com/google/autofdo/pull/73> * GCC's wiki on autofdo: <https://gcc.gnu.org/wiki/AutoFDO>, <https://gcc.gnu.org/wiki/AutoFDO/Tutorial> * Google paper: <https://ai.google/research/pubs/pub45290> * CoreSight kernel docs: Documentation/trace/coresight.txt -## Troubleshooting - -TODO: - -* Record simple program (e.g. /bin/ls) - * examine raw trace - look for overflows, corruption -* Check no errors reported - * mmap error indicates no route from source to sink - bad device tree - * try nearer sink - * data loss warning - bandwidth problems - * What if data loss is reported? - * Don't worry - strobing - ## Appendix: Describing CoreSight in Devicetree |