-
Notifications
You must be signed in to change notification settings - Fork 72
Caliper How To
Cyrus Harrison edited this page Jul 22, 2024
·
24 revisions
Scratch pad for Caliper + Thicket/Hatchet notes.
Runtime Report
CALI_CONFIG=runtime-report
Event Tracing
CALI_CONFIG=event-trace
Sample Based Profiling
CALI_CONFIG=sample-report
https://software.llnl.gov/Caliper/GPUProfiling.html
(TODO: list most useful config/services)
(TODO: CUDA and ROCm Build constraints)
https://software.llnl.gov/Caliper/MPIProfiling.html
Overall MPI Report
CALI_CONFIG=mpi-report
Profile MPI calls inside of Caliper annotated regions
CALI_CONFIG=runtime-report,profile.mpi
(TODO: Are there MPI build constraints?)
Allow ascent_options.yaml entries to control caliper services.
We support options for Caliper config, services, and output_file:
import hatchet as ht
gf = ht.GraphFrame.from_caliperreader("output.cali")
print(gf.tree())
Simple Virtual Env Setup w/ Hatchet and Thicket Perf Tools
python3 -m venv caliper_viz
caliper_viz/bin/pip3 install llnl-hatchet llnl-thicket
caliper_vis/bin/python3 -c "import hatchet as ht;gf = ht.GraphFrame.from_caliperreader('output.cali'); print(gf.tree());"