bc经常能做到的是每秒十万个文件的处理能力,这不光包括读写,还包括对比,显示等等,单队列4k小文件的iops也就是10000每秒这个数量级的,所以这里面一定需要多线程处理的。
置于上下文切换,我和这个问题斗争过几年,我曾经写过一个网络安全产品,为了测试他,我曾经写过专门的测试软件,如果从用户态发包性能低的可怜,最后整个发包逻辑都是在内核线程来实现的才跑满了网络流量。如果你对这样的问题有过经验的话,你就不会把这个问题看得那么简单了。
【 在 beijiaoff 的大作中提到: 】
: ssd经常提的队列深度1时的4k速度,比如40MB/s,这个就是考虑了小文件操作会慢的前提,测得的一个数字。用这种方法表达磁盘性能是合理,也是行业通用方法(参考各产品铭牌)。
: 40MB/s就意味着4kB的小文件,完成了10k次io每秒。并且在队列为1的条件下测的。
: 磁盘是能达到这个性能的,既然能实测到,说明做简单读写的时候系统加上其他开销也是能支撑这个性能的。当然如果有其他计算需求,比如文件预览、比较、hash,那电脑很可能就跟不上了。
: ...................
--来自微水木3.5.1
--
FROM 113.233.223.*