25% performance regression of concurrent O_DIRECT writes.

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 5.4

Issue

  • When two or more O_DIRECT writes simultaneously run on different partitions of a single disk, each performance slows down.

Resolution

This issue will be fixed on 5.5.z and 5.6.

Fixed package has been released: kernel-2.6.18-194.8.1.el5

Diagnostic Steps

  • Step to Reproduce:
    Run the following 2 or 4 dd commands on different partitions of a single disk.
     # dd oflag=direct if=/dev/zero of=<device file> bs=4096 count=100000
    
      <e.g.>
      # dd oflag=direct if=/dev/zero of=/dev/sdb1 bs=4096 count=100000
      # dd oflag=direct if=/dev/zero of=/dev/sdb2 bs=4096 count=100000
      ...
    

    The result of multiple dd commands is as follows:

    number of dds
    2 4
    RHEL5.5 beta 2.88 2.73
    RHEL5.4 3.54 3.64

                  write speed (MB/s)

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments