05-28-2013 01:27 PM
The title tells most of the tale. I am wondering about benchmarks that show the performence of the SDIO in Zynq on a systme running the Xilinx Linux from the GIT server. Reference designs would be very nice.
Does anyone have real numbers? Good guesses?
05-28-2013 01:35 PM
Per the documents, it says "up to 25 MB/sec."
05-29-2013 04:21 AM
It's guaranteed to never exceed 25 MB/s.
In real life, you'll get something akin to this:
root@zedboard:/media/mmcblk0p2# time dd if=/dev/zero of=dummy bs=32768 count=100
10000+0 records in
10000+0 records out
real 1m 18.96s
user 0m 0.03s
sys 0m 1.28s
That would be about 4 MB per second.
The results depend on the filesystem, CPU, SD card, and probably a bunch of other things as well. The number above is about as slow as you can get: Cheap SD card, badly configured ext4 filesystem, and the slowest Zynq in existence. A bit of tuning in filesystem will probably double the result.
05-29-2013 09:29 AM
Thanks to milosoftware. I now have a bottom 4MB/s and a max 25MB/s (Thank you Austin). That is a start, now I need to define what “A bit of tuning” is and what sort of design setup would one make to realize this “A bit of tuning” and I am there.
Any more hints? Any reference designs with “A bit of tuning” in them?
Thanks for everything so far, it is very useful.
05-31-2013 05:34 AM
Well what are your goals. There are just too many variables to consider.
Fastest reading? Fastest writing? Constant minimal speed (e.g. PVR applications)?
What filesystem do you want to use? Do you want to use a filesystem at all?
What is the source of the data? How much CPU overhead will you tolerate?
The simplest "tune" to get you started is to use EXT4 with large block support. That tends to give you file writing speeds close to raw device.
To create such a filesystem (note: You'll need a Linux kernel > 3.2 to be able to run this command), pass the following options to mkfs.ext4: "-O bigalloc -C 262144"
This will give you 256k clusters (instead of the default 4k), which makes reading/writing large files have very little overhead (at the cost of each file taking up at least 256k...)
02-27-2018 02:09 AM
I do some test with different sd cards and I get data rates by reading of about 20 MBytes/s and by writing of 11 MBytes/s. Somebody knows if I am doing something wrong by writing.... or it is the normal performance for the sd controller. Reading sounds goods to me but I would like to write faster.