想测试一下我的ssd硬盘能达到多少的iops,但是读写的时候因为linux系统会自动将读写操作进行cache,也就没法真实的验证性能了,有没有办法可以把这个特性先关闭? 写操作还好办,可以每次写入之后调用fsync强制写入磁盘,读取有类似的方法么?
补充一下,我不是想直接用现有的工具进行测试,我是自己写了一个读写io的程序(c++),想测试一下对应的iops
PHP中文网2017-04-17 13:26:08
time dd if=/dev/zero of=test bs=64k count=512 oflag=dsync
參數解釋:
if 輸入檔
of 輸出檔
bs 一次讀取和寫入的bytes位元組數
count 寫入資料塊的次數,也可以設為512.
oflag=dsync 強制每次寫入實體硬碟,也就是不寫入快取,直接寫硬碟
執行完畢後將在目前目錄產生一個32M(64*512)的test檔.
固態硬碟達到70MB/秒,機械硬碟估計也就2MB/秒左右.