请问一下各位大佬,我往 tf 卡写文件的时候,发现偶尔会出现几次卡顿 4-5s 的情况。往一个文件里面连续写入 1000 次 100k 数据,记录 write 的运行时间,写 10 几个文件的测试 demo 。换成了 exfat ,有改善。但是客户要求用 fat32 ,这个有办法优化嘛。
1
zzzyk OP 整理过碎片,好像也没啥用,该出现还是出现。最大出现过 8s 的情况。
|
2
royking930911 21 天前
发热了吧 写的时候摸一下卡 看看热不热
|
3
ReZer0 21 天前
先定位下问题在于读卡设备还是在于卡。如果问题在卡,看是否能换卡解决。
|
4
zzzyk OP @royking930911 不烫
|
6
minami 21 天前 via Android
同一个文件频繁读写吗?可以改用 mmap 看看能否优化
|
9
yulgang 21 天前
换个品牌卡,调整格式化时块大小试一试?
|
12
ReZer0 21 天前
@zzzyk 有没有写普通文件而非软件的测试文件试试。我在想会不会是本身这类卡的 4k 读取能力问题,而你软件测试文件刚好一次性都是 kb 级别,中间没有个缓存,导致卡的写入瓶颈引发的卡顿现象。当然,你也可以拿个 U 盘格式化成 fat32 ,看看写入对象变成 U 盘的时候会不会也引发这种现象。
|
13
kenneth104 21 天前
添加个 Cache ,容许丢数据就行
|
15
zzzyk OP @kenneth104 感谢建议,这是卡顿的应付措施,这个肯定会加的,我想找找看没有解决这个卡顿或者减小卡顿时间的办法。
|
16
kenneth104 21 天前
其他办法,换 MLC 卡?没几个了,而且贵了些,但应该还好,需求容量不大
|
17
starqoq 21 天前 via iPhone
感觉时写卡 cache 满了 然后卡顿了
试试写完以后马上调用一下 flush 或者用 usb3.0 的读卡器喝高速卡 |
19
zzzyk OP @starqoq 试过了,每次 write 都有 flush ,也试过没有 flush ,没有 flush 的写入时间正常波动,刷 cache 的时候的时间是 10ms ,没有刷的时候是 1ms ,不至于出现这个 4-5 秒的卡顿。
|
23
opengps 21 天前
试试看用摄像头录像专用的 tf 卡,对写入能力支持更好些
|
24
kokutou 21 天前
买那种写了什么摄像头存储卡 你看看京东页面参数 下面写了写入速度 有 50m/s 的那种
|
25
kokutou 21 天前
|
26
starqoq 21 天前
你可以试试高端一点的卡,可能是 tf 卡的主控回收 block 产生的卡顿。
|
28
wanguorui123 21 天前
是不是 QLC 颗粒导致的啊
|
29
yinmin 21 天前 via iPhone
试试 sandisk a1 卡,如果是 linux 系统别买 a2 卡
|
30
cooltechbs 20 天前 via Android
关注此帖。我用过不少高速 TF 卡,用 CrystalDiskMark 测出来的 4K 读写 IOPS 都有一两千,可是尝试往上面装系统都是卡到不能自理。然而 Steam Deck 内置卡槽插上一样的卡却可以流畅安装运行 win11 。至今不知道什么原理,如果 LZ 解决了我一定回来涨涨见识
|