Public bug reported:

[Impact]

 * When running block device I/O on an Amazon i3 system there
   is a performance degradation. A patch with git change id
   87c279e613f848c691111b29 that is in Ubuntu-lts-4.8.0 kernel
   series increases I/O performance.

 * Fix should be backported to xenial 4.4 series to avoid more
   support issues being filed.

 * This change gets rid of uneccessary work being performed.

[Test Case]

 * Steps to reproduce below
   1) partition ephemeral disks 
      /sbin/parted -s --align optimal /dev/nvme0n1 mklabel gpt mkpart primary 
0% 100% 
      /sbin/parted -s --align optimal /dev/nvme1n1 mklabel gpt mkpart primary 
0% 100% 
      /sbin/parted -s --align optimal /dev/nvme2n1 mklabel gpt mkpart primary 
0% 100% 
      /sbin/parted -s --align optimal /dev/nvme3n1 mklabel gpt mkpart primary 
0% 100% 

   2) create raid array 
      /sbin/mdadm --create /dev/md0 --assume-clean --chunk=2048 --level=10 
--raid-devices=4 /dev/nvme0n1p1 /dev/nvme1n1p1 /dev/nvme2n1p1 /dev/nvme3n1p1 

   3) create pv 
      /sbin/pvcreate --force --metadatasize 4092k /dev/md0 

   4) create volume group 
      /sbin/vgcreate RDSVG /dev/md0 

   5) create lv 
      /sbin/lvcreate -L 2.5T -n RDSRAIDLV RDSVG 

   5) test I/O
      sudo dd if=/dev/zero of=/dev/RDSVG/RDSRAIDLV bs=8k count=1000000 && sync

[Regression Potential]

 * No known regression potential.

[Original Description]

When we were doing testing on i3, we noticed that it is taking
significantly longer to perform operations when using software RAID than
without, we believe this is resolved in an upstream commit:
http://kernel.ubuntu.com/git/ubuntu/ubuntu-
xenial.git/commit/?id=87c279e613f848c691111b29d49de8df3f4f56da

So stock 4.4.0-59-generic performs ok:
$ sudo dd if=/dev/zero of=/dev/RDSVG/RDSRAIDLV bs=8k count=1000000 && sync 
sudo: unable to resolve host ip-10-0-85-167
1000000+0 records in
1000000+0 records out
8192000000 bytes (8.2 GB, 7.6 GiB) copied, 54.3711 s, 151 MB/s

and the patch you originally providing works a little bit better (as expected):
$ uname -a
Linux ip-10-0-85-167 4.4.0-57-generic 
#78hf000000v20170110b0h3199a6e718db-Ubuntu SMP Tue Jan 10 02:53: x86_64 x86_64 
x86_64 GNU/Linux
ubuntu@ip-10-0-85-167:~$ sudo dd if=/dev/zero of=/dev/RDSVG/RDSRAIDLV bs=8k 
count=1000000 && sync 
sudo: unable to resolve host ip-10-0-85-167
1000000+0 records in
1000000+0 records out
8192000000 bytes (8.2 GB, 7.6 GiB) copied, 31.4108 s, 261 MB/s

** Affects: linux (Ubuntu)
     Importance: Undecided
     Assignee: Dragan S. (dragan-s)
         Status: Incomplete


** Tags: sts

** Patch added: "block: fix plug list flushing for nomerge queues"
   
https://bugs.launchpad.net/bugs/1657281/+attachment/4805506/+files/fix_plug_list_flushing_for_nomerge_queues.patch

** Tags added: sts

** Description changed:

+ 
+ [Impact]
+ 
+  * When running block device I/O on an Amazon i3 system there
+    is a performance degradation. A patch with git change id
+    87c279e613f848c691111b29 that is in Ubuntu-lts-4.8.0 kernel
+    series increases I/O performance.
+ 
+  * Fix should be backported to xenial 4.4 series to avoid more
+    support issues being filed.
+ 
+  * This change gets rid of uneccessary work being performed.
+ 
+ [Test Case]
+ 
+  * Steps to reproduce below
+    1) partition ephemeral disks 
+       /sbin/parted -s --align optimal /dev/nvme0n1 mklabel gpt mkpart primary 
0% 100% 
+       /sbin/parted -s --align optimal /dev/nvme1n1 mklabel gpt mkpart primary 
0% 100% 
+       /sbin/parted -s --align optimal /dev/nvme2n1 mklabel gpt mkpart primary 
0% 100% 
+       /sbin/parted -s --align optimal /dev/nvme3n1 mklabel gpt mkpart primary 
0% 100% 
+ 
+    2) create raid array 
+       /sbin/mdadm --create /dev/md0 --assume-clean --chunk=2048 --level=10 
--raid-devices=4 /dev/nvme0n1p1 /dev/nvme1n1p1 /dev/nvme2n1p1 /dev/nvme3n1p1 
+ 
+    3) create pv 
+       /sbin/pvcreate --force --metadatasize 4092k /dev/md0 
+ 
+    4) create volume group 
+       /sbin/vgcreate RDSVG /dev/md0 
+ 
+    5) create lv 
+       /sbin/lvcreate -L 2.5T -n RDSRAIDLV RDSVG 
+ 
+    5) test I/O
+       sudo dd if=/dev/zero of=/dev/RDSVG/RDSRAIDLV bs=8k count=1000000 && sync
+ 
+ [Regression Potential]
+ 
+  * No known regression potential.
+ 
+ [Original Description]
+ 
  When we were doing testing on i3, we noticed that it is taking
  significantly longer to perform operations when using software RAID than
  without, we believe this is resolved in an upstream commit:
  http://kernel.ubuntu.com/git/ubuntu/ubuntu-
  xenial.git/commit/?id=87c279e613f848c691111b29d49de8df3f4f56da
  
  So stock 4.4.0-59-generic performs ok:
  $ sudo dd if=/dev/zero of=/dev/RDSVG/RDSRAIDLV bs=8k count=1000000 && sync 
  sudo: unable to resolve host ip-10-0-85-167
  1000000+0 records in
  1000000+0 records out
  8192000000 bytes (8.2 GB, 7.6 GiB) copied, 54.3711 s, 151 MB/s
  
  and the patch you originally providing works a little bit better (as 
expected):
  $ uname -a
  Linux ip-10-0-85-167 4.4.0-57-generic 
#78hf000000v20170110b0h3199a6e718db-Ubuntu SMP Tue Jan 10 02:53: x86_64 x86_64 
x86_64 GNU/Linux
  ubuntu@ip-10-0-85-167:~$ sudo dd if=/dev/zero of=/dev/RDSVG/RDSRAIDLV bs=8k 
count=1000000 && sync 
  sudo: unable to resolve host ip-10-0-85-167
  1000000+0 records in
  1000000+0 records out
  8192000000 bytes (8.2 GB, 7.6 GiB) copied, 31.4108 s, 261 MB/s

** Changed in: linux (Ubuntu)
     Assignee: (unassigned) => Dragan S. (dragan-s)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1657281

Title:
  Ubuntu xenial - 4.4.0-59-generic i3 I/O performance issue

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1657281/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to