Increase speed of SDIO (SD CARD)

Hi
I am currently working with a wp7502 based design.
We dont use wifi, so it should only be the sd card that is using sdio.
I would like to know if any one has succeeded in getting transfer rates higher than ~16 mbit/s when reading from sd card.

If so could you share your recipie?

Best regards

Jess

Hi
To answer my own question here are my findings how to increase the speed of reading / writing to the SD card:
The tested card is a Sanddisk SDSDQAD-128G
The SD-card is formatted with EXT4.
I mainly have files >10MB on the SD-card.

To improve read performance it helps to increase the readahead buffer. If it is increased to 1024 KB it improves performance from approx 16Mbit/S to 44 Mbit/S

echo 1024 > /sys/devices/virtual/bdi/179\:0/read_ahead_kb

To Improve the write performance it helps to

  • Disable journaling
  • Set blocksize to 4096
  • Optimise for largefile

mkfs.ext4 -O ^has_journal -b 4096 -T largefile /dev/mmcblk0p1

Change mount options

  • noatime
  • nodiratime
  • writeback

mount -t ext4 -O default,noatime,nodiratime,data=writeback /dev/mmcblk0p1 /home/SDmountpoint/

This improves write performance to Approx 40 Mbit/S

Best regards

Jess

1 Like