when you enter a crossfire configuration your system uses the card that is located in the main pcie slot on your mobo as the master gpu, meaning that all 3d applications start through this card and when the card reaches a certain percentage of use the second card kicks in or however many cards you have, crossfire uses what we call AFR or alternate frame rendering to create an image with both cards or however many, this means that while one card does the upper half of the screen the counterpart does the bottom, or odds and evens, each gpu decides according to its firmware, that being said whenever you have crossfire enabled your system distributes an even load of work across both cards
Found this link through Google, thought I'd bring it back for further input.
Since the 6xxx cards are out, many of us are looking at them verse X-firing 5xxx cards. I, myself, was unaware that X-fire utilized the memory from each card. I was considering upgrading my 1gb 5770 to a 2gb 6950 or 6970, both of which are too long for my CM Scout case, without HDD bay mods.
Still looking for positive confirmation that X-firing two 1gb 5770 cards will yield 2gb GPU memory.
You are correct, having two cards does give you double the memory but each card uses their own individual framebuffer. This is why you say strange problems with the HD5970 at resolutions over 1920x1080, while you do have more memory, once you pass over the limit for the gpu the information must be cached back into the vram, very similar to the way your actual system ram works
nThe answer by CG_Gamer may be "mostly" correct, one thing that isn't is that if a game has crossfire support, it doesn't wait until a certain percentage of uses has been met before it uses the 2nd card, it just uses it and gives you ridiculous FPS if it can.