Installing more RAM, or increasing the amount of graphics memory doesn't improve performance, it rather prevents performance degradation once that RAM is fully used. Going to 1GB of graphics memory won't make it run faster, it will simply allow you to run at a higher texture quality (games like SC2 actually give you the information in the texture setting to tell you the video RAM required for each level).
Assuming memory bandwidth is not limited, this would mean that going to a higher texture quality with a higher but appropriate amount of graphics memory would have little to no noticeable loss of performance. The reality is that even with the dramatically higher memory bandwidth available to Sandy Bridge chips, which offers the HD 3000 almost double the memory bandwidth of the older 9400M and much more than the 320M but with dramatically lower latency, there are still limits and you can't keep scaling up linearly.
Whether Linux, Mac OSX, or Haiku, you can't change the graphics memory at the OS level, as its set at the EFI level, and currently nothing exceeds 512MB on a Sandy Bridge anyway. Lastly, once the HD3000, which uses shared system memory for its dedicated graphics memory runs out of dedicated graphics memory, it simply continues to use system memory.
In other words.
It uses shared system memory from its allocation until it has used it all, then it uses... shared system memory. The only point of having an allocation at all is so that the kernel scheduler can't arbitrarily swap out currently used graphics memory when it runs out of system RAM altogether. If you have 8GB, you're not going to be swapping in games anyway, so it becomes irrelevant, and the dedicated allocation only really matters in 2GB or 4GB situations where letting it share freely would allow the kernel to behave stupidly once at its resource limit.