所有文件IO性能
当我尝试,我第一次插入到设备后,读取SD卡中的一些媒体文件,读取性能比第二时间差多了,没有任何人有任何关于这种现象的想法,我怎样才能避免这个问题,我试过打开和打开,但结果是一样的,我只是想读取性能是一样的,无论何时我插入SD卡,谢谢
所有文件IO性能
当我尝试,我第一次插入到设备后,读取SD卡中的一些媒体文件,读取性能比第二时间差多了,没有任何人有任何关于这种现象的想法,我怎样才能避免这个问题,我试过打开和打开,但结果是一样的,我只是想读取性能是一样的,无论何时我插入SD卡,谢谢
O_DIRECT
使用(见open(2))时打开该文件将绕过缓冲器缓存。这通常不是一个好主意,但我希望它从跑步到跑步更加一致。
请注意,使用O_DIRECT
要求读取的内存为SC_PAGESIZE
,并以块为SC_PAGESIZE
的倍数进行对齐和读取。
你说在移除设备之前,首次读取比后续读取更糟糕?如果是这样,这是正常的 - 这是由于缓冲。基本上,系统正在使用系统RAM来加速设备的感知速度。
如果你将其卸载后取出卡,然后把它放回去,并重新安装它,我会想到第一次读会再慢一些,那么后续读取似乎再次更快定。
:(,我已经尝试了这个标志,它可以工作,但性能甚至Android设备上更糟糕......,反正,感谢 – thisEric 2012-03-02 07:25:07
但我敢打赌真正的钱,它是从跑步到跑步是一致的! – 2012-03-02 16:57:22
嗨,布赖恩,我不明白你的观点,你的意思是O_DIRECT确实可以提高性能吗?但我尝试过设备,它不能,并且有什么问题? – thisEric 2012-03-03 03:03:32