The GTX660 is mildly faster on
average. However, the 7850 2GB pulls far ahead when overclocked. The HD7850 overclocks 30-40%; the GTX660 overclocks 10-15%, according to what I have read. Do note that the HD7850 overclocked heavily would give you around HD7950 stock performance, a $300 card (which itself overclocks 30-40% as well :P). Some HD7850s even overclock 50%, if you have a good card.
If you're not considering overclocking, then the GTX660 is faster out-of-the-box; however I wouldn't recommend the GTX660 based on a memory issue where the last 0.5GB of the card run at one third the speed of the first 1.5GB (due to using 3x64 = 192-bit memory bus for 4x512MB = 2GB VRAM).
This article explains it well. I urge you to read it carefully, and if there's something you didn't get, I'd be glad to explain it.
Until now, it hasn't been shown to have any effect, but I'd be worried when games start needing more than 1.5GB of VRAM at full speed access (a scenario which the card seems to currently avoid due to the drivers employing some tricks and magic to probably make sure that the data accessed the most is kept in the first 1.5GB).
However, as the article mentions, this is a black box, and pretty much nobody outside Nvidia would know what this design decision brings with it.
If they had gone with 1.5GB, it would look bad in front of the HD7850 2GB, and if they have 3GB models, those might be a better option but then the price would go up and in that case the overclockable, cheaper, HD7850, or the overclockable, comparable HD7870 would probably be a better choice.