102 lines
2.9 KiB
Bash
Executable File
102 lines
2.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# RustyTorch++ Compilation Check Script
|
|
# Checks each crate and captures compilation status and errors
|
|
|
|
echo "RustyTorch++ Compilation Check"
|
|
echo "=============================="
|
|
echo "Date: $(date)"
|
|
echo ""
|
|
|
|
# Arrays to store results
|
|
declare -a passing_crates=()
|
|
declare -a failing_crates=()
|
|
|
|
# Function to check a single crate
|
|
check_crate() {
|
|
local crate=$1
|
|
echo -n "Checking $crate... "
|
|
|
|
# Capture both stdout and stderr, with timeout
|
|
output=$(timeout 60 cargo check -p "$crate" 2>&1)
|
|
exit_code=$?
|
|
|
|
if [ $exit_code -eq 0 ]; then
|
|
echo "✅ PASS"
|
|
passing_crates+=("$crate")
|
|
echo "$crate: PASS" >> compilation_results.txt
|
|
else
|
|
echo "❌ FAIL"
|
|
failing_crates+=("$crate")
|
|
echo "$crate: FAIL" >> compilation_results.txt
|
|
|
|
# Capture first few errors
|
|
echo "Errors for $crate:" >> compilation_results.txt
|
|
echo "$output" | grep -E "error\[|error:" | head -5 >> compilation_results.txt
|
|
echo "---" >> compilation_results.txt
|
|
fi
|
|
}
|
|
|
|
# Clear previous results
|
|
> compilation_results.txt
|
|
|
|
# Core crates
|
|
echo "=== Core Crates ==="
|
|
for crate in rtx-tensor rtx-runtime rtx-autograd rtx-memory rtx-kernel rtx-bindings rtx-graph rtx-validation rtx-losses rtx-tokenization rtx-nn; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
echo ""
|
|
echo "=== Training Crates ==="
|
|
for crate in rtx-transformers rtx-distributed rtx-preprocessing rtx-federated rtx-compress rtx-rl rtx-auto rtx-automeasure rtx-evolution rtx-flash-attention rtx-model-merging; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
echo ""
|
|
echo "=== Models Crates ==="
|
|
for crate in rtx-vision rtx-diffuse rtx-multimodal rtx-nlg rtx-llm-tools rtx-timeseries rtx-vision-advanced; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
echo ""
|
|
echo "=== Production Crates ==="
|
|
for crate in rtx-serving-api rtx-inference rtx-monitoring rtx-hub rtx-config rtx-streaming; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
echo ""
|
|
echo "=== Specialized Crates ==="
|
|
for crate in rtx-cfd rtx-science rtx-geom rtx-fea rtx-compiler rtx-platform rtx-synthesis rtx-ml-classic rtx-nmf rtx-polygraph rtx-sklearn-py; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
echo ""
|
|
echo "=== Data Crates ==="
|
|
for crate in rtx-data-validation rtx-etl rtx-feature-store; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
echo ""
|
|
echo "=== Tooling Crates ==="
|
|
for crate in rtx-bench rtx-eval; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
echo ""
|
|
echo "=== Meta Crates ==="
|
|
for crate in rtx rtx-core rtx-training rtx-inference-stack; do
|
|
check_crate "$crate"
|
|
done
|
|
|
|
# Summary
|
|
echo ""
|
|
echo "========================"
|
|
echo "COMPILATION SUMMARY"
|
|
echo "========================"
|
|
echo "Passing: ${#passing_crates[@]}"
|
|
echo "Failing: ${#failing_crates[@]}"
|
|
echo "Total: $((${#passing_crates[@]} + ${#failing_crates[@]}))"
|
|
echo "Success Rate: $(( ${#passing_crates[@]} * 100 / (${#passing_crates[@]} + ${#failing_crates[@]}) ))%"
|
|
|
|
echo ""
|
|
echo "Detailed results saved to: compilation_results.txt" |