Compute-optimal data scaling for neural surrogates via multi-fidelity training
Organizations: Institute for Machine Learning, JKU Linz · Mistral AI · Technical University of Munich · Munich Center for Machine Learning (MCML)
Abstract
Neural surrogates for Partial Differential Equations (PDEs) are usually trained on synthetic data from numerical simulators. As models grow and scaling laws demand larger datasets, the cost of data generation often outweighs the training cost and becomes the bottleneck in the scaling quest. Unlike data in other domains, however, each PDE sample has a tunable cost that depends on its numerical fidelity, with the resulting cost-accuracy trade-off governed by known convergence rates. We exploit this property by formalizing neural surrogate training as a function of both data quantity and fidelity under a fixed data generation compute budget, treating fidelity as a fine-grained discrete spectrum rather than a binary distinction. Building on this, we show that multi-fidelity training enables Pareto-optimal error scaling against data generation compute. By using simulations at lower fidelities as an additional training signal, training on the optimal fidelity mixture matches the accuracy of high-fidelity-only training, with up to less data generation compute across our settings. We validate these findings across six PDE problems spanning structured grids and unstructured meshes, two distinct error sources (discretization and iterative-solver error), and four surrogate architectures, totaling over 7,000 training runs.
Figures & tables
| Application domain | Physics / Equation | Data format | Error source | Architectures | |
|---|---|---|---|---|---|
| Discretization | Solver | ||||
| Mathematical / PDEs | Poisson equation | 1D, 2D, 3D grids | ✓ | ✓ | FNO, U-Net |
| Structural Mechanics | Linear elasticity | 2D meshes | ✓ | ✓ | AB-UPT, Transolver |
| Hyperelasticity (nonlinear) | 2D meshes | ✓ | ✓ | AB-UPT, Transolver | |
| Fluid Dynamics | RANS (airfoils) | 2D meshes | ✓ | – ⋆ | AB-UPT, Transolver |
| Dataset | Solver error | Discretization error | ||||
|---|---|---|---|---|---|---|
| 1 st | 2 nd | 3 rd | 1 st | 2 nd | 3 rd | |
| Linear elasticity | 4.0 | 5.2 | 4.4 | 6.3 | 4.5 | 4.0 |
| Hyperelasticity | 2.3 | 3.4 | 3.9 | 9.0 | 10.0 | 4.3 |
| Airfoil | – | – | – | 0.0 | 1.7 | – |
Appendix figures & tables50 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | Symbol | Range |
|---|---|---|
| Traction magnitude | – kPa | |
| Traction angle | – | |
| Number of holes | – | – |
| Hole radii | – |
| Parameter | Family | Range |
| Reynolds number | – | – |
| Angle of attack | – | – |
| Max camber ( ) | 4-digit | |
| Camber position ( ) | 4-digit | |
| Max thickness ( ) | 4-digit | |
| Design lift coeff. ( ) | 5-digit |
| Axis | Menu | Cost | range | |||
|---|---|---|---|---|---|---|
| truncation | 1 | – | ||||
| truncation | 2 | – | ||||
| truncation | 3 | – | ||||
| discretization | 1 | – | ||||
| discretization | 2 | – | ||||
| discretization | 3 | – |
| Group | Symbol / flag | Value |
| Shared backbone / conditioning | ||
| Target resolution | (per axis, all ) | |
| Conditioning dim | ||
| Sinusoidal frequencies | – | , log-spaced in |
| Conditioning MLP | – | 2 hidden layers, SiLU |
| FiLM-U-Net | ||
| Axis | Menu ( ) | Cost | range | ||
|---|---|---|---|---|---|
| solver | ( ) | – | |||
| discretization | ( ) | – |
| Axis | Menu ( ) | Cost | range | ||
|---|---|---|---|---|---|
| solver | ( ) | – | |||
| discretization | ( ) | – |
| Axis | Menu ( ) | Cost | range | ||
| discretization | ( ) | CPU core-hours | – |
| Group | Value |
|---|---|
| Transolver | |
| Layers | |
| Hidden dim | |
| Slice dim | |
| Attention heads | |
| MLP expansion | |
| Group | Value |
|---|---|
| Transolver (large) | |
| Layers | |
| Hidden dim | |
| Slice dim | |
| Attention heads | |
| MLP expansion | |
| Cluster | Hardware | Dim | Cells | Seeds | Runs | h / run | GPU-h |
|---|---|---|---|---|---|---|---|
| FAU | A100 80 GB | 3D | 42 | 1 | 42 | 1–3 | 42–126 |
| LRZ | A100 80 GB (1g.10gb) | 1D | 648 | 6 | 3,888 | 0.04–0.1 | 156–389 |
| LRZ | A100 80 GB (1g.10gb) | 2D | 218 | 6 | 1,310 | 0.3–0.6 | 393–786 |
| Leonardo | A100 64 GB (slower PCIe) | 3D | 70 | 3 | 210 | 5.5–6 | 1,155–1,260 |
| Total | 978 | 5,450 | 1,746–2,561 | ||||
| Full-A100 | 1,275–1,554 |
| Dim | Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | ||||
| 1D | U-Net | 10 | -20.00 | 30 | 10 | +200.0 | 1.113 | 1.325 | -16.0 |
| 30 | -20.00 | 90 | 30 | +200.0 | 0.803 | 1.123 | -28.5 | ||
| 100 | -7.00 | 292 | 100 | +192.0 | 0.295 | 0.770 | -61.6 | ||
| 300 | -3.50 | 751 | 300 | +150.3 | 0.081 | 0.214 | -62.2 | ||
| 1,000 | -1.00 | 1,781 | 1,000 | +78.1 | 0.028 | 0.036 | -20.4 | ||
| Dim | Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | ||||
| 1D | U-Net | 10 | 7.00 | 10 | 10 | +0.0 | 1.321 | 1.454 | -9.2 |
| 30 | -5.00 | 65 | 30 | +116.7 | 0.752 | 1.232 | -39.0 | ||
| 100 | -15.00 | 239 | 100 | +139.0 | 0.263 | 0.685 | -61.5 | ||
| 300 | -2.00 | 539 | 300 | +79.7 | 0.107 | 0.204 | -47.7 | ||
| 1,000 | 20.00 | 1,000 | 1,000 | +0.0 | 0.034 | 0.034 | +0.0 | ||
| Axis | Arch | Cluster | Hardware | Runs | h / run | GPU-h |
| solver | Transolver | local | A100 80 GB | 147 | 2.3 | 340 |
| Transolver | local | A100 40 GB | 21 | 2.7 | 58 | |
| AB-UPT | local | H100 80 GB | 168 | 3.0 | 506 | |
| discretization | Transolver | Vega | A100 40 GB | 147 | 11.0 | 1,614 |
| AB-UPT | Vega | A100 40 GB | 115 | 6.6 | 760 | |
| AB-UPT | MeluXina | A100 40 GB | 32 | 6.3 | 201 |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 100 | -6.25 | 791 | 100 | +691.0 | 0.114 | 0.407 | -72.0 |
| 200 | -6.25 | 1,582 | 200 | +691.0 | 0.073 | 0.247 | -70.5 | |
| 400 | -1.95 | 2,104 | 400 | +426.0 | 0.048 | 0.135 | -64.3 | |
| 800 | -3.59 | 5,303 | 800 | +562.9 | 0.035 | 0.077 | -55.1 | |
| 1,600 | -1.91 | 8,425 | 1,600 | +426.6 | 0.031 | 0.047 | -34.3 | |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 100 | -2.81 | 4,049 | 104 | +3793.3 | 0.187 | 0.300 | -37.8 |
| 200 | -1.95 | 5,416 | 206 | +2529.1 | 0.114 | 0.159 | -28.1 | |
| 400 | 583 | 411 | +41.8 | 0.061 | 0.065 | -6.2 | ||
| 800 | 1,140 | 810 | +40.7 | 0.036 | 0.038 | -7.1 | ||
| 1,600 | 2,279 | 1,605 | +42.0 | 0.030 | 0.028 | +8.2 | ||
| Axis | Arch | Cluster | Hardware | Runs | h / run | GPU-h |
| solver | Transolver | local | A100 80 GB | 147 | 2.1 | 312 |
| Transolver | local | A100 40 GB | 21 | 2.8 | 59 | |
| AB-UPT | local | H100 80 GB | 168 | 2.9 | 491 | |
| discretization | Transolver | local | A100 80 GB | 45 | 7.9 | 354 |
| Transolver | local | A100 40 GB | 56 | 14.7 | 822 | |
| Transolver | Vega | A100 40 GB | 46 | 13.9 | 639 |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 100 | -4.06 | 879 | 100 | +779.0 | 0.124 | 0.686 | -82.0 |
| 200 | -2.34 | 1,455 | 200 | +627.5 | 0.081 | 0.494 | -83.6 | |
| 400 | -4.06 | 3,542 | 400 | +785.5 | 0.050 | 0.255 | -80.3 | |
| 800 | -0.98 | 4,598 | 800 | +474.7 | 0.039 | 0.111 | -64.7 | |
| 1,600 | -2.34 | 11,663 | 1,600 | +628.9 | 0.035 | 0.057 | -37.6 | |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 100 | -4.92 | 8,000 | 104 | +7592.3 | 0.291 | 0.776 | -62.4 |
| 200 | -1.93 | 5,399 | 206 | +2520.9 | 0.200 | 0.276 | -27.8 | |
| 400 | 565 | 411 | +37.5 | 0.089 | 0.124 | -28.4 | ||
| 800 | 1,114 | 810 | +37.5 | 0.050 | 0.050 | +0.9 | ||
| 1,600 | 2,229 | 1,605 | +38.9 | 0.043 | 0.041 | +4.1 | ||
| Arch | Cluster | Hardware | Runs | h / run | GPU-h |
|---|---|---|---|---|---|
| Transolver | local | A100 80 GB | 42 | 8.9 | 374 |
| Transolver | Karolina | A100 40 GB | 78 | 13.1 | 1,023 |
| AB-UPT | local | H100 80 GB | 21 | 12.8 | 269 |
| AB-UPT | Karolina | A100 40 GB | 99 | 19.9 | 1,974 |
| Total | 240 | 3,640 |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 50 | -1.46 | 316 | 52 | +507.7 | 0.040 | 0.133 | -69.5 |
| 100 | -1.33 | 634 | 101 | +527.7 | 0.025 | 0.073 | -65.2 | |
| 200 | 1.84 | 584 | 200 | +192.0 | 0.017 | 0.036 | -54.1 | |
| 400 | 3.05 | 872 | 397 | +119.6 | 0.013 | 0.018 | -29.3 | |
| 800 | 6.41 | 1,236 | 798 | +54.9 | 0.011 | 0.013 | -12.0 | |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 50 | -1.46 | 316 | 52 | +507.7 | 0.062 | 0.215 | -71.1 |
| 100 | -1.33 | 634 | 101 | +527.7 | 0.036 | 0.119 | -69.9 | |
| 200 | 0.59 | 764 | 200 | +282.0 | 0.022 | 0.054 | -60.3 | |
| 400 | 1.68 | 1,155 | 397 | +190.9 | 0.014 | 0.023 | -37.2 | |
| 800 | 6.41 | 1,236 | 798 | +54.9 | 0.011 | 0.012 | -7.7 | |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 50 | -2.56 | 385 | 52 | +640.4 | 0.050 | 0.144 | -65.6 |
| 100 | -1.33 | 634 | 101 | +527.7 | 0.025 | 0.072 | -64.6 | |
| 200 | 0.59 | 764 | 200 | +282.0 | 0.018 | 0.040 | -54.9 | |
| 400 | 2.36 | 1,013 | 397 | +155.2 | 0.014 | 0.024 | -41.4 | |
| 800 | 10.62 | 1,024 | 798 | +28.3 | 0.012 | 0.014 | -16.6 | |
| Arch | Rel. error | |||||||
|---|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | |||
| AB-UPT | 50 | -1.46 | 316 | 52 | +507.7 | 0.181 | 0.629 | -71.2 |
| 100 | -0.23 | 503 | 101 | +398.0 | 0.105 | 0.380 | -72.3 | |
| 200 | 1.84 | 584 | 200 | +192.0 | 0.069 | 0.176 | -60.8 | |
| 400 | 1.68 | 1,155 | 397 | +190.9 | 0.052 | 0.086 | -40.0 | |
| 800 | 880 | 798 | +10.3 | 0.045 | 0.052 | -12.6 | ||
| Dataset | Arch | Calibration | Regret at holdout (%) | |||
|---|---|---|---|---|---|---|
| 1 st | 2 nd | 3 rd | 4 th | |||
| Poisson 1D | FNO | 10, 30, 100 | 13.6 | 10.7 | 8.1 | 5.9 |
| U-Net | 100, 233, 520 | 8.7 | 4.1 | 2.4 | 3.3 | |
| Poisson 2D | FNO | 100, 300, 1000 | 0.1 | 0.3 | – | – |
| U-Net | 100, 300, 1000 | 12.9 | 3.1 | – | – | |
| Poisson 3D | U-Net | 100, 300, 1000 | 0.0 | 3.1 | – | – |
| Dataset | Arch | Calibration | Regret at held-out (%) | |||
|---|---|---|---|---|---|---|
| 1 st | 2 nd | 3 rd | 4 th | |||
| Poisson 1D | FNO | 10, 30, 100 | 48.9 | 9.2 | 0.0 | 0.0 |
| U-Net | 30, 100, 300 | 27.7 | 28.9 | 0.0 | – | |
| Poisson 2D | FNO | 100, 300, 1000 | 1.2 | 9.1 | – | – |
| U-Net | 100, 300, 1000 | 70.3 | 99.2 | – | – | |
| Poisson 3D | U-Net | 10, 100, 300 | 0.0 | 22.8 | 55.6 | – |
| Prolongation | Rel. error | |||||||
| MF | HF | (%) | MF | HF | (%) | |||
| Multi-linear | 10 | 5.00 | 11 | 10 | +10.0 | 1.422 | 1.454 | -2.2 |
| 100 | -20.00 | 240 | 100 | +140.0 | 0.273 | 0.685 | -60.1 | |
| 300 | -1.00 | 488 | 300 | +62.7 | 0.114 | 0.204 | -44.3 | |
| 1,000 | 1,000 | 1,000 | +0.0 | 0.034 | 0.034 | +0.0 | ||
| 3,000 | 3,000 | 3,000 | +0.0 | 0.018 | 0.018 | +0.0 | ||
| Base ch. | Params | NN floor | , MF | , HF-only | Saving @ 10% |
|---|---|---|---|---|---|
| 16 | 0.69M | 4.0% | 260 | 715 | 2.8 [2.5, 3.0] |
| 32 | 2.74M | 2.5% | 236 | 745 | 3.2 [2.8, 3.5] |
| 64 (main) | 10.92M | 1.8% | 224 | 758 | 3.4 [3.2, 3.6] |
| 128 | 43.65M | 1.4% | 207 | 654 | 3.2 [2.7, 3.5] |
| Steps | Rel. error | ||||||
|---|---|---|---|---|---|---|---|
| MF | HF | (%) | MF | HF | (%) | ||
| 1,000 | -1.00 | 534 | 300 | +78.0 | 0.181 | 0.246 | -26.6 |
| 2,500 | -1.00 | 534 | 300 | +78.0 | 0.153 | 0.239 | -36.0 |
| 5,000 | -1.00 | 534 | 300 | +78.0 | 0.139 | 0.227 | -38.7 |
| 10,000 | -5.00 | 826 | 300 | +175.3 | 0.124 | 0.222 | -44.2 |
| 20,000 (main) | -5.00 | 826 | 300 | +175.3 | 0.094 | 0.214 | -56.2 |
| (main) | |||||
|---|---|---|---|---|---|
| 100 | 14.94 (-62.4) | 15.97 (-68.7) | 18.00 (-68.3) | 20.64 (-62.5) | 18.98 (-72.5) |
| 300 | 7.78 (-22.8) | 6.90 (-53.7) | 7.36 (-64.2) | 7.75 (-70.9) | 8.65 (-78.2) |
| 1,000 | 4.67 (-15.0) | 3.21 (-46.3) | 3.11 (-53.8) | 3.19 (-57.5) | 3.43 (-60.1) |
| 3,000 | 4.14 (-0.4) | 2.12 (-14.6) | 2.07 (-25.7) | 2.12 (-32.5) | 2.11 (-45.3) |
| 10,000 | 4.06 (-0.8) | 1.84 (+0.0) | 1.76 (-1.6) | 1.77 (+0.0) | 1.77 (-3.9) |
| Error at (%) | (%) | ||||
|---|---|---|---|---|---|
| menu top | conv. ref | rel. diff. | menu top | conv. ref | |
| 100 | 20.56 | 20.64 | +0.42% | -62.7 | -62.5 |
| 300 | 7.73 | 7.75 | +0.25% | -71.0 | -70.9 |
| 1,000 | 3.18 | 3.19 | +0.25% | -57.6 | -57.5 |
| 3,000 | 2.12 | 2.12 | +0.08% | -32.4 | -32.5 |
| 10,000 | 1.77 | 1.77 | +0.51% | +0.0 | +0.0 |