|
59 | 59 | > <details> |
60 | 60 | > <summary>Benchmarking, Tuning, Profiling, Tracing, Analyzing</summary> |
61 | 61 | > |
62 | | - > | name | description | |
63 | | - > | ------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------| |
64 | | - > | [`info`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `compiler`, `cpu`, `memory`, `sys`, `proc`, `bin` | |
65 | | - > | [`core`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `code`, `compiler`, `cpu`, `memory` | |
66 | | - > | [`mc`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `disassembler` (`assembly`, `address`, `encoding`, `size`, `uops`, `latency`, `rthroughput`, `may_load`, `may_store`, `has_side_effects`, ..., `source`) | |
67 | | - > | [`mca`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `analyzer` (`cycles`, `instructions`, `uops`, `timeline`, `resource_pressure`, `bottleneck`) | |
68 | | - > | [`time`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `timer` (`tsc`, `cpu`, `thread`, `real`, `monotonic`, `steady_clock`, `high_resolution_clock`) | |
69 | | - > | [`stat`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `counter` (`instructions`, `cycles`, ..., `top_down`) | |
70 | | - > | [`record`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `sampler` (`instructions`, `cycles`, ..., `mem_loads`, `mem_stores`, `top_down`) | |
71 | | - > | [`trace`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `tracer` (`instructions`, `tsc`) | |
72 | | - > | [`engine`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `runner` (`dataset`, `metadata`) | |
73 | | - > | [`bench`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `baseline`, `latency`, `throughput` | |
74 | | - > | [`output`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | `log`, `json`, `report`, `annotate`, `plot` (`hist`, `box`, `bar`, `line`, `ecdf`) | |
| 62 | + > | name | description | API | |
| 63 | + > | ------------------------------------------------------------------ | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- | |
| 64 | + > | [`info`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | hw/sw info | `compiler`, `cpu`, `memory`, `sys`, `proc`, `bin` | |
| 65 | + > | [`core`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | utility | `code`, `compiler`, `cpu`, `memory` | |
| 66 | + > | [`mc`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | low-level backend (llvm) | `disassembler` (`assembly`, `address`, `encoding`, `size`, `uops`, `latency`, `rthroughput`, `may_load`, `may_store`, `has_side_effects`, ..., `source`) | |
| 67 | + > | [`mca`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | analyzing (llvm/mca) | `analyzer` (`cycles`, `instructions`, `uops`, `timeline`, `resource_pressure`, `bottleneck`) | |
| 68 | + > | [`time`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | timing | `timer` (`tsc`, `cpu`, `thread`, `real`, `monotonic`, `steady_clock`, `high_resolution_clock`) | |
| 69 | + > | [`stat`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | counting (linux/perf_counters) | `counter` (`instructions`, `cycles`, ..., `top_down`) | |
| 70 | + > | [`record`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | sampling (linux/perf_counters) | `sampler` (`instructions`, `cycles`, ..., `mem_loads`, `mem_stores`, `top_down`) | |
| 71 | + > | [`trace`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | tracing (linux/intel_pt) | `tracer` (`instructions`, `tsc`) | |
| 72 | + > | [`engine`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | running | `runner` (`dataset`, `metadata`) | |
| 73 | + > | [`bench`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | benchmarking | `baseline`, `latency`, `throughput` | |
| 74 | + > | [`output`](https://github.com/qlibs/perf/blob/main/perf.cppm#L39) | outputting (gnuplot/sixel) | `log`, `json`, `report`, `annotate`, `plot` (`hist`, `box`, `bar`, `line`, `ecdf`) | |
75 | 75 | > |
76 | 76 | > </details> |
77 | 77 |
|
|
0 commit comments