4. Cloud HPC service models
Crash simulation is one of the most demanding workloads in automotive CAE. A single full-vehicle frontal impact model can contain 15–25 million shell and solid elements, run for 120–180 ms of physical time, and require 8–24 hours of wall-clock time on 500–2,000 CPU cores. The solver — typically LS-DYNA, Pam-Crash, or Radioss — is memory-bandwidth bound, scales well up to a few thousand cores per job, and is extremely sensitive to interconnect latency. Choosing the right cloud service model is therefore not a procurement detail; it directly determines whether a 40-job overnight regression suite finishes before the morning standup or drifts into the next day.
This section compares the three dominant delivery models — Infrastructure-as-a-Service (IaaS), bare metal, and HPC-as-a-Service (HPCaaS) — against the specific requirements of explicit crash solvers.
What Each Model Actually Delivers
IaaS gives you virtual machines on a hypervisor. You pick an instance family (e.g., compute-optimized with 96 vCPUs), attach a network file system, install the solver, and manage everything above the OS. The provider owns the physical host, the hypervisor, and the network fabric; you own the guest OS, the scheduler, the MPI stack, and the license server.
Bare metal removes the hypervisor. You rent the entire physical node — all cores, all memory channels, direct access to the NIC — with no noisy-neighbor contention and no virtualization tax on memory bandwidth. Provisioning is slower (minutes rather than seconds), and you still manage the OS and software stack.
HPC-as-a-Service abstracts the cluster itself. You submit a job description (solver, input deck, core count, wall-time limit) through a portal, CLI, or API, and the provider handles node allocation, MPI launch, shared storage, license checkout, and result staging. The unit of consumption is the job, not the node-hour.
Why Crash Solvers Care About the Difference
Explicit crash solvers spend most of their time in element-by-element force calculations that stream large arrays from memory. Two consequences follow. First, memory bandwidth per core matters more than raw clock speed; a VM that shares a memory controller with another tenant can lose 15–30% of effective bandwidth. Second, MPI communication for contact and domain decomposition is latency-sensitive; inter-node latency above ~5 µs noticeably degrades scaling beyond 256 cores.
IaaS instances on general-purpose networks often show 8–15 µs inter-node latency. Bare-metal nodes on a dedicated RDMA fabric (InfiniBand HDR/NDR or RoCEv2) typically deliver 1.5–3 µs. For a 1,024-core LS-DYNA job, that difference can translate into a 20–40% swing in total solve time — enough to change how many design iterations fit into a night.
Matching the Model to the Workload
Not every crash simulation job has the same profile. A useful decision framework separates jobs by core count and coupling requirements:
| Workload | Typical Cores | Recommended Model | Rationale |
|---|---|---|---|
| Single-part explicit (subsystem) | 32–128 | IaaS | Low core count, minimal MPI; VM cost and flexibility win |
| Full-vehicle frontal / side impact | 512–2,000 | Bare metal | Memory bandwidth and RDMA latency dominate; hypervisor tax is measurable |
| Design-of-experiments sweep (20–50 runs) | 256–512 each | HPCaaS | Queue management, license pooling, and result aggregation are the bottleneck, not the solver |
| Coupled thermal-structural | 256–1,024 | Bare metal or HPCaaS | Inter-solver communication needs low latency; HPCaaS if provider supports co-scheduling |
Practical Configuration: A Bare-Metal LS-DYNA Run
The following example illustrates what a bare-metal deployment looks like in practice. Assume a provider offering 96-core nodes with 768 GB RAM, NDR InfiniBand, and a shared Lustre file system. The input deck is a 12-million-element full-vehicle model.
# 1. Provision 16 bare-metal nodes (1,536 cores total)
# via provider CLI — nodes join the same IB fabric
provider compute create \
--type bm.cae.96xlarge \
--count 16 \
--image rhel8-hpc-lsdyna \
--fabric ib-ndr
# 2. Verify interconnect latency between two nodes
ib_send_lat -d mlx5_0 -s 65536
# Expected: ~2.1 µs for 64 KB messages
# 3. Stage input deck to shared Lustre mount
cp vehicle_frontal_v12.k /mnt/lustre/jobs/crash_2417/
# 4. Submit via Slurm with MPI rank placement
sbatch --nodes=16 --ntasks-per-node=96 \
--time=12:00:00 \
--wrap "mpirun -np 1536 \
lsdyna i=vehicle_frontal_v12.k \
ncpu=1536 memory=700m"
# 5. Monitor scaling efficiency
# Compare d3hsp timing block against 768-core baseline
grep "Elapsed time" d3hsp
After the run, inspect the d3hsp file for the timing breakdown. A well-tuned bare-metal job on NDR fabric should show MPI communication below 8% of total solve time at 1,536 cores. If communication exceeds 15%, check rank placement — Slurm may have spread ranks across nodes in a way that crosses spine switches. Forcing --ntasks-per-node=96 and using a topology-aware plugin usually resolves this.
Cost and Operational Trade-offs
Bare metal is not always more expensive per job. A 1,536-core bare-metal run that finishes in 6 hours may cost less than a 1,536-core IaaS run that takes 9 hours due to bandwidth contention, even if the per-core-hour rate is higher. The relevant metric is cost per completed simulation, not cost per core-hour.
HPCaaS shifts the operational burden entirely. You do not patch MPI, tune the fabric, or manage a scheduler. The trade-off is reduced control: you cannot pin ranks to specific NUMA domains, choose your own MPI implementation, or debug at the kernel level. For teams without dedicated HPC operations staff, this is often the right trade.
Choosing in Practice
A pragmatic starting point for most automotive CAE teams: use IaaS for pre-processing, meshing, and small subsystem runs; use bare metal for full-vehicle production jobs where scaling efficiency directly affects turnaround; use HPCaaS for DOE sweeps and overflow capacity when on-premise clusters are saturated. Many teams run a hybrid of all three, routing jobs by core count and deadline.
The key is to measure, not assume. Run a representative deck on each model, record wall-clock time, scaling efficiency, and cost per job, and let those numbers drive the routing policy. The service model is a tool; the simulation deadline is the requirement.