the sub forms workflows will be executed first as they are being saved first. You can check this by adding some test workflows and viewing the workflow audit history. If you do not want the workflows on the sub items to run until after the main form has been saved, consider start the sub form workflows on a status change. You can set a table controls lifecycle status value to do this.
Thanks for the information - that's what I needed to know. Good ideas on the other options.