Is SATA bandwith per Port or per Controller?

Solution 1:

It's a bit of a loaded question,

It is per controller but where your controller resides and what controller you have will affect the maximum total throughput. If you're running on some old onboard controller or add on controller using PCI or PCIEx1 you'll never see any noticeable benefits beyond additional space. If you're using a moderate onboard such as an Intel ICH9H which has about 4.5Gb total throughput you will see marginal gains. To get any noteworthy gain you would need to be running off a hardware based, RAID controller attached to PCIEx4 or better.

For example my main drive on my home server ranks 5.9 in windows 7 performance ratings, my 4 drive raid 5 consisting of 4 identical drives to the main boot drive has a backup boot partition, when I boot from that partition I see gains but the rating only improves to 6.4. This is using the ICH9H referenced earlier.

My recovery Workstations run similar arrays utilizing PCIEx16 based controllers and spank the 7.9 rating. Bottom line, 3Gb/s per drive up to the limitations of the channel your controller resides on. Better Bus for the controller = better max speed by spreading across channels. Once you max out the bus you'll only see marginal gains improving drive spec like better seek times.

Solution 2:

It's per connector, but other factors will limit your maximum bandwidth. For example, Intel's ICH9 chipset has a maximum throughput of ~600 MB/s. Googling for information on running SSDs in RAID will yield results where combined bandwidth exceeds that of a single port, making the conclusion obvious.