question: public void execute ( ExecutionContext ec ) throws DMLRuntimeException { ArrayList < Instruction > tmp = _inst ; try { if ( DMLScript . isActiveAM ( ) ) DMLAppMasterUtils . setupProgramBlockRemoteMaxMemory ( this ) ; long t0 = DMLScript . STATISTICS ? System . nanoTime ( ) : 0 ; if ( ConfigurationManager . isDynamicRecompilation ( ) && _sb != null && _sb . requiresRecompilation ( ) ) { tmp = Recompiler . recompileHopsDag ( _sb , _sb . get_hops ( ) , ec . getVariables ( ) , null , false , _tid ) ; if ( MLContextProxy . isActive ( ) ) tmp = MLContextProxy . performCleanupAfterRecompilation ( tmp ) ; } if ( DMLScript . STATISTICS ) { long t1 = System . nanoTime ( ) ; Statistics . incrementHOPRecompileTime ( t1 - t0 ) ; if ( tmp != _inst ) Statistics . incrementHOPRecompileSB ( ) ; } } catch ( Exception ex ) { throw new DMLRuntimeException ( "Unable to recompile program block." , ex ) ; } executeInstructions ( tmp , ec ) ; }
target:  Executes this program block (incl recompilation if required).