I have a pretty good PC (Core i7-920, 12 GB RAM), but it has a slow HDD (WD Green series, 5400 RPM - linear read-write speed is solid, but random access is horrible). Any common HDD-related operations are noticeably slow. Can I do anything to improve performance? Increase RAM cache or something like that? NCQ (AHCI) is already enabled in both BIOS and Windows.
It is the seek time that is killer on any platter type drive. Also know that disks are constant angular velocity which means files are read faster on the outside edge of the disk vs the inside edge.
So use these two facts to your advantage. Move all user data (my documents, my pictures, music, videos, temp internet files, even chromes using a junction, ANY thing not used by OS regularly) to another partition and condense you OS partition to 25%-35% free space. This pushes your OS files to the edge of the disk and it condenses the file locations physically on the disk so the head has to move less to read the files. Just make sure you give windows lots of room to grow on a new install (50% +/- free space) or leave 25%-35% free space on an older install.
Use your computer for a few days like normal so files are accessed and used enough to show a pattern to a defrag program. Then defrag using a third party utility using a smart placement scheme or by access time scheme. This will make it so your OS files are literally on the outside edge of the drive and hopefully grouped in a way that multiple files read together are placed together or at least close to each other (doesn't exactly work, but it helps)
We go as far as to use a second drive and put OS on first partition of drive 1, and install all programs on the first partition of drive 2. Shouldn't do much difference (I don't think files are called upon simultaneously) but it seems to make things faster yet. My wife doesn't understand why her "old" P4 2.8 runs faster than her friends computers (every one has a newer computer than her). All this hooplah is part of the reason.
Also, to take things even further, stop all unneeded background processes and programs; many of them occasionally seek a file on the drive and many of them turns into regular seeks that will slow normal operation. This is usually minimal though compared to the rest of the things.
You can try use an USB Thumb drive as ReadyBoost Cache to get a bit improvement.
When I look at your system, the first thing that pops into my mind is RAM, I am assuming that you don't use all of it. Have extra Ram to spare? Use a virtual Ram disk.
So as the name implies, the Ram disk runs in memory.
From Wikipedia :
The performance of a RAM drive is in general orders of magnitude faster than other forms of storage media, such as an SSD, hard drive, tape drive, or optical drive. This performance gain is due to multiple factors, including access time, maximum throughput and type of file system, as well as others.
Basically Ram is faster than any other storage media that we can produce. I believe my Ram drive is at least 10 times faster than my SSD. Ram as you may know is not persistent - and at one point in time Ram disks just disappeared on reboot. This is not the same with modern OS's. The Ram disk can be read into memory at boot, and saved on a schedule.
Downsize is Ram still cannot store as much as your drive. So I propose limiting your scope to programs that require HDD throughput. Use SymLinks to put files or whole directories on the Ram Drive (this allows you to keep your old settings, and your programs cannot tell that part of themselves are not on the HDD). (http://www.howtogeek.com/howto/16226/complete-guide-to-symbolic-links-symlinks-on-windows-or-linux/)
Ram disks were used in Windows up until Windows 7 (but are still included in Servers). I am running Windows 8, therefore I used software to provide this capability to Windows again. I use SoftPerfect RAM Disk: (http://www.softperfect.com/products/ramdisk/)
I find SoftPerfect one of the fastest Ram disks. Best thing - its free!