Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,68 @@ jobs:
- name: Display Pip Versions
shell: bash -l {0}
run: pip list
- name: Run Hardware Benchmarks (Bare Metal)
shell: bash -l {0}
run: |
pip install jax # Install JAX for CPU
echo "=== Bare Metal Python Script Execution ==="
python scripts/benchmark-hardware.py
- name: Run Jupyter Notebook Benchmark (via nbconvert)
shell: bash -l {0}
run: |
echo "=== Jupyter Kernel Execution ==="
cd scripts
jupyter nbconvert --to notebook --execute benchmark-jupyter.ipynb --output benchmark-jupyter-executed.ipynb
echo "Notebook executed successfully"
cd ..
- name: Run Jupyter-Book Benchmark
shell: bash -l {0}
run: |
echo "=== Jupyter-Book Execution ==="
# Build just the benchmark file using jupyter-book
mkdir -p benchmark_test
cp scripts/benchmark-jupyterbook.md benchmark_test/
# Create minimal _config.yml
echo "title: Benchmark Test" > benchmark_test/_config.yml
echo "execute:" >> benchmark_test/_config.yml
echo " execute_notebooks: force" >> benchmark_test/_config.yml
# Create minimal _toc.yml
echo "format: jb-book" > benchmark_test/_toc.yml
echo "root: benchmark-jupyterbook" >> benchmark_test/_toc.yml
# Build (run from benchmark_test so JSON is written there)
cd benchmark_test
jb build . --path-output ../benchmark_build/
cd ..
echo "Jupyter-Book build completed successfully"
- name: Collect and Display Benchmark Results
shell: bash -l {0}
run: |
echo "=== Collecting Benchmark Results ==="
mkdir -p benchmark_results

# Copy results from each pathway
cp benchmark_results_bare_metal.json benchmark_results/ 2>/dev/null || echo "No bare metal results"
cp scripts/benchmark_results_jupyter.json benchmark_results/ 2>/dev/null || echo "No jupyter results"
cp benchmark_test/benchmark_results_jupyterbook.json benchmark_results/ 2>/dev/null || echo "No jupyterbook results"

# Display summary
echo ""
echo "============================================================"
echo "BENCHMARK RESULTS SUMMARY"
echo "============================================================"
for f in benchmark_results/*.json; do
if [ -f "$f" ]; then
echo ""
echo "--- $(basename $f) ---"
cat "$f"
fi
done
- name: Upload Benchmark Results
uses: actions/upload-artifact@v5
with:
name: benchmark-results
path: benchmark_results/
if-no-files-found: warn
- name: Download "build" folder (cache)
uses: dawidd6/action-download-artifact@v11
with:
Expand Down
Loading
Loading