Also, another important thing to have into account is the data loading approach.
In case you are trying to load all entities via the same WF Profile step, depending on the data volume and number of entities, that could highly impact performance as OS is not able to parallelise the load. Instead, consider setting up one load step per Entity / group of entities so these are processed in parallel.
There are ways you could still trigger all the different loads centrally (e.g.: via a dashboard button that triggers a batch load) if required.
One other point would be to review what servers are being used for those heavy tasks e.g.: if triggered via a button have the load running on the Stage server and distributing the other activities between the DM and Consolidation servers as appropriate.