Commit Graph

11 Commits

Author SHA1 Message Date
Jonathan R. Madsen d32fa054f5 HSA support (#6)
- Adds HSA activity and API tracing support to perfetto

[ROCm/rocprofiler-systems commit: eacb78fc3e]
2021-09-09 13:02:33 -05:00
Jonathan R. Madsen 244b308cb5 Integrated perfetto + roctracer (#5)
- hosttrace library automatically collects and merges timestamps for HIP API calls and kernels with the host-side instrumentation
  - mostly eliminates the need for using external rocprof
- added thread_instruction_count in perfetto output
- increased hosttrace min_loop_address_range to 512
- disabled instrumenting functions with dynamic callsites by default
- miscellaneous cmake updates

* roctracer support

- fully integrated perfetto + roctracer outputs
- thread_instruction_count in perfetto
- increased min_loop_address_range to 512
- disabled instrumenting functions with dynamic callsites by default
- updated timemory submodule

* hosttrace_launch_compiler

- support for using an alternative compiler as needed via launch compiler
- elfio added as submodule (not currently used)
- miscellaneous cmake updates

* README update + host/device categories + misc

- timemory fix for TIMEMORY_ROCTRACER_ENABLED
- transpose fix

* papi_tuple_t -> papi_tot_ins

- minor fix to Findroctracer.cmake

[ROCm/rocprofiler-systems commit: a061b7947f]
2021-09-06 22:23:24 -05:00
Jonathan R. Madsen 7435122726 Minor fix to README (#4)
[ROCm/rocprofiler-systems commit: b6e65d69f6]
2021-09-02 13:17:25 -05:00
Jonathan R. Madsen 055a3fba87 Updated documentation + misc (#3)
- tweaked some CMake option names
- moved merge-trace.jl to hosttrace-merge.jl
- removed Windows line encodings from hosttrace-merge.jl
- improved handling of !perfetto and !timemory

[ROCm/rocprofiler-systems commit: fc15967f8f]
2021-09-02 13:14:58 -05:00
Jonathan R. Madsen 6825578603 Improved analysis of functions to instrument + MPI support + timemory support (#2)
* various tweaks
* build updates + cleanup + overlap guard + min addr range
* Library source reorg + miscellaneous tweaks
* Removed unnecessary fwd decls
* Print address range in --print-X pair mode

- hosttrace modifications
  - disable instrumenting functions with overlapping sections or multiple entry points by default (control via --allow-overlapping option)
  - disable instrumenting functions whose address range < 512 bytes unless a loop is present by default (control via --min-address-range option)
  - disable instrumenting functions w/ loops whose address range < 64 bytes (control via --min-loop-address-range)
- Support for wrapping MPI function calls even in binary rewrite mode
  - e.g. use gotcha to wrap MPI functions with hosttrace_push_trace and hosttrace_pop_trace
- New timemory only mode --> HOSTTRACE_USE_TIMEMORY=ON
- New timemory + perfetto mode --> HOSTTRACE_USE_PERFETTO=ON + HOSTTRACE_USE_TIMEMORY=ON
- Full support for all timemory components
- parallel-overhead example for measuring the overhead in a MT-parallelized application with very small instrumentation functions
- improvements to output directories for hosttrace exe
- improvements to output directories for hosttrace library
- new hosttrace options
  - --print-instrumented <type> prints out the instrumented entities and exits
  - --print-available <type> prints out the available instrumentation entities and exits
  - --print-overlapping <type> prints out the overlapping entities and exits
  - NOTE: <type> above refers to the information printed out, e.g. module name vs. function name vs. module and function name, etc.

[ROCm/rocprofiler-systems commit: 1f15b3070f]
2021-09-02 11:38:39 -05:00
Jianbing Chen 1ff2dfed88 add systemTraceEvents to merge for perfetto ftrace data
[ROCm/rocprofiler-systems commit: f518e09eab]
2021-08-30 09:20:31 -05:00
Jianbing Chen 869bbb4333 use DISCARD for fill_policy since default RING_BUFFER fails when wrap around (most result table empty); add README.md and merge-trace.jl
[ROCm/rocprofiler-systems commit: 7793a1f331]
2021-08-25 11:39:00 -05:00
Jonathan R. Madsen 045f29eda6 timemory submodule (#1)
- library now wraps fork() to warn about fork + OpenMPI

[ROCm/rocprofiler-systems commit: fc7cc1e68f]
2021-08-17 17:34:34 -05:00
Jonathan R. Madsen 3d3270b214 License + CPack support
[ROCm/rocprofiler-systems commit: 7dca3a7149]
2021-08-06 13:29:09 -05:00
Jonathan R. Madsen 581c4122aa Hosttrace via Dyninst
- complete with ctest support


[ROCm/rocprofiler-systems commit: 9ef3800986]
2021-08-06 13:08:57 -05:00
Jonathan R. Madsen 9f2c93f47e Initial commit
[ROCm/rocprofiler-systems commit: 1df44258e6]
2021-08-06 11:46:21 -05:00