I just finished reading this post: https://developer.yahoo.com/performance/rules.html#flush and have already implemented a flush after the top portion of my page loads (head
Following Piskvor's point - if you are expecting a 20s+ wait, you may be better off providing a basic page (which can be gzipped) and using Ajax to update the page when the slow process has finished. You do start to infringe the basic usefulness of static html, though.