Quick answer: Unity mesh deformation Burst job taking 12ms on mid-tier devices? The job runs single-threaded - convert to IJobParallelFor with appropriate batch size.

Skinned mesh deformation profiled fine in editor. On Android, it eats 70% of the frame budget.

Parallelize the job

public struct Deform : IJobParallelFor {
  public void Execute(int i) {...}
}

Schedule with batch size = vertexCount/8. Burst parallelism scales nearly linearly across CPU cores.

Tune batch size

Too small: scheduling overhead. Too large: imbalance. Test 32-256 on target devices.

Profile with the Job Profiler

Window > Analysis > Profiler > Jobs. Visualizes per-worker scheduling; imbalance is obvious.

“Single-threaded Burst is faster than C#. Parallel Burst is faster than single-threaded.”

When mesh deformation is the hot path, parallelize early. Mobile gains the most because mobile CPUs are the most parallel.