
A 进程持续从网络接口获取数据并写入多个文件,目前使用的 tmpfs 分区存储,初始写入速度可以到到 1.4Gbytes/s ,但后面由其他的进程(多个进程,统称为 B)去读取这些文件并再次写入到 tmpfs 分区,A 的写入速度会下降到 800Mbytes/s ,可能是 tmpfs 性能的问题?使用 dd 命令测试 tmpfs 写入速度在 1.8Gbytes/s
为什么觉得是 tmpfs 性能的问题?因为如果取消所有的进程 B ,只保留 A 进程对 tmpfs 的写入,性能可以维持在 1.4Gbytes/s
Q1 、是由于 tmpfs 分区内存不断申请分配导致的写入性能下降吗? Q2 、有什么办法或思路可以解决吗
1 sivacohan PRO 你先禁用虚拟内存试试 |
3 Judoon Aug 8, 2022 dd 是顺序读写的? 你多个进程,是随机的吧? fio 测过么 |
4 VYSE Aug 8, 2022 试试固定内存一半的 /dev/shm |
5 yinheli Aug 8, 2022 怎么感觉是到了内存带宽瓶颈?可以分别试试 1,2,4 固定多个进程试试,总的带宽是不是比较固定 |
6 yinheli Aug 8, 2022 我用 fio 测试的时候,随着 jobs 数量增加,总体速度是会触顶 |
7 realpg PRO 感觉是算法问题 要不要画个时间线 IO 图 |