Files
TheRock/rocm-systems/projects/rocprofiler-systems/external/timemory/examples/ex-ert
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00
..

ex-ert

These examples executes microkernels (with and without using Kokkos respectively) with varying workload (working set sizes and float/double types) to demonstrate the usage of empirical roofline toolkit (ERT) component for generation of performance data for roofline analysis.

Build

See examples. Further, the ex-ert-kokkos example requires kokkos support enabled by enabling -DTIMEMORY_BUILD_KOKKOS_TOOLS=ON flag.

Expected Output

$ ./ex_ert
#------------------------- tim::manager initialized [id=0][pid=8418] -------------------------#


[ert-example]> Executing run_ert_float_cpu_1_threads_64_min-ws_31457280_max-size...

[ert::executor]> working-set = 64, max-size = 31457280, num-thread = 1, num-stream = 0, grid-size = 0, block-size = 0, align-size = 32, data-type = float

|0>>>  run_ert_float_cpu_1_threads_64_min-ws_31457280_max-size :   11.325 sec wall,    0.030 sec sys,   11.300 sec user,  100.0 % cpu_util,   62.084 MB peak_rss,  [laps: 1]

[ert-example]> Executing run_ert_float_cpu_2_threads_64_min-ws_31457280_max-size...

[ert::executor]> working-set = 64, max-size = 31457280, num-thread = 2, num-stream = 0, grid-size = 0, block-size = 0, align-size = 32, data-type = float

|0>>>  run_ert_float_cpu_2_threads_64_min-ws_31457280_max-size :    5.413 sec wall,    0.020 sec sys,   10.800 sec user,  199.9 % cpu_util,   31.352 MB peak_rss,  [laps: 1]

[ert-example]> Executing run_ert_double_cpu_1_threads_64_min-ws_31457280_max-size...

[ert::executor]> working-set = 64, max-size = 31457280, num-thread = 1, num-stream = 0, grid-size = 0, block-size = 0, align-size = 64, data-type = double

|0>>>  run_ert_double_cpu_1_threads_64_min-ws_31457280_max-size :    2.325 sec wall,    0.020 sec sys,    2.300 sec user,   99.8 % cpu_util,   92.136 MB peak_rss,  [laps: 1]

[ert-example]> Executing run_ert_double_cpu_2_threads_64_min-ws_31457280_max-size...

[ert::executor]> working-set = 64, max-size = 31457280, num-thread = 2, num-stream = 0, grid-size = 0, block-size = 0, align-size = 64, data-type = double

|0>>>  run_ert_double_cpu_2_threads_64_min-ws_31457280_max-size :    1.217 sec wall,    0.000 sec sys,    2.440 sec user,  200.5 % cpu_util,    0.692 MB peak_rss,  [laps: 1]

[0]> Outputting 'timemory-ex-ert-output/ert_results.json'...
[peak_rss]|0> Outputting 'timemory-ex-ert-output/peak_rss.json'...
[peak_rss]|0> Outputting 'timemory-ex-ert-output/peak_rss.txt'...
Opening 'timemory-ex-ert-output/peak_rss.jpeg' for output...
Closed 'timemory-ex-ert-output/peak_rss.jpeg'...

|----------------------------------------------------------------------------------------------------------------------------------------------------------------|
|                       MEASURES CHANGES IN THE HIGH-WATER MARK FOR THE AMOUNT OF MEMORY ALLOCATED IN RAM. MAY FLUCTUATE IF SWAP IS ENABLED                      |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------|
|                             LABEL                              | COUNT  | DEPTH  | METRIC   | UNITS  |  SUM    |  MEAN   |  MIN    |  MAX    | STDDEV | % SELF |
|----------------------------------------------------------------|--------|--------|----------|--------|---------|---------|---------|---------|--------|--------|
| >>> run_ert                                                    |      1 |      0 | peak_rss | MB     | 186.596 | 186.596 | 186.596 | 186.596 |  0.000 |    0.2 |
| >>> |_run_ert_float_cpu_1_threads_64_min-ws_31457280_max-size  |      1 |      1 | peak_rss | MB     |  62.084 |  62.084 |  62.084 |  62.084 |  0.000 |  100.0 |
| >>> |_run_ert_float_cpu_2_threads_64_min-ws_31457280_max-size  |      1 |      1 | peak_rss | MB     |  31.352 |  31.352 |  31.352 |  31.352 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_1_threads_64_min-ws_31457280_max-size |      1 |      1 | peak_rss | MB     |  92.136 |  92.136 |  92.136 |  92.136 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_2_threads_64_min-ws_31457280_max-size |      1 |      1 | peak_rss | MB     |   0.692 |   0.692 |   0.692 |   0.692 |  0.000 |  100.0 |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------|

[cpu_util]|0> Outputting 'timemory-ex-ert-output/cpu_util.json'...
[cpu_util]|0> Outputting 'timemory-ex-ert-output/cpu_util.txt'...
Opening 'timemory-ex-ert-output/cpu_util.jpeg' for output...
Closed 'timemory-ex-ert-output/cpu_util.jpeg'...

|-----------------------------------------------------------------------------------------------------------------------------------------------------|
|                                                PERCENTAGE OF CPU-CLOCK TIME DIVIDED BY WALL-CLOCK TIME                                              |
|-----------------------------------------------------------------------------------------------------------------------------------------------------|
|                             LABEL                              | COUNT | DEPTH | METRIC   | UNITS | SUM   | MEAN  | MIN   | MAX   | STDDEV | % SELF |
|----------------------------------------------------------------|-------|-------|----------|-------|-------|-------|-------|-------|--------|--------|
| >>> run_ert                                                    |     1 |     0 | cpu_util | %     |   0.0 |   0.0 |   0.0 |   0.0 |    0.0 |    0.0 |
| >>> |_run_ert_float_cpu_1_threads_64_min-ws_31457280_max-size  |     1 |     1 | cpu_util | %     | 100.0 | 100.0 | 100.0 | 100.0 |    0.0 |  100.0 |
| >>> |_run_ert_float_cpu_2_threads_64_min-ws_31457280_max-size  |     1 |     1 | cpu_util | %     | 199.9 | 199.9 | 199.9 | 199.9 |    0.0 |  100.0 |
| >>> |_run_ert_double_cpu_1_threads_64_min-ws_31457280_max-size |     1 |     1 | cpu_util | %     |  99.8 |  99.8 |  99.8 |  99.8 |    0.0 |  100.0 |
| >>> |_run_ert_double_cpu_2_threads_64_min-ws_31457280_max-size |     1 |     1 | cpu_util | %     | 200.5 | 200.5 | 200.5 | 200.5 |    0.0 |  100.0 |
|-----------------------------------------------------------------------------------------------------------------------------------------------------|

[user]|0> Outputting 'timemory-ex-ert-output/user.flamegraph.json'...
[user]|0> Outputting 'timemory-ex-ert-output/user.json'...
[user]|0> Outputting 'timemory-ex-ert-output/user.txt'...
Opening 'timemory-ex-ert-output/user.jpeg' for output...
Closed 'timemory-ex-ert-output/user.jpeg'...

|----------------------------------------------------------------------------------------------------------------------------------------------------------|
|                                                                CPU TIME SPENT IN USER-MODE                                                               |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|
|                             LABEL                              | COUNT  | DEPTH  | METRIC | UNITS  |  SUM   | MEAN   |  MIN   |  MAX   | STDDEV | % SELF |
|----------------------------------------------------------------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|
| >>> run_ert                                                    |      1 |      0 | user   | sec    | 27.810 | 27.810 | 27.810 | 27.810 |  0.000 |    3.5 |
| >>> |_run_ert_float_cpu_1_threads_64_min-ws_31457280_max-size  |      1 |      1 | user   | sec    | 11.300 | 11.300 | 11.300 | 11.300 |  0.000 |  100.0 |
| >>> |_run_ert_float_cpu_2_threads_64_min-ws_31457280_max-size  |      1 |      1 | user   | sec    | 10.800 | 10.800 | 10.800 | 10.800 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_1_threads_64_min-ws_31457280_max-size |      1 |      1 | user   | sec    |  2.300 |  2.300 |  2.300 |  2.300 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_2_threads_64_min-ws_31457280_max-size |      1 |      1 | user   | sec    |  2.440 |  2.440 |  2.440 |  2.440 |  0.000 |  100.0 |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|

[sys]|0> Outputting 'timemory-ex-ert-output/sys.flamegraph.json'...
[sys]|0> Outputting 'timemory-ex-ert-output/sys.json'...
[sys]|0> Outputting 'timemory-ex-ert-output/sys.txt'...
Opening 'timemory-ex-ert-output/sys.jpeg' for output...
Closed 'timemory-ex-ert-output/sys.jpeg'...

|----------------------------------------------------------------------------------------------------------------------------------------------------------|
|                                                               CPU TIME SPENT IN KERNEL-MODE                                                              |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|
|                             LABEL                              | COUNT  | DEPTH  | METRIC | UNITS  |  SUM   | MEAN   |  MIN   |  MAX   | STDDEV | % SELF |
|----------------------------------------------------------------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|
| >>> run_ert                                                    |      1 |      0 | sys    | sec    |  0.350 |  0.350 |  0.350 |  0.350 |  0.000 |   80.0 |
| >>> |_run_ert_float_cpu_1_threads_64_min-ws_31457280_max-size  |      1 |      1 | sys    | sec    |  0.030 |  0.030 |  0.030 |  0.030 |  0.000 |  100.0 |
| >>> |_run_ert_float_cpu_2_threads_64_min-ws_31457280_max-size  |      1 |      1 | sys    | sec    |  0.020 |  0.020 |  0.020 |  0.020 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_1_threads_64_min-ws_31457280_max-size |      1 |      1 | sys    | sec    |  0.020 |  0.020 |  0.020 |  0.020 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_2_threads_64_min-ws_31457280_max-size |      1 |      1 | sys    | sec    |  0.000 |  0.000 |  0.000 |  0.000 |  0.000 |    0.0 |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|

[wall]|0> Outputting 'timemory-ex-ert-output/wall.flamegraph.json'...
[wall]|0> Outputting 'timemory-ex-ert-output/wall.json'...
[wall]|0> Outputting 'timemory-ex-ert-output/wall.txt'...
Opening 'timemory-ex-ert-output/wall.jpeg' for output...
Closed 'timemory-ex-ert-output/wall.jpeg'...

|----------------------------------------------------------------------------------------------------------------------------------------------------------|
|                                                         REAL-CLOCK TIMER (I.E. WALL-CLOCK TIMER)                                                         |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|
|                             LABEL                              | COUNT  | DEPTH  | METRIC | UNITS  |  SUM   | MEAN   |  MIN   |  MAX   | STDDEV | % SELF |
|----------------------------------------------------------------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|
| >>> run_ert                                                    |      1 |      0 | wall   | sec    | 22.618 | 22.618 | 22.618 | 22.618 |  0.000 |   10.3 |
| >>> |_run_ert_float_cpu_1_threads_64_min-ws_31457280_max-size  |      1 |      1 | wall   | sec    | 11.325 | 11.325 | 11.325 | 11.325 |  0.000 |  100.0 |
| >>> |_run_ert_float_cpu_2_threads_64_min-ws_31457280_max-size  |      1 |      1 | wall   | sec    |  5.413 |  5.413 |  5.413 |  5.413 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_1_threads_64_min-ws_31457280_max-size |      1 |      1 | wall   | sec    |  2.325 |  2.325 |  2.325 |  2.325 |  0.000 |  100.0 |
| >>> |_run_ert_double_cpu_2_threads_64_min-ws_31457280_max-size |      1 |      1 | wall   | sec    |  1.217 |  1.217 |  1.217 |  1.217 |  0.000 |  100.0 |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|


[metadata::manager::finalize]> Outputting 'timemory-ex-ert-output/metadata.json'...


#---------------------- tim::manager destroyed [rank=0][id=0][pid=8418] ----------------------#