Let's perform one calculation and record the "1st in-process" elapsed-seconds (exclude startup and shutdown costs).
Let's perform four more warm-up calculations and then perform one final calculation and record the "6th in-process" elapsed seconds (exclude startup and warmup and shutdown costs).
Also show BenchExec elapsed-seconds as "process / 6" (amortize startup and warmup and in-process measurement overhead and shutdown costs).
The N=50,000,000 workload used for tiny tiny n-body programs takes seconds and tens-of-seconds. These Java in-process measurements become tenths-of-a-second faster.
otoh Measurement in-process changes the programs that will be measured. The placement of those changes has to be correct. Those changes must have the same effect across different programming languages and implementations. Measurements can exclude one-time startup and warm-up and shutdown costs but sometimes fast startup does matter.
otoh Measurement with BenchExec is independent of the programs that will be measured and isolated from other running processes. Measurements will include one-time startup and warm-up and shutdown costs but sometimes startup is fast.