Why do i need AHCI with a SSD Drive (Guide Here!) Crucial AHCI vs IDE

Just a little read on why and what we need ACHI enabled (either in the bios or a driver download)

(This is not my work but thought i'd share it in case like me any one ends up here looking for the info like i did)

What is AHCI ?

AHCI stand for Advance Host Controller Interface. AHCI is a hardware mechanism that allows software to communicate with Serial ATA (SATA) devices (such as host bus adapters) that are designed to offer features not offered by Parallel ATA (PATA) controllers, such as hot-plugging and native command queuing (NCQ). The specification details a system memory structure for computer hardware vendors in order to transfer data between system memory and the device.

Many SATA controllers can enable AHCI either separately or in conjunction with RAID support. Intel recommends choosing RAID mode on their motherboards (which also enables AHCI) rather than the plain AHCI/SATA mode for maximum flexibility, due to the issues caused when the mode is switched once an operating system has already been installed.

AHCI is fully supported out of the box for Microsoft Windows Vista and the Linux operating system from kernel 2.6.19. NetBSD also supports drivers in AHCI mode out of the box in certain versions. Older operating systems require drivers written by the host bus adapter vendor in order to support AHCI.

Advantage of AHCI

Hot-Plugging (will not cover here as it will not affect computer performance)

Their claims might correct at certain extent, but it is hard to prove that those single threaded benchmark will reflect real world application. Nowadays, hard disk is the slowest component in any modern PC (except we are using SSD). Antivirus, firewall, anti-spyware, windows update, background defragmentation, indexing (search), user applications (firefox, word, media player) ; all contribute to super multi-tasking, which I believe NCQ (AHCI) will show it advantage. So, in order to have better understanding on how NCQ (AHCI) could improve system responsiveness, let see what is NCQ actually is.

So, what is NCQ?

In principle, Native Command Queuing is relatively simple. It allows the drive to execute write /read commands that are transmitted randomly in order to optimise the movement of the reading head.

Speed is increased but there is also an impact on power consumption and noise level which is reduced. Of course, applications don’t have to work simultaneously and don’t have to wait for the previous result to send the next command. This of course isn’t always possible. Another possibility in using NCQ is multitasking in the case where you run two very heavy applications simultaneously from the drive point of view.

To better explain this situation, imagine an elevator, in which two people enter simultaneously on the ground floor. The first pushes the 12th floor button and the second the 2nd floor. It would be counterproductive to go to the 12th floor and then to the 2nd floor. The principle of NCQ was already in the ATA norm since 1997 with TCQ (Tagged Command Queuing). This heavier protocol could sometimes lead to significant performance losses in the case of low loads (no or very little command reorganisation to do) and has been integrated in a limited number of controllers. Hitachi supports it on 7K250 drives, like Western and the Raptor WD740GD, while on the chipset side, we can count on NVIDIA but not Intel.

SATA 3.0 Gbits /s defines a new speed of data transmission for the Serial ATA interface. Initially, SATA reached up to 1.5 Gbits /s, which really corresponds to 150 mega-octets per second as 20% of information is dedicated to error correction. The transfer rate is now increased to 300 MB/s but we have to keep in mind that this is the interface speed. It has nothing to do with disc speed alone. At most, cache speed would be affected.

For NCQ to be enabled, it must be supported and turned on in the SATA host bus adapter and in the hard drive itself. The appropriate driver must be loaded into the operating system to enable NCQ on the host bus adapter. Many newer chipsets support the Advanced Host Controller Interface (AHCI), which should allow a generic driver supplied by the operating system to control them and enable NCQ. In fact, newer mainstream Linux kernels support AHCI natively. Unfortunately, Windows XP requires the installation of a vendor-specific driver even if AHCI is present on the host bus adapter. Windows Vista corrects this situation by including a generic AHCI driver.

This is how i have my bios set up with AHCI and "As Sata Type" ifyou want blistering lightning speeds then set up your SSD (if you can do it in the bios rather than a driver in windows) then do it! you won't look back.

Haven't had a chance to play with the "AS IDE" all though i hear that it will increase the drives performance.

Here's is the read speeds that i was getting from NOT having it set up as AHCI.

And then the same test after setting up AHCI.

Well i hope you all get the top end performance that these drives from Crucial make, once configured correctly, there an awesome piece of kit. !!

I've enabled AHCI (after finding the registry patch that I needed to apply, since I installed Win7 without AHCI enabled, so it just rebooted when I tried to enable it), and ran the AS SSD benchmark on it. My M4 128G is now getting ever so slightly better numbers. But better is better, right?

Yeah I'm busy compiling some code so sat lurking on forums when I ought really to be in bed.

I used to think the same thing about NCQ. When you know why it works on spinners it kinda makes sense it wouldn't benefit SSD's but it appears to just be a standard to allow the drive more independant control over what it does I guess and SSD's have found their own way to benefit from it.

Not to beat this to death, but I just re-ran Windows Experience Index (I know it's of questionable validity) and my "Disk data transfer rate" went from 7.4 before AHCI to 7.8 after. (And remember that, for whatever weird reason, WEI has a top rating of 7.9!)

I know but most of the info I'm reading about on IDE vs AHCI for SSDs is years old. I just got my M500 120gb. I have the OS (Windows 7) on it along with 3 HDDs and everything is still set to IDE. I see the 120 GB has lower performance than the bigger sizes. I don't know if going AHCI on my drive is going to give that much of an increase (compared to larger SSDs) than what I have now. The one thing that really concerns me is I'm hearing sometimes AHCI introduces lag that IDE doesn't have. I experienced this many years ago myself (way before SSDs) when I tried going to AHCI and noticed the lag right away. Didn't like it at all (system was less snappy) and changed back. Now when I read about this lag again, it really makes me leery about going to AHCI again.