llnl/boba/boba-caliper-build-run
Claude Code and agent skill by llnl/boba
- community
Checking that the SKILL.md file is still in the repository.
Compile and run BoBa with Caliper enabled, capture `CALI_CONFIG=runtime-report` output, and interpret which rows correspond to BoBa profiling regions. Use when profiling a test, tutorial, or miniapp, or when deciding between `BOBA_ENABLE_CALIPER`, `BOBA_ENABLE_CALIPER_EXTERNAL`, and `BOBA_ENABLE_CALIPER_OBJECTS`.
Install
npx vskill@latest install llnl/boba/boba-caliper-build-runSKILL.md
BoBa Caliper Build And Run
Use this skill when you need to build a BoBa target with Caliper, run it, save the report, and read the reported hotspots.
Quick Choice
- Use
BOBA_ENABLE_CALIPER=1when you want the normal BoBa internal profiling scopes. - Use
BOBA_ENABLE_CALIPER_EXTERNAL=1when you want Caliper scopes outside BoBa internals, such as in exercises and tests. - Use
BOBA_ENABLE_CALIPER_OBJECTS=1when you specifically need object-level profiling regions. - Source
caliper_lib_path_info_cpubefore running on CPU so the runtime loader can findlibcaliper. This file is generated by./boba_builder.py.
make Flow
Build a target with Caliper enabled:
In the make flow, the output executable name usually picks up a suffix such as _cpu_cali.out. For this target the executable is test_boba_tensor_train_cpu_cali.out.
Run it with Caliper's runtime report and save the text output. Capture both stdout and stderr so the report table is not lost:
For profiling regions outside of BoBa source code while avoiding profiling BoBa source, use the "external" regions and add them to your code:
CMake Flow
For CMake, the Caliper toggles are read from the environment and Caliper must also be discoverable through CALIPER_DIR.
If you only want only the Caliper regions outside of BoBa source (e.g. in exercises or tests) ...
Reading The Report
- In this BoBa setup,
runtime-reportmay emit the text table on stderr. Use( ... ) 2>&1 | tee file.txtwhen you want a reliable saved copy. - The exact columns can vary by Caliper version, but focus on the region name/path, time, time percentage, and call count columns.
- The hottest rows are the ones with the largest total time or largest time percentage.
- For hotspot ranking, prefer the largest
Time (E)rows undermainrather thanmainitself, sincemainis usually not the most actionable row. BOBA_CALI_MARKusually shows function-level regions.BOBA_CALI_BEGIN("..."),BOBA_CALI_SWITCH("...","..."), andBOBA_CALI_END("...")produce rows named after the explicit phase labels such assetuporiterating.BOBA_ENABLE_CALIPER_EXTERNAL=1is useful when you want CALIPER scopes in code outside BoBa source, such as exercises and tests.
Practical Reading Workflow
- Start with
BOBA_ENABLE_CALIPER_EXTERNAL=1to find which top-level phase dominates in external code. - Rebuild with
BOBA_ENABLE_CALIPER=1if you need finer detail inside that phase. - Open the saved report with
less cali_runtime_report.txt. - Search for the heaviest region names and then
rgthose labels ininclude/BOBA/orexamples/to find the owning code.
Precision Profiling
If on a temporary basis you want to profile a precise set of functions in a call stack but ignore everything else, BOBA_ENABLE_CALIPER_EXTERNAL can be used with BOBA_ENABLE_CALIPER_EXTERNAL=1 targeting just the desired functions. This might be useful for temporary targeted profiling.
Common Problems
- If the executable fails to start because
libcaliperis missing, sourcecaliper_lib_path_info_cpuin the current shell before running. - If the report shows little or no BoBa profiling data, rebuild with one of
BOBA_ENABLE_CALIPER=1,BOBA_ENABLE_CALIPER_EXTERNAL=1, orBOBA_ENABLE_CALIPER_OBJECTS=1. - If you only see coarse rows, you likely built with
BOBA_ENABLE_CALIPER_EXTERNAL=1instead of fullBOBA_ENABLE_CALIPER=1.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/boba-caliper-build-run/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/llnl/boba/boba-caliper-build-run)