I haven't done anything complex in about 10 years now, but when I did, I placed absolutely everything first, and I spent a lot of time here optimizing it... sometimes 3 days up to a week with very little routing being done, if at all; it really depends on the board size and complexity here. Even after that, I generally end up about 80-90% right, and have to move a handful of components around anyways during routing. Spending the time up front to place efficiently will always route faster with less frustrating times when you have to move a whole section to get something in that you missed..
During the placement process, I often will route parts in my head as I place, so that I can see and get a feel for what the flow be like. This usually works for me, but clearly gets harder on more complex boards, and harder to keep track of everything.
Most of my experience on these larger boards has been years in the past, on multibus , sbus and mbus boards. I haven't done much of anything complicated and dense lately; all my current projects have been small with a handful of components or simply embedded software development work so I am rusty these days.