Unlocking the shaders alone results in a very minor performance increase. Increasing the core clock to 6970 speeds has a much greater impact. The problem is that the 6970 uses higher-end memory, so increasing the memory to 6970 speeds is a little more risky.
That link shows the performance differences. There is also an actual review up somewhere with several benchmarks, but I haven't been able to find it. The conclusion, that I recall, is the modded 6950 with unlocked shaders and 6970 clocks runs at exactly the same performance level as a normal 6970... for $100 less.
So, the conlusion I draw from this brief review is that a 6950 OC'ed does come close to a 6970, but the extra shaders in the 6970 make a very small difference to overall performance. In my opinion, unlocking the shaders on a 6950 is not necessary, but fairly easy to do, and relatively safe with a backup BIOS.
The other thing I take away is the observation that the GTX 560 @ 950 mhz, or above, is a common factory set speed for several retail versions (Zotac AMP!, Gigabyte SOC, Sparkle Calibre, Galaxy/KFA2 White Edition, etc.). Yet the 6900 series needs to be overclocked by the user to reach that speed. Overclocking one of these pre-overclocked cards would undoubtedly lead to even more performance gains.