这篇博客使用持久内存加速SSD,主要介绍bcache使用过程中感觉缓存没有生效的原因。
网上很多bcahce安装使用的介绍,这里省去,直接放命令:
1 2 3 4 5 6 7 8
| wipefs -a /dev/pmem0.1 /dev/sdc1 make-bcache -B /dev/sdc1 make-bcache -C /dev/pmem0.1 echo /dev/sdc1 | sudo tee /sys/fs/bcache/register echo /dev/pmem0.1 | sudo tee /sys/fs/bcache/register
ls /sys/fs/bcache/ echo <uuid> | sudo tee /sys/block/bcache0/bcache/attach
|
格式化并挂载bcache0:
1 2
| mkfs.ext4 /dev/bcache0 sudo mount /dev/bcache0 /bcache
|
这时候可以把bcache0看为一个盘来使用
四个比较重要的参数,前两个是如果缓存读写延迟超过多少会直接写入后端设备,这里禁用这个功能,让读写都经过缓存,第三个参数是bcache对于超过多少的顺序读写大小的请求会绕过缓存,这里禁用这个功能,第四个是写回策略的百分比,这里让尽可能多的请求都使用writeback_percent。
1 2 3 4
| echo 0 | sudo tee /sys/block/bcache0/bcache/cache/congested_write_threshold_us echo 0 | sudo tee /sys/block/bcache0/bcache/cache/congested_read_threshold_us echo 0 | sudo tee /sys/block/bcache0/bcache/sequential_cutoff echo 100 | sudo tee /sys/block/bcache0/bcache/writeback_percent
|