我创建了一个持久 Debian 9 live USB。持久性配置为/ union
.一个意想不到的结果(尽管事后看来很明显)是系统在非缓存读取方面滞后:
holmes@bakerst:~$ # WRITE to disk
holmes@bakerst:~$ dd if=/dev/zero of=tempfile bs=1M count=1024; sync
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.417477 s, 2.6 GB/s
holmes@bakerst:~$ # READ from buffer
holmes@bakerst:~$ dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.0907808 s, 11.8 GB/s
holmes@bakerst:~$ # Clear cache, non-cached READ speed
holmes@bakerst:~$ sudo /sbin/sysctl -w vm.drop_caches=3
vm.drop_caches = 3
holmes@bakerst:~$ dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 15.3935 s, 69.8 MB/s
缓存和非缓存读取操作之间存在 169 倍的差异!我可以做什么(如果有的话)来提高性能?
答案1
得到更快的 USB 3 随身碟,或者甚至是 USB SSD :-)
您可以轻松地改进对iso文件映像的读取(在缓慢启动后),使用启动选项将squash文件系统的所有内容放入RAM中
toram
,但我认为这样做并不容易或有意义用于持久化的文件/分区的内容。看这个链接更多细节。
以下是持久实时系统的 grub 菜单的屏幕截图,由姆库斯布来自 Ubuntu,但与 Debian 看起来非常相似。已经有一个菜单项toram
。