Tuxera NTFS vs Paragon NTFS Mac Benchmarks
Revision History
31-Mar-2010: Original Article.
15-Apr-2010: Added Retest Results and Commentary (skip to the bottom of the page).
Introduction
There are two main software products for Mac users who want write access to NTFS partitions – one by Tuxera and the other by Paragon.
Tuxera provides two versions, a free one named NTFS-3G (10.1.16) and a paid one that should give faster performance named Tuxera NTFS (10.1). Paragon is of a comparable price to Tuxera NTFS and is currently at Version 7, with a release candidate of Version 8 available that should also give faster performance.
In a perfect world, these two products should give comparable file system performance to the same system accessing a HFS+ partition, or the same system running Windows natively. That is the gold standard.
I could not find any existing benchmarks that compare these vendors and versions against the gold standard so I decided to try it myself. Why bother? Because I was using NTFS-3G and it was taking forever to move files around, and I thought their must be a better way.
The Hardware
Testing was conducted on MacBook Pro 2.26 GHz Intel Core 2 Duo with 4 GB 1067 MHz DDR3 running Snow Leopard 10.6.2 and no other software or devices running in the background.
On this, Parallels Desktop 5 was used to virtualise a dual-core processor with 1 GB memory running Snow Leopard 10.6.2 and Windows 7 Ultimate x64. Performance options were set to favour the virtual machine, and power options were set to favour performance.
After each product was tested, the virtual machine was rolled back to a snapshot of the original installation, leaving a clean slate for the next product.
The benchmark drive was a Western Digital Passport Essential 1TB connected by USB directly to the virtual machine. The NTFS partition was empty and freshly formatted, occupying the last half of the disk. These drives come with a Western Digital Turbo USB driver which was installed on both the host and the guest.
The Software
Benchmarking was done using IOzone 3.345 compiled as 64-bit for Mac and IOzone 3.344 pre-compiled as 32-bit for Windows. IOzone has a lot of flexibility in allowing for thorough testing, but some sacrifices had to be made for the purposes of saving time.
Specifically, only unbuffered read/write and reread/rewrite tests were run (as opposed to random, buffered, and memory mapped tests). Also the maximum file size used was equal to the total memory (1GB) instead of double (2GB) which would be required to fully see the effect of caching (at the cost of much more time).
The command-line used for all testing was: iozone -Ra -g 1G -i 0 -i 1
Notes
There are numerous variables that may skew the results of the benchmark, so in the interests of being open here are some things to keep in mind.
- By running in a virtual machine the guest can be affected by operations run on the host. I attempted to minimise the affect of this by closing all programs on the host system while the tests were running and unplugging all devices.
- NTFS-3G comes with two options, one to use no caching layer and one to use an UBLIO caching layer which is said to increase performance. For this comparison, only the UBLIO caching layer was used.
- There are likely other factors that could affect your purchasing decision that this benchmark does not take into account, for example: support, stability, reliability, and other benchmarks that are not related to throughput; for example reading, writing, and constructing metadata.
Also, charts should not be used for direct comparison with each other as colours and axis max ranges may be different. I left the charts as Excel made them in order to retain detail.
NTFS-3G Results and Interpretation with UBLIO

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 200 | 2607 | 2162 | 5051 | 3022 | ||||||||
| 128 | 2556 | 3431 | 3261 | 3486 | 10378 | 11963 | |||||||
| 256 | 4473 | 4612 | 5109 | 5294 | 5439 | 5185 | 5565 | ||||||
| 512 | 4081 | 4787 | 5866 | 6338 | 10732 | 10061 | 8604 | 10173 | |||||
| 1024 | 4935 | 3040 | 4201 | 7767 | 2908 | 5069 | 7252 | 6599 | 7918 | ||||
| 2048 | 4028 | 5782 | 6692 | 7415 | 11194 | 12566 | 12902 | 12285 | 13304 | 13453 | |||
| 4096 | 5005 | 5841 | 6867 | 7171 | 7514 | 8289 | 8085 | 7297 | 6622 | 4562 | 6971 | ||
| 8192 | 3857 | 5925 | 6708 | 7420 | 13190 | 9944 | 12749 | 13130 | 12519 | 13099 | 13360 | 12643 | |
| 16384 | 4262 | 5247 | 6052 | 6599 | 6980 | 6592 | 6722 | 6805 | 6826 | 6757 | 6819 | 6771 | 6911 |
| 32768 | 0 | 0 | 0 | 0 | 6296 | 6865 | 7441 | 7616 | 6509 | 7142 | 7462 | 7682 | 7185 |
| 65536 | 0 | 0 | 0 | 0 | 6630 | 8238 | 8045 | 8271 | 8077 | 8141 | 8177 | 8269 | 8274 |
| 131072 | 0 | 0 | 0 | 0 | 6740 | 8154 | 8134 | 8187 | 7874 | 8153 | 8085 | 8014 | 8060 |
| 262144 | 0 | 0 | 0 | 0 | 6725 | 7952 | 7900 | 7701 | 7583 | 7741 | 7761 | 7776 | 7529 |
| 524288 | 0 | 0 | 0 | 0 | 6342 | 7669 | 7669 | 7849 | 7337 | 7710 | 7706 | 7700 | 7489 |
| 1048576 | 0 | 0 | 0 | 0 | 6309 | 7719 | 7621 | 7525 | 7548 | 7532 | 7610 | 7620 | 7493 |
The initial spikes appear to be a cache buffering writes up to 32M in size at up to 14MB/s, while larger files show a throughput of about 8MB/s.

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 282027 | 69116 | 78334 | 453587 | 282919 | ||||||||
| 128 | 120867 | 136719 | 145107 | 360605 | 143632 | 162010 | |||||||
| 256 | 122254 | 128441 | 114755 | 507006 | 460476 | 102850 | 146449 | ||||||
| 512 | 216856 | 125365 | 139060 | 302940 | 182209 | 162949 | 130977 | 130547 | |||||
| 1024 | 87799 | 127523 | 144204 | 275940 | 161843 | 168861 | 523278 | 157997 | 169314 | ||||
| 2048 | 95571 | 122414 | 105604 | 138322 | 178615 | 162194 | 180041 | 147348 | 161350 | 153075 | |||
| 4096 | 100503 | 116330 | 120857 | 135463 | 142459 | 152064 | 156491 | 158808 | 156640 | 142907 | 141568 | ||
| 8192 | 89494 | 97366 | 97246 | 121236 | 140811 | 146589 | 147550 | 147648 | 157287 | 153900 | 143588 | 142264 | |
| 16384 | 91126 | 104149 | 115172 | 108147 | 126792 | 132854 | 146221 | 137799 | 149079 | 141259 | 126966 | 143682 | 138997 |
| 32768 | 0 | 0 | 0 | 0 | 120954 | 136286 | 143536 | 149305 | 147788 | 140748 | 140966 | 142460 | 127583 |
| 65536 | 0 | 0 | 0 | 0 | 14528 | 14657 | 14885 | 14546 | 14546 | 14543 | 14310 | 14731 | 14654 |
| 131072 | 0 | 0 | 0 | 0 | 15603 | 15766 | 15592 | 15620 | 15427 | 15725 | 15295 | 15389 | 15586 |
| 262144 | 0 | 0 | 0 | 0 | 16069 | 15853 | 15996 | 15849 | 15809 | 15739 | 15584 | 15860 | 15588 |
| 524288 | 0 | 0 | 0 | 0 | 16044 | 15942 | 16025 | 15983 | 16192 | 16259 | 15697 | 15533 | 16176 |
| 1048576 | 0 | 0 | 0 | 0 | 15767 | 15612 | 15793 | 15929 | 15681 | 15642 | 15966 | 16075 | 15911 |
Here two cache readings are likely, the initial spikes being CPU cache of 1MB at up to 50MB/s, while the next plateau is a software or operating system cache up to 32M in size at 18MB/s, and the final plateau being the throughput for larger files at about 15MB/s.
Tuxera NTFS Results and Interpretation

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 4904 | 2443 | 7964 | 2700 | 24999 | ||||||||
| 128 | 6604 | 8188 | 13596 | 4484 | 19894 | 32233 | |||||||
| 256 | 6427 | 5151 | 14597 | 8426 | 20721 | 10932 | 27886 | ||||||
| 512 | 6359 | 12001 | 11004 | 9340 | 5254 | 11817 | 16448 | 18591 | |||||
| 1024 | 6302 | 7442 | 10577 | 9990 | 16206 | 9376 | 9239 | 17756 | 7273 | ||||
| 2048 | 4896 | 6079 | 9936 | 12222 | 18938 | 12401 | 10022 | 8673 | 13163 | 10108 | |||
| 4096 | 4143 | 7414 | 13211 | 25189 | 18557 | 17904 | 16677 | 13678 | 24172 | 12670 | 34576 | ||
| 8192 | 6115 | 12532 | 18361 | 25144 | 22479 | 33543 | 48330 | 31604 | 47414 | 25656 | 26065 | 32735 | |
| 16384 | 5138 | 7570 | 9109 | 10787 | 14549 | 12870 | 38382 | 13039 | 11752 | 11270 | 46429 | 12135 | 13775 |
| 32768 | 0 | 0 | 0 | 0 | 13051 | 18190 | 16822 | 17459 | 16369 | 16097 | 13329 | 11322 | 12584 |
| 65536 | 0 | 0 | 0 | 0 | 12051 | 16407 | 23924 | 23913 | 24352 | 24468 | 24884 | 24831 | 24763 |
| 131072 | 0 | 0 | 0 | 0 | 22079 | 23508 | 22375 | 23012 | 23271 | 22541 | 22792 | 22834 | 23152 |
| 262144 | 0 | 0 | 0 | 0 | 23979 | 22906 | 22984 | 22296 | 22418 | 22605 | 21592 | 22203 | 22295 |
| 524288 | 0 | 0 | 0 | 0 | 21383 | 22386 | 22484 | 22195 | 21904 | 22110 | 22123 | 22187 | 22048 |
| 1048576 | 0 | 0 | 0 | 0 | 20352 | 21979 | 22015 | 21780 | 21798 | 21509 | 21681 | 21800 | 21813 |
Tuxera NTFS write throughput appears to be better than NTFS-3G. Small files have better performance up to 32MB/s, while a cache operates at the 8MB mark at up to 49MB/s, and the final plateau for large files still transfers at up to 24MB/s. That is about on par with Windows 7 performance.

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 262450 | 196972 | 219883 | 72066 | 412466 | ||||||||
| 128 | 49555 | 37092 | 52568 | 129685 | 127226 | 131399 | |||||||
| 256 | 273508 | 91656 | 85558 | 87582 | 179651 | 638445 | 567575 | ||||||
| 512 | 66089 | 104232 | 87385 | 126951 | 136749 | 70855 | 96638 | 129915 | |||||
| 1024 | 58414 | 78185 | 86435 | 105652 | 125247 | 139416 | 136059 | 104906 | 138561 | ||||
| 2048 | 72531 | 72275 | 171364 | 111242 | 120675 | 130221 | 96521 | 132953 | 113885 | 133602 | |||
| 4096 | 56413 | 68292 | 91251 | 102048 | 115043 | 127948 | 130967 | 136592 | 133934 | 124897 | 127228 | ||
| 8192 | 61266 | 75131 | 91522 | 105738 | 123509 | 121070 | 130087 | 135955 | 126143 | 126523 | 128206 | 128282 | |
| 16384 | 66627 | 78997 | 93039 | 104647 | 119779 | 129081 | 128401 | 134009 | 136683 | 136699 | 133321 | 134539 | 133769 |
| 32768 | 0 | 0 | 0 | 0 | 120503 | 124358 | 133053 | 134947 | 134559 | 133774 | 130273 | 128043 | 136316 |
| 65536 | 0 | 0 | 0 | 0 | 11887 | 20796 | 20881 | 20723 | 20429 | 20718 | 20622 | 20517 | 20614 |
| 131072 | 0 | 0 | 0 | 0 | 22813 | 22337 | 22847 | 22994 | 22576 | 22332 | 22653 | 22561 | 22096 |
| 262144 | 0 | 0 | 0 | 0 | 23767 | 22361 | 23828 | 23932 | 23966 | 23255 | 22752 | 23009 | 23216 |
| 524288 | 0 | 0 | 0 | 0 | 24061 | 23663 | 23822 | 23655 | 23926 | 23730 | 23613 | 23525 | 24196 |
| 1048576 | 0 | 0 | 0 | 0 | 23880 | 24025 | 23930 | 24377 | 24258 | 23546 | 24002 | 23727 | 24348 |
Here the scale changes completely as what appears to be CPU cache buffers files up to 32MB in size and at up to 135MB/s. The final plateau for larger files goes up to 25MB/s.
Paragon NTFS 7 Results and Interpretation

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 1372 | 15940 | 44108 | 38120 | 65236 | ||||||||
| 128 | 25518 | 42009 | 42792 | 102892 | 67228 | 63304 | |||||||
| 256 | 25579 | 44221 | 77927 | 78502 | 84150 | 107247 | 109444 | ||||||
| 512 | 23900 | 32215 | 56200 | 72634 | 74953 | 73196 | 86589 | 49578 | |||||
| 1024 | 26163 | 48990 | 63027 | 67345 | 83447 | 85526 | 87911 | 88827 | 88405 | ||||
| 2048 | 28843 | 30972 | 57776 | 70450 | 74469 | 85504 | 83704 | 89459 | 97034 | 100190 | |||
| 4096 | 33932 | 51881 | 58981 | 80999 | 78194 | 92955 | 88705 | 96446 | 87898 | 93575 | 89444 | ||
| 8192 | 35872 | 48650 | 61460 | 74961 | 80010 | 90986 | 68438 | 96352 | 93344 | 100341 | 95656 | 80408 | |
| 16384 | 20766 | 33191 | 36346 | 41422 | 40982 | 38497 | 42157 | 43627 | 43546 | 43463 | 43703 | 42208 | 34918 |
| 32768 | 0 | 0 | 0 | 0 | 28130 | 34724 | 33486 | 34291 | 34398 | 29832 | 35031 | 33440 | 32317 |
| 65536 | 0 | 0 | 0 | 0 | 29009 | 30496 | 32281 | 31903 | 32224 | 30624 | 31139 | 30577 | 25354 |
| 131072 | 0 | 0 | 0 | 0 | 23506 | 28330 | 29697 | 28578 | 30258 | 29941 | 30231 | 26005 | 27204 |
| 262144 | 0 | 0 | 0 | 0 | 25217 | 28201 | 26557 | 28131 | 29501 | 28736 | 28951 | 28857 | 29475 |
| 524288 | 0 | 0 | 0 | 0 | 26828 | 32816 | 32827 | 32785 | 33009 | 33625 | 33748 | 33845 | 33548 |
| 1048576 | 0 | 0 | 0 | 0 | 31807 | 32696 | 33033 | 32780 | 32632 | 33131 | 32560 | 32769 | 32762 |
While the graph appears somewhat similar to those previous, the scale is on a completely different level. A much more evenly distributed cache scheme is present, with files up to 8MB at up to 93MB/s, and a second plateau for larger files at up to 33MB/s. Later you’ll see, this is faster than Windows 7.

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 65173 | 58921 | 17897 | 111671 | 68956 | ||||||||
| 128 | 41666 | 37026 | 31991 | 35117 | 77338 | 102813 | |||||||
| 256 | 69395 | 61909 | 71607 | 42306 | 119626 | 98167 | 98392 | ||||||
| 512 | 34917 | 76486 | 66475 | 89823 | 85690 | 113426 | 86708 | 98482 | |||||
| 1024 | 30429 | 51067 | 58202 | 73988 | 67222 | 88735 | 95389 | 89975 | 57447 | ||||
| 2048 | 33020 | 59032 | 61629 | 77713 | 82914 | 92227 | 94827 | 98608 | 95746 | 95803 | |||
| 4096 | 31160 | 59260 | 67695 | 76024 | 80073 | 87262 | 86627 | 94821 | 95833 | 102893 | 91277 | ||
| 8192 | 48385 | 59902 | 71147 | 81052 | 88986 | 95050 | 92912 | 96133 | 95564 | 93828 | 94089 | 94689 | |
| 16384 | 46483 | 54866 | 49686 | 80826 | 86247 | 92884 | 96910 | 95302 | 94908 | 96885 | 96643 | 88544 | 95750 |
| 32768 | 0 | 0 | 0 | 0 | 86246 | 86516 | 97475 | 94838 | 93277 | 94035 | 96825 | 97949 | 96529 |
| 65536 | 0 | 0 | 0 | 0 | 86750 | 94680 | 95267 | 94648 | 96710 | 97237 | 96991 | 96306 | 97259 |
| 131072 | 0 | 0 | 0 | 0 | 90052 | 93688 | 95284 | 96102 | 96659 | 97445 | 97658 | 96788 | 96331 |
| 262144 | 0 | 0 | 0 | 0 | 88164 | 95086 | 94735 | 96255 | 90605 | 96589 | 91541 | 97012 | 97039 |
| 524288 | 0 | 0 | 0 | 0 | 141391 | 152457 | 149047 | 147919 | 148420 | 146750 | 148808 | 147538 | 146060 |
| 1048576 | 0 | 0 | 0 | 0 | 39261 | 40753 | 39249 | 39341 | 40160 | 40151 | 40925 | 40709 | 40590 |
Read performance for files up to 256MB sits just under 90MB/s, with a much faster cache at 141MB/s for files up to 512MB in size, and a plateau of up to 40MB/s for larger files.
Paragon NTFS 8 RC Results and Interpretation

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 46889 | 57397 | 17997 | 70018 | 69187 | ||||||||
| 128 | 48985 | 60094 | 114794 | 57163 | 64715 | 392792 | |||||||
| 256 | 46310 | 89764 | 72068 | 124624 | 147212 | 94330 | 121096 | ||||||
| 512 | 87807 | 37015 | 82065 | 54618 | 92872 | 115184 | 211578 | 121444 | |||||
| 1024 | 58881 | 75305 | 129196 | 99950 | 148123 | 109860 | 95620 | 98177 | 196092 | ||||
| 2048 | 55659 | 79732 | 96891 | 107220 | 94635 | 95575 | 113174 | 152917 | 111364 | 127322 | |||
| 4096 | 59275 | 78928 | 75479 | 92970 | 116483 | 81515 | 86854 | 94076 | 90445 | 119706 | 103021 | ||
| 8192 | 57773 | 84706 | 101428 | 104959 | 72946 | 123546 | 127387 | 114770 | 107907 | 105224 | 95515 | 104063 | |
| 16384 | 31391 | 43791 | 46870 | 40728 | 47242 | 50650 | 49654 | 47705 | 50359 | 50377 | 42272 | 41120 | 44056 |
| 32768 | 0 | 0 | 0 | 0 | 34435 | 38521 | 37020 | 36505 | 40002 | 39082 | 38652 | 38257 | 38751 |
| 65536 | 0 | 0 | 0 | 0 | 30809 | 33568 | 34659 | 33833 | 35114 | 34308 | 35213 | 34631 | 35090 |
| 131072 | 0 | 0 | 0 | 0 | 30152 | 32986 | 33629 | 33415 | 33402 | 32651 | 33174 | 33359 | 33141 |
| 262144 | 0 | 0 | 0 | 0 | 29713 | 32072 | 32558 | 32311 | 31924 | 32834 | 32220 | 33192 | 32443 |
| 524288 | 0 | 0 | 0 | 0 | 29912 | 31831 | 32069 | 29088 | 31884 | 31165 | 31813 | 31933 | 31192 |
| 1048576 | 0 | 0 | 0 | 0 | 16047 | 17205 | 16112 | 17327 | 17671 | 16464 | 17486 | 17346 | 17306 |
In this graph a mix of spikes represent CPU cache with a general cache operating all the way to the 8MB line giving up to 128MB/s. This steadily decreases to the throughput for larger files at up to a disappointing 17MB/s. This could be a bug as it is so different to Paragon NTFS 7.

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | 68586 | 151675 | 262450 | 78242 | 229274 | ||||||||
| 128 | 98984 | 101838 | 70061 | 120650 | 123084 | 106674 | |||||||
| 256 | 135525 | 121439 | 132237 | 122492 | 111699 | 123848 | 541253 | ||||||
| 512 | 48873 | 72460 | 356322 | 122490 | 155865 | 133022 | 156057 | 618371 | |||||
| 1024 | 89778 | 97070 | 106811 | 483950 | 207498 | 105525 | 136805 | 437779 | 144025 | ||||
| 2048 | 109056 | 96476 | 121255 | 118279 | 110679 | 119411 | 125536 | 126779 | 188112 | 129973 | |||
| 4096 | 67334 | 79096 | 99880 | 164405 | 122320 | 125413 | 106249 | 110918 | 101529 | 110969 | 110894 | ||
| 8192 | 74673 | 96141 | 110686 | 131410 | 118359 | 120813 | 133882 | 119300 | 122214 | 116271 | 115318 | 138591 | |
| 16384 | 77063 | 95343 | 121924 | 116125 | 121729 | 125936 | 125523 | 124266 | 124104 | 122867 | 109039 | 120658 | 120096 |
| 32768 | 0 | 0 | 0 | 0 | 125999 | 126730 | 126261 | 126538 | 125636 | 113608 | 123536 | 122189 | 124929 |
| 65536 | 0 | 0 | 0 | 0 | 124372 | 126060 | 127338 | 128106 | 124876 | 123693 | 125168 | 124044 | 122685 |
| 131072 | 0 | 0 | 0 | 0 | 125628 | 126578 | 128984 | 126865 | 127768 | 118841 | 124752 | 124761 | 123347 |
| 262144 | 0 | 0 | 0 | 0 | 124932 | 125854 | 126592 | 126330 | 125776 | 124505 | 123168 | 123837 | 123611 |
| 524288 | 0 | 0 | 0 | 0 | 122257 | 123530 | 122695 | 123168 | 120530 | 120752 | 120626 | 121167 | 119595 |
| 1048576 | 0 | 0 | 0 | 0 | 38732 | 38949 | 39016 | 38679 | 39493 | 40429 | 41037 | 40602 | 40579 |
More CPU cache spikes are present here, along with a general buffer for files up to 512MB at 122MB/s, and for larger files 39MB/s.
Windows 7 Results and Interpretation

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | |||||||||||||
| 128 | |||||||||||||
| 256 | |||||||||||||
| 512 | |||||||||||||
| 1024 | |||||||||||||
| 2048 | |||||||||||||
| 4096 | |||||||||||||
| 8192 | 162115 | 183171 | 575763 | 528820 | 278146 | 278818 | 489804 | 293850 | 520892 | 388984 | 292960 | 198305 | |
| 16384 | 180866 | 230922 | 254161 | 236417 | 227072 | 305900 | 385434 | 396651 | 270149 | 293215 | 305000 | 329975 | 346869 |
| 32768 | 0 | 0 | 0 | 0 | 290256 | 273453 | 252214 | 295537 | 297223 | 297164 | 325486 | 303438 | 287345 |
| 65536 | 0 | 0 | 0 | 0 | 281242 | 295964 | 305000 | 292047 | 319834 | 307707 | 267211 | 284234 | 295530 |
| 131072 | 0 | 0 | 0 | 0 | 223685 | 277686 | 270657 | 280725 | 238930 | 256813 | 260951 | 289879 | 259183 |
| 262144 | 0 | 0 | 0 | 0 | 32702 | 33909 | 33712 | 33466 | 33585 | 33744 | 34549 | 34629 | 35186 |
| 524288 | 0 | 0 | 0 | 0 | 23361 | 23673 | 23204 | 23562 | 23147 | 23552 | 23646 | 24601 | 24425 |
| 1048576 | 0 | 0 | 0 | 0 | 20169 | 20201 | 20334 | 20571 | 20070 | 20812 | 20620 | 20981 | 21267 |
And finally, the gold standard. Smaller file sizes had to be removed due to inconsistent timing data. Write performance seems operate within a cache area up to 128MB in size at up to 280MB/s, while larger files plateau at 21MB/s.

| 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384 | |
| 64 | |||||||||||||
| 128 | |||||||||||||
| 256 | |||||||||||||
| 512 | |||||||||||||
| 1024 | |||||||||||||
| 2048 | |||||||||||||
| 4096 | |||||||||||||
| 8192 | 235828 | 302399 | 314702 | 560820 | 400897 | 389905 | 443336 | 602090 | 610934 | 569844 | 417828 | 698497 | |
| 16384 | 228150 | 359810 | 371121 | 385125 | 400112 | 385234 | 377077 | 451761 | 359415 | 580625 | 398492 | 342154 | 336592 |
| 32768 | 0 | 0 | 0 | 0 | 490540 | 368813 | 386611 | 329966 | 358512 | 345771 | 321813 | 314215 | 369992 |
| 65536 | 0 | 0 | 0 | 0 | 376194 | 394372 | 381800 | 375382 | 363674 | 356334 | 353794 | 316961 | 340411 |
| 131072 | 0 | 0 | 0 | 0 | 386644 | 399769 | 382750 | 355113 | 336924 | 291275 | 331400 | 324631 | 332549 |
| 262144 | 0 | 0 | 0 | 0 | 374430 | 381269 | 394663 | 365664 | 344670 | 337592 | 333725 | 328724 | 328183 |
| 524288 | 0 | 0 | 0 | 0 | 378388 | 376095 | 387549 | 347517 | 337717 | 335846 | 328722 | 339163 | 311921 |
| 1048576 | 0 | 0 | 0 | 0 | 21702 | 23359 | 24116 | 24176 | 24301 | 24194 | 24270 | 24063 | 21952 |
For reading files, a cache operates between 8MB and 16MB at up to 560MB/s, between 32MB and 512MB at up to 400MB/s, then plateaus at 25MB/s for larger files.
Conclusion
There is so much data it appears to almost be all over the place. But I think it is safe to say the following:
- When comparing NTFS-3G to Tuxera NTFS, Tuxera wins by a long shot as it is much faster writing and reading, with almost quadruple the write speed on large files.
- When comparing Paragon NTFS 7 and 8 RC, the results are mixed with 8 RC faster at reading and writing smaller files but crippled at half the speed when writing larger files.
- When comparing Tuxera NTFS to either edition of Paragon NTFS, it lags far behind in caching and writing smaller files, and also at any file reading activity, but when writing the largest files it is faster than Paragon NTFS 8 RC. This could be due to a bug in the RC code.
For copies of the table data and more graphs, please feel free to download the attached Excel spreadsheet linked at the bottom.
Retest Results and Commentary
15-Apr-2010: I performed a simple retest to validate the results. This was on the same MacBook Pro and Passport Essential 1TB, but without any virtual machine. As this machine has 4GB of memory, I used an 8GB test file writing in 4KB increments to eliminate memory cache issues (and also as performing a full suite of tests would have taken weeks). 4KB is a standard NTFS cluster size.
| Write | Re-write | Read | Re-read | |
| NTFS-3G | 7563 | 8452 | 26512 | 26498 |
| Tuxera NTFS | 18227 | 21556 | 33131 | 33217 |
| Paragon 7 | 26238 | 27936 | 37399 | 40105 |
| Paragon 8 RC | 27041 | 28472 | 36452 | 38706 |
When comparing to my original virtual machine tests, NTFS-3G had similar write speeds but almost double read speeds. Tuxera NTFS had similar but better write speeds and almost double read speeds again. Paragon NTFS 7 which had better read and write speeds, and Paragon NTFS 8 RC had much better write speeds and better read speeds.
As you can see, all products were affected either by running in a VM or because of the low-VM memory constraint, and Paragon NTFS 7 or 8 RC still make the best choice if you’re after any kind of NTFS performance.
Please note that since writing this review, I have received a free copy of Paragon NTFS 8 for my own use as a reward for testing it, however it has in no way affected the results or my presentation of the results.
Links
Paragon Software
Tuxera Software
NTFS-3G for Mac
IOzone Benchmark
Original Benchmarks Spreadsheet (Excel)
Retest Benchmark Spreadsheet (Numbers)

March 31st, 2010 at 11:38 pm
Interesting experiment! Unfortunately I don’t understand anything from these numbers and what they matter in real life.
Perhaps it would be more useful to measure the performances of copying large files and folders? Just an idea …
Greetings, Jimmy.
April 1st, 2010 at 8:55 am
Hi Jimmy,
I should have described the benchmark process better. What it’s doing is writing a series of files from small (64kb) to large (1gb), and reporting how long it took.
It adds an additional factor of buffer size, which is in what increment the software is writing to disk. The idea of that being to point out any tweaks or optimisations that may alter performance, or internal caching being done.
I think the best indication of throughput is just looking at the last row of data in each table. It “should” be the most accurate, at least when transferring large amounts of data.
I hope that clears it up a little.
April 11th, 2010 at 6:35 pm
Cody: that was an excellent job, congrats!
I was looking for a ‘serious’ comparison between the 3. I tested NTFS-3G and Tuxera-NTFS. NTFS-3G is unbearably slow for writing large files (like 1080 mkvs that usually are 15-25 GB).
Tuxera worked excellent for me, but I find it too much expensive (25EUR in Spain) for this kind of tool.
From your results, Paragon NTFS 7 seems the best option in my case. I will ty it!
May 7th, 2010 at 4:50 am
Hello Cody.
Really great benchmarking!
Well, I want you to update some of the results, because Snow Leopard does actually have a hidden native support for writing to NTFS file systems. I wanted to do the benchmarking myself, but haven’t got the right time to do it. I think you will find the following interesting links interesting:
http://www.macosxhints.com/article.php?story=20090913140023382
http://www.insanelymac.com/forum/index.php?s=&showtopic=199658&view=findpost&p=1346907
May 7th, 2010 at 6:12 am
Thanks. I didn’t benchmark the native NTFS driver because it’s written all over the net that it’s so buggy it can cause extreme data loss. I guess the speed test would be interesting but I wouldn’t want to encourage anyone to use something that’s apparently so dangerous.
May 8th, 2010 at 2:21 am
Well, I am aware of its unstability, and it have caused data loss and such, which at least could be recovered. But as everyone else, you can just place a clear warning about using it.
June 22nd, 2010 at 1:13 am
I can’t add anything with respect to the test results; however, I would add one comment with respect to licensing:
I recently got a new Mac. I am the sole user of both machines; the older machine is a hot stand-by (in case the newer one needs repair, etcetera). When I asked Paragon about having the NTFS for Mac installed on both machine (given that it is single-user, non-parallel use), they said it requited two licenses. Tuxera clearly states on their web site that the software is licensed to the user — irrespective of how many Mac’s they use.
Tuxera is a little less clear on business use: they say you need one license for everyone in the company: it’s hard to imagine that they expect me to purchase 10,000 licenses if I am the sole user of a Mac computer at a large corporation, so I suspect that the text on their product page was poorly worded.
The products are comparably priced: about $31 (Tuxera) vs. about $40 (Paragon).
At time of this comment, Paragon claims Snow Leopard 64-bit mode support, while Tuxera says they are not compatible with the purely 64-bit kernel. This may not be a significant concern unless you need to install this on XServe.