Why didn't Shirohige rescue Ace when he was still in Impel Down The news of Ace capture is quite long time before the execution. And surely it will be much easier to save Ace when he was still in Impel Down (or maybe Enies Lobby). Is it because Shirohige is to far away? Can't he ask one of his subordinate or his alliance to save Ace? Where exactly was he at that moment?
Good question and a bit difficult to answer. I think the following things might have influenced White Beard to not save Ace in Impel Down:


The whole Whitebeard crew, including alliance partners, are said to be in New World, not in Grandline. And to come to Marineford, the only way is through Fishmen Island, and mobilizing such large pirate group does take time.
As we now know, the weather of New World is too unpredictable to travel quickly. Although it is not known whether Whitebeard was far away, but weather must have affected his travel time significantly.
Ace was 2 division commander of Whitebeard pirates. So if such a strong character can be captured, then I don't think Whitebeard would risk any more of his family to intercept/rescue Ace in Impel Down or Enies Lobby.
Reaching Impel Down/ Enies Lobby is considered to be difficult as it has natural protection in the form of circular waves which are used exclusively by marine only. Marineford is the remaining area where one can reach easily without going through the circular waves.
Also it is not known but as Kaido tried to block movement of Shanks, a marines tried to stop Whitebeard, so there must be other factors which tried to stop Whitebeard from moving, which stalled Whitebeard from coming quickly.
If he would have been able to save Ace earlier, then there won't be any fight and Ace would be alive right now. And that's not how Oda imagined it to be. ;)