Why should I choose (or not) AHCI over IDE in my PC's BIOS settings?
I've noticed in the BIOS settings of the newer PCs I own that I can configure the drive controller work either in AHCI (Advanced Host Controller Interface) mode, or else in IDE mode.
I'm suspecting that AHCI "performs" better, but I really don't know much about that from a practical standpoint. However, I've also noticed that certain programs (e.g. Ghost 2003) simply don't detect my hard drives if I choose AHCI mode. (AHCI = A Heck of Compatibility Issues?)
So ... why does AHCI exist, why should I care and want to use it, and why/when should I not want to use it? Are there features of newer hard drives that require AHCI, and do they otherwise dumb themselves down when running in IDE mode?
Solution 1:
You can see AHCI as the language which the controller uses to speak with the system. The disk can't see if AHCI is being used or IDE emulation. If you use AHCI, all Serial ATA features are available, while you don't need any drivers specific to your controller.
To actually use AHCI, the OS (whether that's Windows, Linux or even Ghost) has to have an AHCI driver. Windows Vista and 7 include the driver, but don't install it if the boot drive's controller doesn't have AHCI enabled. Similarly, the IDE driver doesn't get installed if the IDE controller is disabled. That's why you can't just toggle the setting in the BIOS on an already installed Windows system.
Ghost 2003 was released in 2002, a few years before the AHCI specification was completed. It's hardly surprising that Ghost 2003 doesn't support AHCI. Apparently the latest enterprise version of Ghost can run in a boot environment based on either Windows or Linux, so it's likely that version does support AHCI.
Solution 2:
AHCI vs IDE – Benchmark & Advantage
Excerpt: Advantage of AHCI
- Hot-Plugging
- Native Command Queuing (might improve computer/system/hard disk responsiveness, espcially in multi-tasking environment
...
Verdict:
These extensive benchmarks clearly show to us, AHCI (NCQ) definitely could improve computer system responsiveness, transfer rate, number of IO per second and the list goes on.
Solution 3:
Here in 2012, per this performance comparison, it doesn't seem to be urgent for a single user workstation. However, AHCI is a better and more modern option and you should always use it when you can.
From that article:
If your application requires hot-plug drive support or redundant disks, then AHCI is the only choice.
IDE mode can occasionally benefit from slightly faster read and write speeds in some tests.
TRIM support works in both modes fine
Overall, most SSD drives deliver better performance in AHCI mode, but it is not night and day.
How do you know you're using IDE or AHCI? Go to Device Manager and expand the hard drive controllers. If you see "AHCI" in there, you are using AHCI.
The good news is that you can switch from IDE mode to AHCI in Windows 7 or Vista without reinstalling or even opening your PC case. Here's the MSFT KB article on how to do so.
- Press Win+R key to open the Run prompt.
- Type in
Regedit
and press Enter to open Registry Editor. - Navigate to
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlset/Services/msahci
- On the right hand side, right click on "Start" and then "Modify".
- Input
0
in the "Value data" field (hexadecimal), the clik OK. - Close Registry Editor.
- Restart the computer. Press and hold the Delete while the computer boots up to enter BIOS setup. Your computer might use a different key, like F2 or something else. Please refer to your computer manual.
- In BIOS setup, select "Integrated Peripherals" and put the marker where it says "SATA RAID/AHCI Mode". Now use the + and - keys or Page Up and Page Down keys to change the value from "Disabled" to "AHCI". This refers to recent versions of Award BIOS system. Your BIOS settings might be different. Please refer to your computer manual.
- Press F10 to save the changes. Press Y if you're asked to confirm.
Solution 4:
Why NOT use AHCI (I should've posted this few years back, as now this is a bit less relevant):
It may work great on/with recent hardware but this hasn't always been the case. You'll want to try it but if you find any mysterious issues it's good to remember to test without it. Some issues I encountered in past: failure to detect certain HDD models, bugs in Intel drivers causing crashes in some scenarios (they're prob fixed by now but I haven't tested latest versions extensively), jerky mouse, glitches in audio etc.
The point is, the legacy IDE has been tried and tested. AHCI and its features have matured over past few years but there may still exist some rare scenarios where, like plane crashes, many things need to happen in certain way/order for the plane to crash. These type of things will be resolved in time, but if you want to play safe, AHCI may need few more years. There's still new AHCI drivers released rather frequently and it's not all just new features. I saw someone who tried various versions say there can also be performance differences.
If you appreciate what's known a "known quantity" and "tried and tested" then maybe you'll want to think twice about AHCI. And so far the time I spent diagnosing bugs and testing the performance ... I do love being the free QA department for Intel. If they had actually put a "beta" or something somewhere that would've atleast warned me to stay away, but I foolishly thought their AHCI drivers and Option ROM's etc were as solid as the CPU's.
With consumer desktop HDD's and SSD, my own research suggests that to benefit from AHCI you'll want a 6 GB/s SATA port and SSD, or you'll want to use HDD thats known to show improvement with NCQ. I've tried Samsung, WD, Maxtor consumer SATA HDD with the AHCI and in my system there was no performance improvement, the opposite infact for some scenarios that are typical for desktop workstation IO patterns.
The article linked above has got partially different results from mine, and most of the issues I mentioned have no doubt been fixed by now, but keep this post in mind when getting excited about new innovation in storage technology. The developers testing & QA may have been severely limited compared to what PC hardware you can use with the new technology.