qemu-nbd 连接的设备非常慢

qemu-nbd 连接的设备非常慢

我使用以下命令来创建 qcow2:

qemu-img create -f qcow2 test2019.qcow2 10G
sudo qemu-nbd -c /dev/nbd1 test2019.qcow2

然后我在设备/dev/nbd1上创建了一个ext4。格式化过程非常慢。之后我使用dd测试了写入速度:

time dd if=/dev/zero of=./largefile2 oflag=dsync bs=500MB count=1
1+0 records in
1+0 records out
500000000 bytes (500 MB, 477 MiB) copied, 656.736 s, 761 kB/s

real    10m56.755s
user    0m0.001s
sys     0m0.424s

这太慢了,没用。知道会发生什么吗?

答案1

这是因为我们没有给 qcow2 提供高性能参数,以下参数使其速度提高 1000 倍:

qemu-nbd -c /dev/nbd1 test.qcow2 --cache=unsafe --discard=unmap

答案2

这可能对后来者有用:

如果您使用选项创建 .qcow2 磁盘映像-o cluster_size=512,速度也会非常慢(~ 3MB/s)。测试表明,创建映像文件时,无论是否使用该选项,速度都可以-o cluster_size=4096恢复到很高的水平(> 100MB/s)。

相关内容