Skip to main content
Migration Notice
We're migrating documentation from the old portal into this one. Some things may look a little different or out of place in the meantime — we know, and we're working to get it right. If something's unclear or doesn't look right, let us know.

Agent Dashboard — JVM CPU

What this chart shows​

JVM CPU % — the percentage of total host CPU consumed specifically by the copy engine JVM process, sampled from OperatingSystemMXBean.getProcessCpuLoad() and reported on every heartbeat (~30 s + 0–10 s jitter).

Compare this against Host CPU to isolate how much of the host's compute budget the copy engine is consuming vs other processes.

How to read it​

Value rangeInterpretation
0–30%Normal during active copy jobs
30–60%Heavy copy workload — many parallel threads compressing, hashing, or transferring
> 60%CPU-bound — consider reducing copy_threads_per_job or spreading jobs across agents

JVM CPU vs Host CPU​

  • JVM CPU tracks only the copy engine process.
  • Host CPU tracks the entire machine.

If Host CPU >> JVM CPU, another process on the same host is competing for resources. If JVM CPU ≈ Host CPU, the copy engine is the dominant consumer and any saturation is directly caused by copy workload.

Polling interval​

Sampled on every heartbeat (~30 s + 0–10 s jitter). JVM CPU can spike briefly during GC collection cycles — these appear as narrow spikes on the chart and are normal.

Tips​

  • S3 TransferManager (TM) uploads are I/O-bound rather than CPU-bound. High JVM CPU with TM enabled usually indicates heavy multipart preparation or large-object reads from the source.
  • If JVM CPU is saturated but object throughput is low, GC pressure is likely. Check the JVM Heap Used chart — if heap is also high, the agent needs more memory.