-
Notifications
You must be signed in to change notification settings - Fork 38
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
PCIe SSD performance is not even as good as the eMMC #25
Comments
We're trying to make sense of PCIe performance in general at the moment. We expect to be able to make improvements but the exact timeline is to be determined yet. |
I did comprehensive tests of the PCIe SSD performance, and compared the device performance on Polarfire with an x86 server. The first figure reports the SSD access bandwidth with various request sizes for sequential/random read and write. The second figrue reports the SSD IOPS with 1KB request size, using libaio of various queue depth. My observation is that the PCIe SSD access is CPU intensive (I see the Polarfire CPU utilization is always nearly 100%), on x86 the CPU utilization is ~30% to achieve 82k IOPS of 4KB random write. I ran "openssl speed" to compare the CPU core performance of Polarfire U54 core with the x86 Intel Xeon 4215 core. I see the U54 core performance is about 3% of the Xeon 4215 core. Therefore, my conclusion is that currently the PCIe SSD performance on Polarfire is limited by the U54 application core's relatively low computing power. Why the eMMC can performance better than the PCIe SSD, my observation is that the eMMC access is not CPU intensive, maybe because the IO stacked is well optimized. This is my understanding. To optimize the PCIe SSD performance on the Polarfire, a key is to review the PCIe access IO stack and figure out what component consumes considerable CPU cycles and optimize it. I just played with the board for a few weeks, some observations maybe inaccurate. I'll continue investigate and update/correct here. Thanks. |
please do. i'll also be working on this for the next few weeks |
Hi all, please test with the latest release 2023.02 as this has resolved a number of issues in relation to supported cards with our PCIe implementation. |
I'm using the latest 2021.4 release on the Polarfire SoC.
I attached a Intel PCIe SSD to the board and did a performance tests. The IOPS for 1KB IO requests is capped at around 9500. On a x86, it can achieve 400k+.
In comparison, the RISC-V eMMC can achieve an IOPS of 11000+.
I'm curious about why the PCIe SSD cannot beat the eMMC. Does anyone have any idea? Thanks.
The text was updated successfully, but these errors were encountered: