Page MenuHomeSoftware Heritage

investigate libvirt I/O slowdown
Closed, MigratedEdits Locked

Description

There seems to be a 50% read speedup (1.5x) when accessing uffizi's disk array storage directly from louvre (bare metal server) w.r.t. accessing the same storage via uffizi (libvirt/kvm guest on louvre). The speed up is there for writes too, but is less significant.
We need to find out whether that's "normal" and, if not, how to speed things up.

bonnie++ benchmarks for libvirt/kvm access (on a couple of shards):

zack@uffizi$ bonnie++ -d /srv/softwareheritage/objects/01/bonnie++
Seq OutSeq InRandom
CharBlockRewriteCharBlockSeeks
K/s - CPUK/s - CPUK/s - CPUK/s - CPUK/s - CPU/s - CPU
1378 - 98%755458 - 98%364821 - 58%2908 - 95%694353 - 42%257.7 - 36%
6232us15146us390ms50966us338ms218ms
Seq CreateRandom Create
CreateReadDeleteCreateReadDelete
/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU
22208 - 79%+++++ - +++%30949 - 88%23446 - 81%+++++ - +++%29881 - 88%
33782us130us195us22324us30us194us
zack@uffizi$ bonnie++ -d /srv/softwareheritage/objects/a1/bonnie++
Seq OutSeq InRandom
CharBlockRewriteCharBlockSeeks
K/s - CPUK/s - CPUK/s - CPUK/s - CPUK/s - CPU/s - CPU
1351 - 98%686191 - 98%327914 - 54%3006 - 97%599862 - 45%204.9 - 44%
9124us13713us302ms17296us329ms248ms
Seq CreateRandom Create
CreateReadDeleteCreateReadDelete
/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU
22364 - 80%+++++ - +++%29042 - 88%21705 - 83%+++++ - +++%25380 - 89%
27162us210us224us19690us65us337us

Same benchmarks accessing the same shards via louvre (bare metal):

zack@louvre$ mount|grep /mnt
/dev/mapper/vg--data-0 on /mnt type xfs (rw,relatime,attr2,inode64,noquota)
zack@louvre$ bonnie++ -d /mnt/bonnie
Seq OutSeq InRandom
CharBlockRewriteCharBlockSeeks
K/s - CPUK/s - CPUK/s - CPUK/s - CPUK/s - CPU/s - CPU
1404 - 99%633900 - 99%478570 - 75%2820 - 99%919112 - 91%345.1 - 27%
7770us244ms359ms10967us513ms111ms
Seq CreateRandom Create
CreateReadDeleteCreateReadDelete
/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU
28184 - 88%+++++ - +++%+++++ - +++%28916 - 84%+++++ - +++%+++++ - +++%
478us151us14701us444us15us43015us
zack@louvre$ mount | grep /mnt
/dev/mapper/vg--data-a on /mnt type xfs (rw,relatime,attr2,inode64,noquota)
zack@louvre$ bonnie++ -d /mnt/bonnie
Seq OutSeq InRandom
CharBlockRewriteCharBlockSeeks
K/s - CPUK/s - CPUK/s - CPUK/s - CPUK/s - CPU/s - CPU
1317 - 99%655989 - 99%480398 - 75%2571 - 95%948253 - 92%350.6 - 25%
9479us297ms10843ms38326us358ms136ms
Seq CreateRandom Create
CreateReadDeleteCreateReadDelete
/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU
28950 - 85%+++++ - +++%+++++ - +++%29147 - 88%+++++ - +++%+++++ - +++%
478us112us13591us355us30us24317us

Event Timeline

For completeness, here are the slowdown benchmarks for prado's SSD disks (bottom line: the slow down seems to be present there too, but "only" of the order of 20% or so):

zack@prado$ -d /srv/softwareheritage/postgres/bonnie
Seq OutSeq InRandom
CharBlockRewriteCharBlockSeeks
K/s - CPUK/s - CPUK/s - CPUK/s - CPUK/s - CPU/s - CPU
572 - 99%414675 - 93%252410 - 48%3080 - 99%481180 - 39%+++++ - +++%
21403us180ms1119ms5057us38838us17914us
Seq CreateRandom Create
CreateReadDeleteCreateReadDelete
/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU
32148 - 60%+++++ - +++%+++++ - +++%+++++ - +++%+++++ - +++%+++++ - +++%
492us499us2279us1073us32us2463us
zack@louvre$ mount | grep /mnt      
/dev/mapper/ssd-part1 on /mnt type ext4 (rw,relatime,stripe=64,data=ordered)
zack@louvre$ bonnie++ -d /mnt/bonnie
Seq OutSeq InRandom
CharBlockRewriteCharBlockSeeks
K/s - CPUK/s - CPUK/s - CPUK/s - CPUK/s - CPU/s - CPU
607 - 99%404439 - 84%334773 - 58%3224 - 99%588338 - 50%+++++ - +++%
17549us141ms231ms9394us41663us65093us
Seq CreateRandom Create
CreateReadDeleteCreateReadDelete
/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU/sec - CPU
+++++ - +++%+++++ - +++%+++++ - +++%+++++ - +++%+++++ - +++%+++++ - +++%
6331us653us916us391us24us1106us
zack renamed this task from investigate libvirt I/O slow down to investigate libvirt I/O slowdown.Jan 24 2016, 10:45 PM
olasd changed the visibility from "All Users" to "Public (No Login Required)".May 13 2016, 5:08 PM

@douardda: can I punt this to you to either further investigate or just close as Invalid? 3 years later it might no longer be relevant…

vsellier added a subscriber: vsellier.

Closing due to inactivity. Feel free to reopen if needed.