Performance considerations on vnode backed memory disks (throughput)

Matthias Petermann matthias at petermann-it.de
Wed Nov 21 05:14:29 UTC 2018


Hello everybody,

Yesterday I made an attempt and wondered a lot about the result.


1) Given is a system with two physical disks:

The first disk is the system disk partitioned with GPT and formatted 
with UFS SU + J. The second disk is the data disk, also partitioned with 
GPT and formatted with UFS SU + J. Both partitions are about 1 GB in size.

If I transfer a large file from the system disk to the data disk in this 
constellation, I get a throughput of 80 MB / s.


2) Then I extended the setup so that a memory disk is created and 
mounted on the data partition:

root @ nas: / data # truncate -s 128G /data/vol1.img
root @ nas: / data # mdconfig -a -t vnode -f /data/vol1.img
md1
root @ nas: / data # newfs -U /dev /md1
root @ nas: / data # mount /dev/md1 /mnt

If I transfer a large file from the system disk to the memory disk on 
the data disk in this constellation, I get a throughput of 20 MB / s.


I am well aware that there must be an overhead. That this is so massive, 
however, surprised me. Which optimization options are available here? I 
would like to stay with sparse files.

I would be very happy about some ideas or discussions on this topic.

Best regards,
Matthias

-- 
Matthias Petermann <matthias at petermann-it.de> | www.petermann-it.de
GnuPG: 0x5C3E6D75 | 5930 86EF 7965 2BBA 6572  C3D7 7B1D A3C3 5C3E 6D75


More information about the freebsd-questions mailing list