There's no formula for this, you need to try. Use clocktweak on Windows or atitweak on Linux, lower the voltage to the known lowest threshold (what you see when cards are idle) and put the clocks really low e.g. core@400MHz, mem@300MHz.
Then start increasing the core clock gradually (10-20 MHz at a time) until the system hangs (during mining of course). If you would then use a 10% lower clock you should be fine.
I managed to overclock a 5870 to 900/300 at 1.0V (stock is 1.125V). Much lower heat and power consumption. But it works different for every card, even from the same manufacturer (my other 5870s -same model - need 1.05V and 1.08V for the same overclocking speeds).
I also get a nice 720/300 when all cards run on 0.95V (lowest possible voltage). Very much reduced heat and power consumption but lower hashrate. I configure them like this when I get tired of the noise
.
javascript:swapOptions();
And you can't destroy your cards BTW. It's perfectly safe. If the system hangs, just reboot and they'll be back to stock settings. On the contrary, if you're playing with BIOS flashing you should be very very careful.