I think that a critically important point is being missed in these discussions.
There is a means of fighting a main deck fire, and that is to depressurize the airplane and remain at altitude until the last possible moment. In the case of the 747 the checklist results in an unpressurized airplane at FL 250 – and the checklist even calls for a climb to that altitude if necessary.
The mindset should not be to start down to the nearest airport -- the mindset should be to start toward the nearest airport but to stay at altitude for as long as possible before making like a brick for the runway. Starting down early needs to be recognized as a potentially fatal mistake.
This begs the question of how much distance it does take to get from FL250 to the runway end. It also brings up the question of what to do if there is a fire while over a large body of water. There are serious physiological issues with unpressurized flight above FL250, but they pale in comparison to a fire and/or an open water ditching. So this guy is going UP if things are not rapidly improving once depressurized at FL250.