Real-Time Sensing of Inaccessible Physical Fields via an Edge-Deployable Hardware-Portable Graph Neural Operator
Organizations: Grainger College of Engineering, Nuclear, Plasma & Radiological Engineering Department, University of Illinois Urbana-Champaign, Urbana, IL, USA · Yardi School of Artificial Intelligence, Indian Institute of Technology Delhi · Department of Applied Mechanics, Indian Institute of Technology Delhi, New Delhi, India · National Center for Supercomputing Applications, Urbana, IL, USA
Abstract
Real-time inference of inaccessible interior physical fields from sparse boundary observations is a fundamental but unresolved problem in scientific machine learning, with direct relevance to safety-critical monitoring across many engineering applications. Existing neural operators achieve high accuracy but leave deployment to embedded edge platforms unaddressed. Here we introduce VIRSO (Virtual Irregular Real-Time Sparse Operator), the first neural operator with a unique spatial-spectral architecture that explicitly addresses edge-deployment hardware. VIRSO learns a nonlinear mapping from sparse, geometrically disjoint boundary inputs to spatially continuous interior multiphysics fields on irregular unstructured meshes through a spectral-spatial decomposition explicitly aligned with hardware execution: a compute-bound graph spectral pathway and a memory-bandwidth-bound spatial-aggregation pathway, each independently characterized on datacenter and embedded accelerators. The design reduces the inference energy-delay product by 29 relative to the vanilla graph-operator baseline (206 Jms 7.0 Jms on an NVIDIA H200) and enables 17.0 samples/s embedded inference on an NVIDIA Jetson Orin Nano within 7.06 W board-level power, without modification. A mesh-density-adaptive graph construction strategy (V-KNN) simultaneously improves accuracy and reduces graph edge count by 34%. Across three benchmarks with reconstruction ratios from 47:1 to 156:1, VIRSO achieves mean relative errors below 1% with fewer parameters than operator baselines and delivers an inference speedup of times over the high-fidelity reference solver. To our knowledge, this is the first demonstration of a single-digit-watt neural operator, establishing hardware co-design as a missing ingredient in operator-based inference and a tractable path to real-time deployment.
Figures & tables
| Model | Parameters | Mean Relative Error (%) | |||
| Mean | |||||
| NOMAD | 1.63 M | 0.65 | 1.18 | 0.74 | 0.86 |
| Geo-FNO | 1.68 M | 0.94 | 1.08 | 1.32 | 1.11 |
| GNO | 0.23 M | 2.84 | 10.89 | 22.23 | 11.98 |
| VIRSO | 1.62 M | 0.62 | 0.95 | 0.71 | 0.76 |
| Model | Parameters | Mean Relative Error (%) | |||
| Mean | |||||
| NOMAD | 0.42 M | 0.39 | 0.27 | 0.96 | 0.54 |
| Geo-FNO | 2.70 M | 1.55 | 1.06 | 2.88 | 1.83 |
| GNO | 0.27 M | 4.99 | 0.50 | 3.47 | 2.99 |
| VIRSO | 0.34 M | 0.37 | 0.28 | 0.88 | 0.51 |
| Model | Parameters | Mean Relative Error (%) | |||||
| Mean | |||||||
| NOMAD | 2.69 M | 0.66 | 1.01 | 1.03 | 0.74 | 1.43 | 0.97 |
| Geo-FNO | 2.70 M | 0.74 | 1.14 | 1.14 | 0.91 | 1.51 | 1.09 |
| GNO | 0.27 M | 3.37 | 9.89 | 10.75 | 11.15 | 11.82 | 9.40 |
| VIRSO ∗ | 1.66 M | 0.47 | 0.87 | 0.86 | 0.71 | 1.24 | 0.83 |
| VIRSO | 2.31 M | 0.40 | 0.71 | 0.66 | 0.52 | 1.18 | 0.70 |
| Model | Param. | FLOPs | GPU% | Mem% | Mem (MiB) | Pwr (W) | Lat. (ms) | Energy (J/it) |
|---|---|---|---|---|---|---|---|---|
| NOMAD | 2.69 M | 11.29 G | 30.92 | 1.12 | 999.92 | 196.03 | 2.35 | 0.41 |
| Geo-FNO | 2.70 M | 1.58 G | 23.63 | 2.02 | 1059.39 | 139.39 | 4.94 | 0.59 |
| GNO | 0.27 M | 429.49 G | 86.78 | 36.15 | 1965.99 | 572.00 | 20.48 | 10.07 |
| VIRSO | 1.66 M | 2.03 G | 42.35 | 5.71 | 1039.98 | 193.35 | 7.77 | 1.30 |
| VIRSO (Spatial) | 0.11 M | 0.99 G | 32.77 | 6.95 | 1031.65 | 178.15 | 8.93 | 1.40 |
| VIRSO (Spectral) | 1.58 M | 0.98 G | 17.34 | 1 | 937.93 | 124.41 | 8.18 | 0.86 |
| Model | Mean (%) | FLOPs | Energy (J/it) | Lat. (ms) | EDP (J ms) |
|---|---|---|---|---|---|
| GNO | 9.40 | 429.49 G | 10.07 | 20.48 | 206.2 |
| Geo-FNO (full, 2.70 M) | 1.09 | 1.58 G | 0.59 | 4.94 | 2.91 |
| Geo-FNO (light, 0.26 M) | 4.21 | 1.16 G | 0.56 | 5.10 | 2.86 |
| NOMAD (full, 2.69 M) | 0.97 | 11.29 G | 0.41 | 2.35 | 0.96 |
| NOMAD (light, 0.26 M) | 8.24 | 1.28 G | 0.23 | 2.00 | 0.46 |
| VIRSO (2-layer, 0.26 M) | 1.95 | 0.61 G | 0.54 | 4.29 | 2.32 |
| Model | Param. | FLOPs | Avg. Lat. (ms/it) | Avg. Pwr (W) | Energy (J/it) | Peak RAM (GB) | Mean L2 (%) |
|---|---|---|---|---|---|---|---|
| 10-L (Full) | 1.66 M | 2.04 G | 562.92 | 7.58 | 4.72 | 5.16 | 0.84 |
| 10-L (Spec.) | 1.58 M | 0.98 G | 58.77 | 7.06 | 0.84 | 5.14 | 0.91 |
| 2-L | 0.26 M | 0.61 G | 104.03 | 7.51 | 1.25 | 5.32 | 1.96 |
| Model | Best | 25th | 50th | 75th | 95th | Worst |
|---|---|---|---|---|---|---|
| NOMAD | 0.47% | 0.56% | 0.69% | 0.94% | 1.80% | 7.78% |
| Geo-FNO | 0.60% | 0.89% | 1.00% | 1.15% | 1.69% | 6.86% |
| GNO | 10.29% | 10.82% | 11.51% | 12.57% | 15.35% | 25.05% |
| VIRSO | 0.38% | 0.48% | 0.58% | 0.84% | 1.75% | 6.31% |
| Model | Best | 25th | 50th | 75th | 95th | Worst |
|---|---|---|---|---|---|---|
| NOMAD | 0.28% | 0.30% | 0.31% | 0.32% | 0.40% | 17.70% |
| Geo-FNO | 1.17% | 1.35% | 1.53% | 1.92% | 2.56% | 17.32% |
| GNO | 2.76% | 2.78% | 2.80% | 2.83% | 2.89% | 18.09% |
| VIRSO | 0.25% | 0.26% | 0.28% | 0.29% | 0.34% | 17.72% |
| Model | Best | 25th | 50th | 75th | 95th | Worst |
|---|---|---|---|---|---|---|
| NOMAD | 0.93% | 0.93% | 0.95% | 0.99% | 1.14% | 1.20% |
| Geo-FNO | 1.04% | 1.05% | 1.07% | 1.11% | 1.18% | 1.20% |
| GNO | 9.31% | 9.33% | 9.37% | 9.45% | 9.57% | 9.61% |
| VIRSO ∗ | 0.80% | 0.80% | 0.81% | 0.84% | 0.92% | 0.96% |
| VIRSO | 0.66% | 0.67% | 0.69% | 0.71% | 0.77% | 0.80% |
| Configuration | Mean | |||||
|---|---|---|---|---|---|---|
| No Embed, No Skip | 0.98 | 5.83 | 5.84 | 4.58 | 3.57 | 4.16 |
| Embed Only | 0.70 | 1.01 | 0.94 | 0.65 | 1.34 | 0.93 |
| Skip Only | 0.58 | 1.41 | 1.57 | 1.45 | 1.60 | 1.32 |
| Embed and Skip | 0.47 | 0.87 | 0.86 | 0.71 | 1.24 | 0.83 |
| Model | Parameters | Mean Relative Error (%) | |||||
|---|---|---|---|---|---|---|---|
| Mean | |||||||
| Spatial only | 0.11 M | 3.62 | 18.71 | 20.54 | 20.71 | 17.70 | 16.27 |
| Spectral only | 1.58 M | 0.55 | 1.00 | 0.93 | 0.72 | 1.29 | 0.90 |
| Spectral only (no skip) | 1.58 M | 1.21 | 6.81 | 7.81 | 7.03 | 5.94 | 5.76 |
| Spectral + Spatial | 1.66 M | 0.47 | 0.87 | 0.86 | 0.71 | 1.24 | 0.83 |
| Graph | Edges | Min Degree | Max Degree | Mean Error |
|---|---|---|---|---|
| KNN, | 135K | 30 | 53 | 0.83% |
| KNN, | 201K | 45 | 75 | 0.79% |
| KNN, | 408K | 93 | 134 | 0.67% |
| Radius, | 150K | 7 | 77 | 0.71% |
| Radius, | 292K | 24 | 134 | 0.62% |
| Parameters | Mean | |||||
|---|---|---|---|---|---|---|
| 2.31 M | 0.39 | 0.47 | 0.54 | 0.36 | 1.12 | 0.58 |
| 1.66 M | 0.41 | 0.47 | 0.54 | 0.38 | 1.13 | 0.59 |
| Model | Parameters | Mean Relative Error (%) | |||||
|---|---|---|---|---|---|---|---|
| Mean | |||||||
| Spatial only | 0.11 M | 10.12 | 31.58 | 24.02 | 25.82 | 29.26 | 24.16 |
| Spectral only | 1.58 M | 0.50 | 0.66 | 0.71 | 0.50 | 1.20 | 0.71 |
| Spectral only (no skip) | 1.58 M | 1.46 | 8.04 | 8.78 | 8.54 | 7.34 | 6.83 |
| Spectral + Spatial | 1.66 M | 0.41 | 0.47 | 0.54 | 0.38 | 1.13 | 0.59 |
| Model | Param. | Mean Relative Error (%) | |||||
|---|---|---|---|---|---|---|---|
| Mean | |||||||
| NOMAD | 0.26 M | 4.61 | 11.47 | 9.72 | 6.78 | 8.60 | 8.24 |
| Geo-FNO | 0.26 M | 2.58 | 5.54 | 5.46 | 3.21 | 4.26 | 4.21 |
| GNO | 0.27 M | 3.37 | 9.89 | 10.75 | 11.15 | 11.82 | 9.40 |
| VIRSO (2L) | 0.26 M | 1.36 | 2.00 | 2.14 | 1.73 | 2.53 | 1.95 |
| VIRSO (14L, small) ∗ | 0.18 M | 1.39 | 2.09 | 1.94 | 1.33 | 2.14 | 1.78 |
| Model | Param. | GPU% | Mem% | Mem (MiB) | Pwr (W) | Lat. (ms) | Energy (J/it) |
|---|---|---|---|---|---|---|---|
| NOMAD | 0.26 M | 15.78 | 1 | 949.95 | 131.74 | 2.00 | 0.23 |
| Geo-FNO | 0.26 M | 19.63 | 1.21 | 1017.31 | 129.27 | 5.10 | 0.56 |
| GNO | 0.27 M | 86.78 | 36.15 | 1965.99 | 572.00 | 20.48 | 10.07 |
| VIRSO (2L) | 0.26 M | 26.01 | 2.49 | 1033.34 | 146.35 | 4.29 | 0.54 |
| VIRSO (14L, small) | 0.18 M | 29.92 | 2.69 | 999.99 | 156.31 | 13.74 | 1.81 |