This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TDA4VH-Q1:NVMe SSD 中的写入速度慢

Guru**** 2460850 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1478254/tda4vh-q1-slow-writing-speed-in-nvme-ssd

器件型号:TDA4VH-Q1

工具与软件:

尊敬的 TI:

我们在写入 PCI SSD 时面临一些与带宽相关的问题。

使用 Linux + RTOS SDK,版本:9.2。

我们需要  定期将 tiovx 图图像(原始/vis 输出/LDC 输出)记录到 PCI SSD 中、以用于我们的记录应用。 但是、我们无法在写入图像时实现全带宽。

我们使用的是 fwrite() 函数、速度仅为350 MB/s。  

之前、我们已经测试了带宽 wth FiO 命令、我们得到了大约1600MB/s 的速率 。 (下面为 SS)

为什么这两种情况有如此大的差异?  

我们如何使用 fwrite()实现 FiO 速度?

到目前为止,我们尝试了多种方法,例如使用 setvbuf ()函数设置更大的缓冲区,使用 Linux 系统调用 open()、write()和 O_direct 代替 fwrite(),但我们不会超过~350MB/s

我们测试了带宽 DD 也可以执行命令、但这 也会 提供约350MB/s 的速度

请提出建议

此致、
Lalit Meena

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Lalit:

    FiO 命令选项与我们在 SDK 文档中此处发布的选项类似: https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-jacinto7/10_01_00_04/exports/docs/devices/J7_Family/linux/SDK.html Release_Specific_Performance_Guide。

    具体而言:

    • FiO 命令选项: –IOEngine=libaio–iodepth=4 –numjobs=1 –直接=1 –runtime=60–基于 time_based

    在这种情况下、FiO 将执行异步读取/写入操作、并并行对多达4个同步 I/O 事务进行排队。 我怀疑 dd 和 fwrite 正在进行并行交易,这将解释得到略低于大约1/4的 FiO 交易速度。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    最新动态:

    问题 256KB 在 write()中启用 O_DIRECT 的块大小。 结果如下:   

    O_DIRECT + 256块大小写入、一次=~1600MB/s  

    O_DIRECT +一次写入256个块大小+每次写入文件后的 fsync (FD)=~1000MB/s

    您可以关闭 TT。

    谢谢!

    Lalit

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Lalit:

    感谢您发送编修。

    此致、

    Takuma