-
Notifications
You must be signed in to change notification settings - Fork 656
benchmarks/mtd: Add MTD transfer rates benchmark. #3033
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
[Experimental Bot, please feedback here] This PR description mostly meets the NuttX requirements, but could be improved in a few key areas: Summary:
Impact:
Testing:
Example of Improved Description: SummaryThis PR adds a new test application to Impact
Testing
Testing on esp32s3-devkit:spiflash:
Testing on sim:qemu-esp32s3:
Data verification is performed via a byte-by-byte comparison of the written and read data. Additional tests were performed with block sizes of [list sizes] and on [list other configurations]. By addressing these points, the PR description will be clearer, more complete, and easier for reviewers to assess. Remember to clearly justify each change and provide comprehensive testing results. |
Related documentation PR: apache/nuttx#16032 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @tmedicci very nice tool :-)
- Would it be possible to provite this utiulity as
apps/benchmarks/mtd
? Recently we agreed thatapps/testing
will only hold test scenarios and fameworks, while utilities go toapps/system
and benchmarks toapps/benchmarks
. - Would it be possible to provide even a simple documentation too?
I'll move it!
I provided it: #3033 (comment) |
1513c37
to
56e2d09
Compare
Moved! |
Thank you @tmedicci :-) Some minor updates of test -> benchmark noted :-) When ready please also update build and runtime logs and we are ready to go, thanks!! :-) |
I had updated the build log, forgot about the runtime logs. Now we are fine here! |
56e2d09
to
8a901d9
Compare
Lets just update the testing to benchmarks nomenclature.. as in documentation so folks will search this app in benchmarks not tests.. thank you @tmedicci :-) Tests are specific programs to return PASS/FAIL results. This application is mostly aimed at memory benchmarking but also can validate read/write and provide information about memory layout.. probably more functionalities will show up in future right? If this will be more generic application to work with mtd then maybe apps/system would be a good location :D |
I'm sorry, can you be more specific? I already updated the location and the related Kconfig files. I also updated the commit and PR descriptions. What am I missing here? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @tmedicci.. this github works strangely recently.. did you see in code notes that I made before or these are visible after I click request changes again? o_O
Hmm these in code reviews had "pending" label, not some have no label and some have "outdated" label o_O
Now I can see the notes! Thanks! |
This test allows measuring write and read operations on an MTD flash device, evaluating its transfer rates. Signed-off-by: Tiago Medicci <[email protected]>
8a901d9
to
71a22e5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work @tmedicci Big Thank You!! :-)
I probably clicked notes in review mode and now on GH we have to close review so these are visible, my bad, sorry! :-) |
Summary
This test allows measuring write and read operations on an MTD flash device, evaluating its transfer rates.
Impact
Impact on user: YES, by providing a testing application for MTD devices (without any kind of buffering or file system).
Impact on build: NO.
Impact on hardware: NO.
Impact on documentation: NO.
Impact on security: NO.
Impact on compatibility: NO.
Testing
To test it, create an MTD partition and register it as a block driver. Using
esp32s3-devkit:spiflash
defconfig, let's try it:Building
First of all, apply the following patch (which will be submitted to the
nuttx
repository):After applying it, build the defconfig with the following additional configs:
Running
Run the MTD test application:
Results