split EngineCalculationTask