Performance
emFile includes some benchmark code allowing users to measure the performance on certain targets. This benchmark is in no way complete, but it does give a good approximation of the length of time required for common file system operations on various targets.
Test results – Read & write speed performance
Configuration and Performance Table
Target Device | CPU Speed | Storage device | Write Speed | Read Speed |
---|---|---|---|---|
NXP LPC1857 | 180 MHz | Serial NAND flash | 1.3 MB/s | 3.0 MB/s |
Atmel AT91SAM9G45 | 384 MHz | Parallel NAND flash | 4.7 MB/s | 12.0 MB/s |
NXP Kinetis K66 | 168 MHz | SD card in card mode | 3.6 MB/s | 11.1 MB/s |
Renesas Synergy S7G2 | 240 MHz | SD card in card mode | 1.5 MB/s | 8.6 MB/s |
Renesas RZA1H | 133 MHz | QSPI NOR flash | 150 KB/s | 10.0 MB/s |
ST STM32F7 | 216 MHz | QSPI NOR flash | 164 KB/s | 11.1 MB/s |
Test Procedure
Description of the Performance Tests
The performance tests are executed as described and in the order below. Performance test procedure:
- Format the drive.
- Create and open a file for writing.
- Start measurement of write performance.
- Write a multiple of 8 Kbytes.
- Stop measurement of write performance.
- Close the file
- Reopen the file.
- Start measurement of read performance.
- Read a multiple of 8 Kbytes.
- Stop measurement of read performance.
- Close the file
- Show the performance results.
The performance test can be easily reproduced by including the file FS_Performance.c (located in the Sample\API folder of your shipment) into your project. Just compile and run the project on your target hardware.