TreeScape Documentation
TreeScape is a Jupyter-based visualization tool for performance data, enabling users to programmatically render graphs. With TreeScape, you can load an ensemble of Caliper performance files and visualize the collective performance of an application across many runs.
Features
Multiple Data Readers: Support for both CaliperReader and ThicketReader
Interactive Visualizations: Stacked line charts with integrated flame graphs
Static Plotting: Matplotlib-based multi-line charts for publication
Performance Tracking: Track performance changes over time across multiple runs
Flexible Data Model: Filter, sort, and analyze performance data programmatically
Export Capabilities: Export visualizations to SVG format
Quick Start
Installation
git clone https://github.com/LLNL/treescape.git
cd treescape
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Basic Usage
import treescape as ts
# Load Caliper performance files
reader = ts.CaliReader("/path/to/cali/files")
# Create a data model
model = ts.TreeScapeModel(reader)
# Create an interactive visualization
viz = ts.StackedLine()
viz.setXAxis("launchdate")
viz.setYAxis("avg")
viz.setDrillLevel(["main", "LagrangeLeapFrog"])
viz.render(model)
# Or create a static matplotlib plot
ml = ts.MultiLine(model)
ml.plot_sums("launchdate", "main", "test")
Table of Contents
User Guide
- Installation
- Quick Start Guide
- Core Concepts
- Examples
- Scaling Study Analysis
- Performance Regression Testing
- Comparing Multiple Tests
- Exporting to SVG
- Custom Metrics
- Filtering by Metadata
- Multi-Node Drill Down
- Custom Chart Dimensions
- Combining with Pandas
- Working with Multiple Axes
- Computing Statistics
- Detecting Performance Anomalies
- Integration with Jupyter Notebooks
- Next Steps
API Reference
Additional Information