Skip to content
Calcrivo

Job Completion Time Calculator

Estimate total wall-clock time for a Kubernetes Job to finish all its completions given a parallelism level and average pod duration.

Inputs

tasks

The Job's .spec.completions — total number of successful pod completions needed.

pods

The Job's .spec.parallelism — max pods running concurrently.

seconds

Average time for one pod to complete its task.

Estimated Job Completion Time

5.0minutes

Estimated Job Completion Time

0.08hours

Sequential Batches

10

Total Time

300seconds

Step by step

  1. Batches = ceil(completions ÷ parallelism)

    ceil(100 ÷ 10)

    = 10

  2. Total time = batches × avg pod duration

    10 × 30s

    = 300s

How it works

A Kubernetes Job with N completions and parallelism P runs in ceil(N/P) sequential batches, since only P pods run at once. Total wall-clock time is that batch count multiplied by the average time for one pod to finish. Increasing parallelism reduces total time proportionally until you hit cluster capacity limits, at which point new pods queue as Pending instead of running concurrently.

Formula

totalTime = ceil(completions / parallelism) × avgPodDuration

N
Total completions required (.spec.completions)
P
Parallelism (.spec.parallelism)
t_p
Average pod duration in seconds
T
Estimated total job wall-clock time in seconds

Frequently Asked Questions

What if pod duration varies a lot between tasks?

Use a higher percentile (p90) rather than the mean for avgPodDurationSeconds, since the slowest pod in each batch determines when the next batch can start — variance directly extends total wall-clock time.

Does raising parallelism always reduce completion time?

Only up to the point where the cluster has spare capacity to actually run that many pods concurrently — beyond that, extra parallelism just means more pods sit Pending waiting for resources.

How is this different from a CronJob?

A Job runs once until it reaches its target completions; a CronJob creates a new Job on a repeating schedule. Use the CronJob schedule calculator to plan recurring runs.

You might also need