Since very few people here seem to understand what they're talking about, I'll drop some knowledge for you all. I am not a software engineer, but I have done some architecture work.
Firstly, from 2GB of Ram to 1000GB of Ram you won't see a bit of difference. Vista might eat 512 on a bad day if it's doing a lot of stuff. Sins won't eat more than 1.2 GB or so. (I have 8GB
You can upgrade to a Quadro 5800 and drop your resolution and effects to nothing and you won't see a performance improvement.
Most likely, the reason that Sins slows down is that you have too many ships in your galaxy, and your CPU is pegged. Let's pretend that you have 8 players with large fleets. (2000 support = ~200 ships PLUS 100 strike craft) Now multiply that by 8 and you've got 2,400 decisions that need to be made every polling interval. It's not just the enemy AI, it's the programmatic routines that tell a ship how to navigate, avoid obstacles, follow orders, etc. Sins cheats a little bit by estimating ship activities that are taking place off-screen. The "obvious" solution would be to allow these threads to be run in parallel, but that's a lot easier said than done. To split a single process, you can do it either geographically (each star gets it's own thread?) or by player. (each player gets it's own thread) The geo approach is possible, but it can break down quickly, especially when you start processing dozens of process handoffs. You could run each player/AI in it's own thread, but then you need to set up either a serial aggregator (major bottleneck) or a fast thread-to-thread messaging system. When we look a the volume of traffic that would need to be messaged, the overhead explodes. Each event now has to be messaged to every other individual thread to see if it impacts it. That's a TON of memory overhead. There are other techniques, but each of them incurs a stiff penalty and takes a long time and a lot of expertise to implement properly. I'm SHOCKED that sins runs as well as it does on a single thread, so the programmers know their stuff and how to optimize. Retrofitting a product to multithread is a HUGE job, so don't expect it anytime soon.
Yes, multicore processing is the way that things are going, but it's REALLY hard to do it. In addition, your memory bandwidth is divided amongst your cores, If you ran a single core of the same speed, you might actually have marginally better performance. (if you shut down most of your windows services)
To get better performance, try setting processor affinities for all your processes (except Sins) to Proc 0. Set Sins to Proc 1. Turn off your virus scanner (overhead city!) spyware scanners, and every process you don't need. Then launch sins and play normal or small fleet sizes.
Hope this helps and/or educates
Heywood