# Эксперимент: Parallel Quadratic Tree Layer (#617) { "worked": true, "confidence": 8, "verdict": "Built a differentiable quadratic tree layer with Schur-complement child elimination, synchronized rake levels, reverse MAP reconstruction, and a sequential reference. The mechanism checks passed: quadratic correction scaled exactly as gamma^2, damping reduced magnitude according to the analytic inverse-denominator formula, and balanced-tree rake depth matched floor(log2(n)); sequential and rake root coefficients and input gradients agreed below 9e-16. The promised 3x speedup was not observed in this unbatched Python MVP: rake was only 0.92–0.99x the sequential runtime for 127–1023 nodes, so there is no demonstrated practical latency win yet.", "metrics": { "baseline": "Sequential postorder: 224.84, 927.30, and 2069.13 ms for n=127, 511, and 1023; exact reference coefficients and gradients.", "idea": "Synchronized rake: 223.14, 905.54, and 1907.69 ms for n=127, 511, and 1023; speed ratios 0.992, 0.977, and 0.922. Maximum coefficient discrepancy was 4.44e-16 and maximum gradient discrepancy was 8.88e-16." }, "how_to_run": "/home/maxwelhelp/main/bin/python3 run_experiment.py", "files": [ "quadratic_tree.py", "run_experiment.py", "results.json" ], "limitations": "The implementation uses Python loops rather than genuinely batched torch operations, so it does not realize the proposed parallel hardware schedule. It tested synthetic quadratic trees only, with up to 1023 nodes and latent dimension 8; no 100k-node scaling, neural feature MLP, validation regression task, peak-memory measurement, dense baseline, or multi-GPU synchronization was tested." }