Ninja Nichols

The discipline of programming

Hardware AES: Windows vs. Linux

Intel’s newest chips include a new AES hardware acceleration feature. My favorite cross-platform encryption utility, TrueCrypt, recently added support for the new instructions (Turn it on in Setting->Performance in Windows or Settings->Preferences->Performance in Linux).

However, I noticed something interesting when comparing the benchmark performance in Windows 7 to that in Linux. It seems that Linux is significantly faster than Windows, even though the acceleration is hardware-based.

Each data point represents the average of three (3) runs. The operating systems used were Windows 7 Professional 64-bit, Arch Linux 64-bit (latest) and Ubuntu 10.10 64-bit. Tests were performed on a ThinkPad T510 with an Intel Core i5 M 560 processor and 4 GB of memory.

Block Size Windows 7 Arch Linux Ubuntu
1 MB 377 MB/s 1.5 GB/s 1.5 GB/s
5 MB 798 MB/s 1.6 GB/s 1.6 GB/s
50 MB 1.1 GB/s 1.7 GB/s 1.6 GB/s
200 MB 1.3 GB/s 1.6 GB/s 1.7 GB/s

Bottom line: If you plan to do a lot of encryption, Linux will give you noticeably better performance, assuming all your data is already in memory.