PhysX on a CPU? Sure.. it CAN be done... horribly. PhysX runs much better on a GPU where there are a bunch of little cores running it versus 4 heavy cores running it.
If PhysX is a deciding factor buy an nVidia card, period. If you start running PhysX on your CPU and tying up it's work cycles your game play will suffer. The Video card will end up waiting on the CPU to provide data and your Frame Rate will suffer (stuttering, etc).
If you don't care about PhysX the 7970 GHz Edition and GTX 770 are fairly comparable cards. Each wins out depending on what game you're playing. Some games favor nVidia GPUs, other games favor AMD. Personally, I've been a hard core nVidia fan as their cards have just treated me better from a driver support stand point.
I got the GTX 770. However, NewEgg had a Sapphire 7970 GHz Edition for $349 with 4 free games recently. I told my brother to buy that card instead of the $400 GTX 770. In his case he didn't have 3 of the 4 games, and the $50 discount on top of that was butter.
Depends on what you're going to play and the deal on the card.
So far as the 2GB vs 3GB memory issue: Who cares? Unless you're already playing at higher than 1080p anything more than 2GB is worthless. I play Skyrim with a ton of graphic texture modes and it runs fine on my 2GB GTX 770 (granted it uses all 2GB). But nothing else maxes out the video RAM.