================================================================================ L8 JACQUARD MODE SELECTOR VALIDATION EXPERIMENT ================================================================================ IMPLEMENTED: 2025-11-26 PURPOSE: -------- Validate the data-driven L8 Jacquard architecture by comparing dynamic adaptive mode switching against static optimal configurations from the 2^7 DoE analysis. EXPERIMENTAL DESIGN: ------------------- Type: 8×5 Factorial Design Strategies: 8 (L8_ADAPTIVE + 7 static configs) Workloads: 5 (STABLE, DIVERSE, VOLATILE, TEMPORAL, TRANSITION) Replicates: User-specified (recommended: 50) Total Runs: 8 × 5 × N = 40N runs CONTROL STRATEGIES: ------------------ 1. L8_ADAPTIVE - Dynamic mode switching (NEW) 2. C0_BASELINE - All off except L7 3. C4_TEMPORAL - DoE top 5% rank #6 (0010001) 4. C7_FULL_INF - DoE top 5% ranks #2,#3 (0010111) 5. C9_DIVERSE_DECAY - DoE top 5% rank #5 (0100011) 6. C11_DIVERSE_INF - DoE top 5% rank #4 (0100110) 7. C12_DIVERSE_TEMPORAL - DoE top 5% rank #1 (0110001) 8. ALL_ON - Everything except L1/L4 WORKLOAD TYPES: -------------- 1. STABLE - Fibonacci, factorial (predictable, low entropy/CV) 2. DIVERSE - Mixed ops, strings, stack churn (high entropy) 3. VOLATILE - Random branching, nested conditionals (high CV) 4. TEMPORAL - Nested loops, hot words (strong locality) 5. TRANSITION - Phase shifts: STABLE→DIVERSE→VOLATILE (adaptability test) FILES CREATED: ------------- experiments/l8_validation/ ├── run_l8_validation.sh - Main experiment runner ├── README.md - Detailed documentation └── EXPERIMENT_SUMMARY.txt - This file conf/ ├── init-l8-stable.4th - STABLE workload ├── init-l8-diverse.4th - DIVERSE workload ├── init-l8-volatile.4th - VOLATILE workload ├── init-l8-temporal.4th - TEMPORAL workload └── init-l8-transition.4th - TRANSITION workload HYPOTHESES: ---------- H1: L8 matches best static per workload (≤5% margin) H2: L8 shows lowest overall CV (stability) H3: L8 modes correlate with workload characteristics H4: L8 dominates on TRANSITION workload (adaptability) QUICK START: ----------- cd experiments/l8_validation # Quick test (10 reps, ~8 min) ./run_l8_validation.sh 10 # Standard (50 reps, ~40 min) ./run_l8_validation.sh 50 # High precision (100 reps, ~80 min) ./run_l8_validation.sh 100 EXPECTED RESULTS: ---------------- If successful, L8 should: - Match or beat best static config per workload type - Show lower variance across all workloads combined - Converge to appropriate modes based on metrics: * STABLE → C0/C4 (low entropy, low CV) * DIVERSE → C9/C11/C12 (high entropy) * VOLATILE → C1/C7 (high CV) * TEMPORAL → C4/C12 (temporal locality) * TRANSITION → Adaptive mode switching DATA-DRIVEN DESIGN RATIONALE: ----------------------------- Based on 2^7 DoE (300 reps, 38,400 runs): - L1 disabled: Harmful in 86% of top 5% configs - L4 disabled: Harmful in 100% of top 5% configs - L7 enabled: Beneficial in 71% of top 5% configs - L2/L3/L5/L6: Workload-dependent (controlled by L8) Top 5% configs showed clear workload specialization: - No single static config optimal across all workloads - Different loop combinations excel for different patterns - Justifies dynamic L8 mode selection SUCCESS CRITERIA: ---------------- 1. L8 performance within 5% of best static per workload 2. L8 CV < all static configs (pooled across workloads) 3. L8 mode distribution aligns with workload characteristics 4. L8 outperforms all static on TRANSITION workload NEXT STEPS AFTER EXPERIMENT: --------------------------- 1. Run R analysis script (to be created) 2. Generate ANOVA interaction plots 3. Analyze L8 mode distribution patterns 4. Compare Pareto frontiers (speed vs stability) 5. Decision: Keep L8 or revert to static optimal ================================================================================