The new SanDisk 128GB MicroSD card seems to slow down when formatted with the Mac native filesystem. Here’s one data point.
Out-of-the-box:
Results 22.09
System Info
Xbench Version 1.3
System Version 10.9.2 (13C64)
Physical RAM 16384 MB
Model MacBookPro10,1
Drive Type Apple SDXC Reader
Disk Test 22.09
Sequential 36.23
Uncached Write 145.82 89.53 MB/sec [4K blocks]
Uncached Write 17.35 9.82 MB/sec [256K blocks]
Uncached Read 29.53 8.64 MB/sec [4K blocks]
Uncached Read 82.98 41.71 MB/sec [256K blocks]
Random 15.88
Uncached Write 21.75 2.30 MB/sec [4K blocks]
Uncached Write 5.01 1.60 MB/sec [256K blocks]
Uncached Read 618.02 4.38 MB/sec [4K blocks]
Uncached Read 215.60 40.01 MB/sec [256K blocks]
Formatted with HFS Journaled
Results 14.67
System Info
Xbench Version 1.3
System Version 10.9.2 (13C64)
Physical RAM 16384 MB
Model MacBookPro10,1
Drive Type Apple SDXC Reader
Disk Test 14.67
Sequential 28.30
Uncached Write 48.53 29.80 MB/sec [4K blocks]
Uncached Write 13.56 7.67 MB/sec [256K blocks]
Uncached Read 28.69 8.40 MB/sec [4K blocks]
Uncached Read 82.50 41.46 MB/sec [256K blocks]
Random 9.90
Uncached Write 21.60 2.29 MB/sec [4K blocks]
Uncached Write 2.85 0.91 MB/sec [256K blocks]
Uncached Read 605.30 4.29 MB/sec [4K blocks]
Uncached Read 213.16 39.55 MB/sec [256K blocks]
I’ll stick with exFAT.
XBench is not disabling caching, as evidenced by the write results; all other applications show that writing 4K blocks is slower than writing 256K blocks. Realistic write speeds for 4K blocks would be closer to 2MB/s or less, and 256K blocks around 30MB/s. Top write speeds for any modern SD card is around 45MB/s. So a 90MB/s write speed at 4K blocks can only mean cache enabled.
And strangely enough, although I agree that exFAT is slightly faster for a SD card than HFS+J when I run XBench on my 128MB SDXC class 10 card, I get the exact opposite results:
Freshly formatted exFAT results:
Disk Test 34.24
Sequential 56.15
Uncached Write 95.56 58.67 MB/sec [4K blocks]
Uncached Write 42.86 24.25 MB/sec [256K blocks]
Uncached Read 33.39 9.77 MB/sec [4K blocks]
Uncached Read 133.56 67.12 MB/sec [256K blocks]
Random 24.63
Uncached Write 7.96 0.84 MB/sec [4K blocks]
Uncached Write 30.59 9.79 MB/sec [256K blocks]
Uncached Read 853.85 6.05 MB/sec [4K blocks]
Uncached Read 352.80 65.46 MB/sec [256K blocks]
Freshly formatted HFS+J results:
Disk Test 39.11
Sequential 54.15
Uncached Write 151.84 93.23 MB/sec [4K blocks]
Uncached Write 35.32 19.98 MB/sec [256K blocks]
Uncached Read 32.03 9.37 MB/sec [4K blocks]
Uncached Read 129.02 64.85 MB/sec [256K blocks]
Random 30.61
Uncached Write 9.81 1.04 MB/sec [4K blocks]
Uncached Write 40.88 13.09 MB/sec [256K blocks]
Uncached Read 743.84 5.27 MB/sec [4K blocks]
Uncached Read 336.65 62.47 MB/sec [256K blocks]
Quick Bench gives more consistent results, showing exFAT to be apx 5% faster in all tests.
Anyway, overall I think you should run your tests with a more up to date disk speed test (I highly recommend diglloydTools for this) as your current results do not provide an accurate basis for what I believe is an otherwise correct statement, that being that exFAT is, somewhat, faster than HFS+J.
-lane
Follow up with results from testing with digilloydTools using 256K and 1M transfers sizes under exFAT and HFS+J:
—————– Averages for “exFAT” (2GB/256K, 1 iteration) —————–
Write rate: 34.6MB/sec
Read rate: 67.4MB/sec
—————— Averages for “exFAT” (2GB/1MB, 1 iteration) —————–
Write rate: 41.9MB/sec
Read rate: 76.6MB/sec
————— Averages for “HFS+J” (2GB/256K, 1 iteration) —————
Write rate: 28.4MB/sec
Read rate: 65.0MB/sec
—————- Averages for “HFS+J” (2GB/1MB, 1 iteration) —————
Write rate: 38.5MB/sec
Read rate: 75.8MB/sec
Results from QuickBench standard tests, no caching, synchronous:
exFAT
Size S.Read S.Write R.Read R.Write
4 KB 10.116 1.323 7.710 0.984
8 KB 16.845 2.699 13.413 1.970
16 KB 24.581 5.553 20.935 3.991
32 KB 33.694 11.227 33.429 7.880
64 KB 47.964 18.227 47.845 13.693
128 KB 58.065 24.556 58.338 20.204
256 KB 67.329 29.973 67.222 26.027
512 KB 72.982 33.071 73.233 32.195
1024 KB 75.113 37.309 76.647 22.851
HFS+J
Size S.Read S.Write R.Read R.Write
4 KB 9.603 1.585 9.533 0.318
8 KB 12.388 2.740 10.409 0.584
16 KB 19.964 4.902 18.574 1.043
32 KB 30.339 8.146 30.363 1.812
64 KB 42.467 14.530 43.380 3.571
128 KB 54.863 21.426 55.565 4.824
256 KB 64.995 28.778 65.415 7.016
512 KB 72.578 35.611 72.059 9.286
1024 KB 76.073 39.949 76.113 14.098
Note that while slightly faster, exFAT is also provides slightly more usable space on the disk (119.1GB vs 116.1GB for HFS+J) since it doesn’t have the journaling data taking up space.
So for removable media, exFAT is definitely a good choice, although HFS+J provides performance close enough that the potential benefit of the journaling safety might be worth consideration in some use cases.
-lane
Thanks for fleshing this out. One interesting effect of exFAT was that my Console log was filled with “bad path” warnings from mdworker until I excluded the exFAT MicroSD volume from Spotlight. I’m using the volume for an iTunes library while I wean myself from iTunes — it still sounds better than Google Music or Amazon Cloud Player in some cases.
Anyway, your additional data points cast doubt on whether exFAT is the better choice. Coupled with OS X’s affinity for HFS, maybe I’ll use HFS+J next time, especially if data integrity is a concern. Xbench is nice and free for a quick-and-dirty comparison like you provided, but you’re right, it’s probably time to upgrade! 🙂
I just got a 128GB PNY storEDGE for my MBP and ran the tests on it as well, basically confirming that neither file system appears to have a significant performance advantage. I also tested turning journaling off, but that actually caused a noticeable performance hit.
One test that I haven’t found a good way to measure is how each file system effects performance when a lot of files are stored on the device.
-lane
Results for PNY StorEDGE 1289GB card in 8,2 MBP:
exFAT
QuickBench
S.Read S.Write R.Read R.Write
4 KB 8.536 0.977 6.674 0.881
8 KB 15.417 1.966 10.989 1.921
16 KB 24.324 4.000 20.341 3.897
32 KB 37.984 8.272 31.292 7.746
64 KB 51.664 12.447 42.560 14.958
128 KB 63.278 7.729 55.509 21.409
256 KB 71.460 29.881 66.635 30.916
512 KB 75.744 44.609 72.681 19.489
1024 KB 78.557 48.298 77.158 45.559
Average 47.440 17.576 42.649 16.308
Lg Ave 81.515 52.971
Ext Ave 82.071 57.983
DiskTester Sequential:
Write MB/sec Read MB/sec
49.6 77.9
DiskTester IOPS:
Write 256MB in seconds: 163.1
Read 256MB in seconds: 24.9
Aggregate write rate MB/sec: 1.6
Aggregate read rate MB/sec: 10.3
Write ops/sec: 201
Read ops/sec: 1315
HFS+J
QuickBench
S.Read S.Write R.Read R.Write
4 KB 8.610 1.217 8.066 1.010
8 KB 15.488 2.490 12.813 1.591
16 KB 25.098 5.054 21.550 3.604
32 KB 38.979 10.256 32.083 6.716
64 KB 53.187 19.755 44.300 17.052
128 KB 63.483 30.526 56.166 26.321
256 KB 71.079 37.985 66.111 29.015
512 KB 74.812 50.997 73.809 33.205
1024 KB 77.937 54.877 76.845 38.264
Average 47.630 23.684 43.527 17.420
Lg Ave 81.521 55.299
Ext Ave 82.938 56.653
DiskTester Sequential:
Write MB/sec Read MB/sec
47.9 76.5
DiskTester IOPS:
Write 256MB in seconds: 166.9
Read 256MB in seconds: 27.4
Aggregate write rate MB/sec: 1.5
Aggregate read rate MB/sec: 9.3
Write ops/sec: 196
Read ops/sec: 1196
Thanks. Some server test labs in Austin used many sophisticated file generation utilities for Windows, but I doubt the same variety exists for OS X. You could write a shell script with dd to create files. Another option is to pick up one of the Windows utilities like Random File Generator, mount the drive in Windows to create the files, and then return it to the Mac for a test if you are curious.
Hello, I am experiencing really slow write speeds on my MacBook Pro on a MicroSD from Samsung which should allow write speeds of up to 20MB/s. The current transfer rate seems to be around 3-4MB/s on HFS Journaled, and the rate was way lower when I formatted it with exFAT. I see some methods for increasing speeds on other devices like Android mobiles, which involve changing the cache, and also on OSX but only for command line processes? Is there a way to implement this when dragging files over with Finder?