I see a lot of **** around here, but BF3 will never take full advantage of 6 cores, it is simply not programmed that way.
The GPU consists of many different operators, dealing with different parts of the graphics. For example if shaders or memory bandwidth is limited, raster operators would sit idle, waiting for input. Therefore you can not expect it to be fully used.
If you have vsync enabled without additional framebuffers your GPU will often sit and wait, because it is only allowed to deliver certain amounts of frames per sec.
If you are having issues with framerates, make sure your drivers are up to date, or perhaps you should have invested in a better GPU.