- the 7870 is slightly faster overall, the 660 is slightly cheaper (most gtx660's are OC'd versions and would be on par or better than a stock 7870, there are many OC'd 7870's too which would be faster again)
- the 7870 does not support hardware physx acceleration, the 660 does (for games that support physx).
- the 7870 will support AMD's upcoming native "mantle" API, the 660 will support the api through direct x which is slightly slower (probably, but no confirmed reviews yet).
- the 7870 requires 2 x pcie power connectors, the gtx660 uses a little less power and only requires 1 x 6 pin pcie power connector and as a result, has lower power supply requirements.
- if you are ever planning to go dual cards, nvidia's solution is currently superior, although amd have made a beta driver to fix certain issues but only affects dx11 games at resolutions 1440p and lower. They are apparently working on a driver that will solve the microstuttering/frame pacing problem in dx9 games and higher resolutions.
- Would you be able to notice a difference if you had two systems side-by-side with a 660 in one and 7870 in another, probably not, although some games favor one architecture over the other, so it would also depend on the game.
- look out for clearence items like the 660ti, in Australia there are a couple places that have the faster 660ti for cheaper than both these cards for example.....