TesboFlow · GPU-native CFD
Days of CFD.Done before lunch.
The entire pipeline — mesh, assembly, linear solve, post — lives on the GPU, and nothing ever waits on a CPU. Steady or transient, RANS or LES, moving or overset mesh: one binary, one config file, as many GPUs as you've got.
100 million cells. One step. One second.
Measured: 110.6M cells · 8×A100 · 1.5 s/step
3,000×
vs one CPU core
100×
vs 18 CPU cores
REAL SOLVER OUTPUT
Not a render. A solution.
Every frame is computed by TesboFlow on the GPU — the geometry, the turbulent wake, the vortex structures. This is what the solver actually produces.
PERFORMANCE
This fast. On this hardware. Already.
Four receipts, not a target. Against one core, against eighteen cores, in-house AMG against NVIDIA AmgX, and a mesh that does not fit one card.
- 3,000×
vs one CPU core
1M-cell cavity. 77 s/step on one CPU core. TesboFlow 22.8 ms on one H200.
- 100×
vs 18 CPU cores
8.17M Ahmed body. 11.4 s/step on 18 CPU cores. TesboFlow 94 ms on one H200.
- ~2×
vs NVIDIA AmgX
In-house AMG. Ahmed body, one A100, 1,000 iterations: 35 s and 7 J against 59 s and 11 J.
- 1 s
100 million cells, one step
110.6 million cells on 8×A100 at 1.5 s/step, 61.6 GiB per card. One hundred million cells, one second a step.




100 million cells. One step. One second.
Measured: 110.6 million cells, eight A100s, 1.5 s/step, 61.6 GiB per card. One H200 holds 30.4 million cells at 126 GiB.

What these numbers are
Four measured scenes. A million-cell cavity against one CPU core. The Ahmed body against eighteen cores. In-house AMG against NVIDIA AmgX. A mesh that does not fit one card. 110.6 million cells at 1.5 s/step on eight A100s, 61.6 GiB per card.
The same 1M-cell cavity runs from V100 through H200. One solver, six GPU generations.
Typical scenes, not a contract. The 100–1000× vs a CPU cluster remains a target, not these measurements.
FROM THE SOLVER
Cases we actually ran
Solver pictures from cases we actually ran — stills, and a few short clips.

Interposer cold plate
Conjugate heat transfer through the channels and the stack. Fluid and solid in one solve.
CHT · supported

DrivAer
Production-shape passenger car, external flow. The picture is the wake, not a drag coefficient.
External flow · wake

CAARC tall building
Canonical high-rise in an atmospheric boundary layer. Side-face shedding, not a pretty render.
Standard CAARC prism

Sphere
The bluff-body everyone learned on. Streamlines wrap, then run off downstream.
Canonical external flow

JEDEC PBGA
Package-scale conjugate heat transfer. The hot corner is the heater, not a texture.
CHT · package scale

Aorta
Patient geometry, simplified inlet and outlets. A flow picture, not a clinical study.
Not a clinical study
BENCHMARK
The three numbers on a single line
The same three measurements, on one line. Typical, not a contract.
| Case | Mesh | CPU reference | TesboFlow | Speedup |
|---|---|---|---|---|
| Lid-driven cavity, laminar | 1M cells | CPU · 1 core · 77.0 s/step | 1× H200 · 22.8 ms/step | 3,000× |
| Ahmed body 25°, steady RANS | 8.17M cells | CPU · 18 cores · 11.4 s/step | 1× H200 · 94 ms/step | 100× |
| Generated 3-D box | 110.6M cells | — | 8× A100 · 1.5 s/step | one step, one second |
Typical scenes, not a contract. Hardware and mesh as in the table.
VERIFICATION
How we know the answers are right
Correctness is checked three independent ways: analytic and manufactured solutions, published benchmarks, and field-by-field cross-checks against an independent CPU solver.

Analytic and manufactured solutions
Channel and cavity flows, periodic flows, transient and multi-layer conduction, surface tension, hydrostatic pressure, sub-grid closure.
Published benchmarks
Ghia lid-driven cavity, and the Ahmed body 25° against the 1984 / 2011 wind-tunnel band.
Cross-checks against an independent solver
Field-by-field comparison with a mature CPU solver on conjugate heat transfer and overset turbulence, plus same-mesh Ahmed drag against a CPU solver (−0.2%).
WORKFLOW
From geometry to insight
Three steps, one GPU pipeline — mesh, solve and post-process all on the GPU.

Step 01
Define the case
Bring in a mesh — TesboMesh writes one TesboFlow will take, or import a mesh you already have — and describe the physics and boundaries in a single case file.
- TesboMesh writes named patches into TesboFlow-native mesh, or import common formats
- One config file selects the physics — no separate programs
- Decompose the case for a multi-GPU run
Ahmed body 25°, 1.09M cells — midplane of the mesh the solver ran

Step 02
Solve on the GPU
Set the pressure-velocity coupling and turbulence model; the whole solve stays on the GPU.
- SIMPLE / PISO / PIMPLE, steady or transient
- RANS and LES, passive scalars and heat transfer
- One binary from a single GPU to many
Cold-plate temperature field, solved on the GPU

Step 03
Export & post-process
Write results to standard formats and pull out the quantities you care about.
- Opens directly in ParaView and other standard tools
- Forces, coefficients and wall quantities
- Runtime logs plus a one-click support bundle
Sphere streamlines — the field you actually look at
CAPABILITIES
What TesboFlow does
What TesboFlow does today. Typical capability, not a contract.
Physics
- Incompressible flow (steady / transient)
- Compressible flow (pressure-based / density-based)
- RANS turbulence (k-ε, k-ω SST, wall functions)
- Large-eddy simulation (WALE, Smagorinsky, kEqn)
- Hybrid RANS-LES (DES / DDES)
- Energy equation / heat transfer
- Packed-bed / filter resistance (Darcy–Forchheimer)
- Passive scalar transport (multi-equation, or scalar only)
- Conjugate heat transfer, multi-region
- Multiphase flow (VOF free surface)
Numerics
- Finite-volume discretisation
- Pressure-velocity coupling: SIMPLE / PISO / PIMPLE
- High-resolution convection schemes
- Non-orthogonal mesh correction
- GPU Krylov solvers with preconditioners
- In-house GPU algebraic multigrid
- Fast pre-solve initialisation for better startup convergence
Mesh & boundaries
- Moving / deforming mesh
- Overset (chimera) mesh, multi-body
- Rigid-body motion
- Cyclic (periodic) boundaries
- Mesh import / conversion from common formats
Parallel & platform
- GPU-native pipeline end to end
- Multi-GPU, any number of devices
- Multi-node cluster
- Deterministic results: the same case gives the same answer every run
- Parallel mesh read + single-file parallel result write
- CPU-only build from the same source, for machines without a GPU
- Double-precision kernels, mixed precision supported
- On-premise / private deployment
Workflow
- Single executable driven by a case configuration file
- Result export for post-processing
- Opens directly in ParaView and other standard tools
- Scriptable for batch and automated runs
INTERACTIVE
Run a solver in your browser
This wind tunnel is a live GPU fluid solver. Pick a body, switch between smoke, velocity and pressure, or draw your own obstacle and watch the flow respond in real time.
Interactive Wind Tunnel Laboratory
Drag mouse inside wind tunnel to manually block air streams and visualize real-time Navier-Stokes fields.
GPU stable-fluids solver: a 512x256 lattice with a 30-pass Jacobi pressure projection enforcing local mass conservation (div U = 0), running entirely on the GPU.
ARCHITECTURE
GPU-native, not ported
The whole pipeline lives on the GPU, so there is no CPU–GPU round-trip every iteration. That is where the speed comes from — the data stays where the compute is.
Scale across multiple GPUs with domain decomposition. The same code runs on one card or many, on a single machine or across a cluster.
ROADMAP
Available today, and what's next
- Incompressible flowSteady and transient solvers, validated on standard benchmarks.
- Turbulence (RANS / URANS)Industry-standard turbulence modeling.
- Scale-resolving turbulenceLES and DES for unsteady, separated flows.
- Dynamic meshMoving and morphing geometry.
- Overset meshOverlapping grids for complex relative motion.
- Conjugate heat transferMulti-region fluid–solid heat transfer. Cold-plate and JEDEC pictures on this page.
- Compressible flowPressure-based and density-based. Transonic and supersonic.
- Free-surface VOFVolume-of-fluid free surface: dam break, sloshing, filling.
- Next
- Automation APIScripted design sweeps and pipelines.
APPLICATIONS
Where it's used
Aerospace design
External aerodynamics for wings and bodies — fast iteration on lift, drag and wake structure.
Automotive aerodynamics
Vehicle drag and wake studies with dynamic and overset meshes for wheels and moving parts.
Turbomachinery
Rotating blade rows and internal passages, resolved with moving mesh or overset. There is no frozen-rotor (MRF) source term: the rotor actually turns.
Marine hydrodynamics
Hull and propulsor flows where turnaround time decides how many designs you can test.
HVAC & ventilation
Airflow, comfort and contaminant transport across rooms and enclosures.
Industrial fluid processing
Mixing, manifolds and internal flows for equipment design and optimization.
DEPLOYMENT & SUPPORT
Runs on your hardware, with support behind it
What you need to know before planning an evaluation: where TesboFlow runs, what it needs from the machine, what happens when a run fails, and how your team gets up to speed.
On-premises deployment
A self-contained container image or a relocatable package that unpacks into an ordinary directory on your own workstation, server or cluster. Nothing to install alongside it, and no administrator rights required.
Hardware and environment
Linux with an NVIDIA GPU, from the Volta through Hopper generations. A preflight check reports whether a machine is ready — driver, GPU and licence — before the first run.
Technical support
Every run writes a self-describing log, and a single command collects a diagnostic bundle. Deployment assistance and case-setup guidance come with the licence.
Training
Courses and tutorials for engineering teams, from a first case through to production workflows.
The mesh can come from TesboMesh: same patch names, same quality gate, same file. Closed loop — send us the geometry, we return the mesh and a report, and we can run it in TesboFlow.
See TesboMeshLicensing is agreed per authorised machine, and is checked locally: no licence server, and no network access needed to run.
Interested in TesboFlow?
We're onboarding early users and partners. Tell us about your workload and we'll show you what GPU-native CFD can do for it.