There's really no comparison between them is there? Regular profiler has their usage but don't they change the runtime characteristic a lot specially in tight loop and cpu bound situations? The biggest advantage of JFR are two folds running it in production, problems that are hard to reproduce and secondly not getting wrong data because the profile has changed the characteristic, forced de-optimization on the code and such.