Hello
How to improve “drbdadm verify” with verify-alg crc32c performance between two modern physical servers with AMD Zen5 9455 and PCIe 5.0 NVMe SSDs in RAID0 running on Fedora Server 44 (7.2.7 kernel) ?
The best result I got,
[ 2017.119025] drbd no_vdo/99 drbd100 qdevice: Online verify done (total 193 sec; paused 0 sec; 5059584 K/sec)
[ 2017.119040] drbd no_vdo/99 drbd100 qdevice: repl( VerifyS -> Established ) [resync-finished]
[root@qdevice anton]# cat /etc/drbd.d/no_vdo.res
resource no_vdo {
options {
auto-promote no;
}
disk {
c-plan-ahead 0;
resync-rate 8G;
c-max-rate 4G;
c-min-rate 2G;
al-extents 131072;
c-fill-target 32M;
}
volume 99 {
device /dev/drbd100;
disk /dev/vg_test/lvol_no_vdo;
meta-disk internal;
}
on memverge3 {
node-id 27;
}
on qdevice {
node-id 28;
}
net {
transport tcp;
protocol C;
sndbuf-size 64M;
rcvbuf-size 64M;
max-buffers 128K;
max-epoch-size 16K;
timeout 15;
ping-timeout 5;
ping-int 3;
connect-int 3;
verify-alg crc32c;
after-sb-0pri disconnect;
after-sb-1pri discard-secondary;
after-sb-2pri disconnect;
ko-count 21;
}
connection {
path {
host memverge3 address 1.1.1.3:7919;
host qdevice address 1.1.1.4:7919;
}
}
}
[root@qdevice anton]#
36.83% [kernel] [k] chksum_update
20.50% [kernel] [k] crc32_lsb_vpclmul_avx512
17.15% [kernel] [k] clear_highpages_kasan_tagged
0.94% [kernel] [k] __free_pages_ok
0.89% [kernel] [k] native_irq_return_iret
0.84% [kernel] [k] ktime_get
0.81% [kernel] [k] rmqueue.isra.0
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4581 root 20 0 0 0 0 S 28.3 0.0 2:52.51 drbd_s_no_vdo
4594 root 20 0 0 0 0 S 10.3 0.0 1:03.47 drbd_r_no_vdo
1 root 20 0 28296 16472 10448 S 0.0 0.0 0:01.38 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pool_workqueue_release
4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-rcu_gp
5 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-sync_wq