CPU Burst Time Calculator
Calculate CPU burst time and turnaround time for scheduling algorithm analysis.
About CPU Burst Time Calculator
CPU burst time is the length of a single uninterrupted stretch of CPU execution between a process's I/O waits — a core concept in classical CPU scheduling theory (used by algorithms like SJF and priority scheduling) and still relevant for understanding whether a workload is CPU-bound (long bursts) or I/O-bound (short, frequent bursts). Dividing total CPU time by the number of I/O wait events approximates the average burst length; CFS on Linux doesn't use burst prediction directly, but interactive/I/O-bound processes with short bursts naturally get scheduled promptly because they accrue vruntime slowly relative to time elapsed, similar in effect to older burst-aware scheduling heuristics.
Formula
Average burst time
avg_burst = total_cpu_time / io_wait_events
- T_{cpu}
- total CPU time used
- N_{io}
- number of I/O wait events
Worked example
With the default values below, CPU Burst Time Calculator returns Average CPU Burst Time (ms) of 80.000. Change any input above and every figure here is recalculated in your browser.
Inputs used
- Total CPU Time Used (ms)minimum 0
- 4,000
- Number of I/O Wait Events (context switches to I/O)minimum 1
- 50
- Burst Time Variance (%, for range estimate)accepts 0–200
- 30
Results
- Average CPU Burst Time (ms)
- 80.000
- Scheduling Pattern
- Long bursts — CPU-bound process pattern; scheduling fairness (vruntime accrual) matters more than burst-to-burst switching overhead.
- Low Estimate (ms)
- 56.000
- High Estimate (ms)
- 104.000
Step by step
- 1Values used
- 2Average burst time
- 3Average CPU Burst Time (ms)= 80.000
- 4Scheduling Pattern= Long bursts — CPU-bound process pattern; scheduling fairness (vruntime accrual) matters more than burst-to-burst switching overhead.
- 5Low Estimate (ms)= 56.000
- 6High Estimate (ms)= 104.000
Assumptions and limits
- The result is derived only from the 3 inputs listed above. Anything not among them is not part of the calculation.
- In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
- Figures are rounded for display to 3 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.
How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.
Frequently Asked Questions
Why does burst time matter for scheduling if Linux doesn't use SJF?
While CFS doesn't explicitly predict burst length like Shortest-Job-First scheduling, processes with naturally short bursts (frequent I/O waits) accumulate vruntime more slowly relative to wall-clock time than CPU-bound processes, which has a similar practical effect: interactive/I/O-bound workloads tend to get responsive scheduling without needing an explicit burst-prediction algorithm.
How can I observe a process's actual burst pattern on Linux?
`strace -c -f <command>` shows syscall time breakdown including time blocked in I/O calls, and tools like `perf sched record`/`perf sched latency` can show actual scheduling event timing per task, from which burst-to-wait patterns can be reconstructed.
What's a 'typical' CPU burst time?
There's no universal number — interactive processes (shells, GUI apps) commonly show bursts well under 10ms between I/O/input waits, while CPU-bound batch or compute workloads can run for tens or hundreds of milliseconds (or far longer, until preempted) between any I/O activity at all.
