I recently purchased an OCZ Vertex 3 SSD 240GB to perform some PostgreSQL DB performance profiling on a large (80GB) database for one of my clients. I paid a premium of $600 for only 240GB purely because I wanted an SSD that does > 520GB/s read/write. To ensure I do indeed attain those speeds, I ensured my Gigabyte motherboard supported SATA3 at 6Gbps. It is no use connecting an SSD that does > 300MB/s to a SATA2 port, as SATA2 is limited to 3Gbps which translates to 300MB/s if you keep in mind 20% overhead is spent on the 8b/10b encoding scheme.
It follows that I was shocked to learn that I only managed to get 340MB/s read and 240MB/s write from the SSD connected to the onboard SATA3 port, with a Core i7 950 CPU. That is the same than an entry level SSD, which would have cost a third of the price!
After some troubleshooting I found this article. It turns out the onboard SATA3 ports on my Gigabyte X58A-UD3R are driven by a Marvell 9128 controller, which - to put it elegantly - sucks. This controller sits on a PCIe 1x bus as far as I gathered. PCIe 1x has a bandwidth of 5Gbps, which translates to 400MB/s. In real life, the effective transfer rates were much lower.
I ended up having to purchase a new Intel Z68 based board, the ASUS P8Z68-V Pro, which sports the Intel Z68 SATA3 onboard controller. After performing this upgrade, the OCZ now does 540MB/s read and 520MB/s write. What a difference!