UVM Phase jumping: Discrepancy in forward jumps

In reply to sharvil111:

What I mean is, if you are replacing in the test the run_phase by main_phase the jumping never happens. It happens only if you use the run_phase. I believe it is not a good coding style the employ both Kinds of phasing in a testbench, using in the env the run sub-phases and in the test run_phase.

I’m not sure if you are really saving time jumping from one phase to another. Only the run_phase and the sub-phases are consuming time. All the other phases are functions.
My experience shows the real delay comes always out of the RTL.