Re: [PATCH v2 7/9] md: introduce a new struct for IO serialization

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 12/18/19 8:15 PM, Song Liu wrote:
On Thu, Nov 21, 2019 at 2:37 AM <jgq516@xxxxxxxxx> wrote:
From: Guoqing Jiang <guoqing.jiang@xxxxxxxxxxxxxxx>

Obviously, IO serialization could cause the degradation of
performance a lot. In order to reduce the degradation, so a
rb interval tree is added in raid1 to speed up the check of
collision.
Could you please share some performance measurement with and
without the new data structure?

TBH, I didn't compare the difference, and I guess the performance
could be better if there is difference, because:

1. If the three members are embedded into rdev, their memory could
be allocated from different memory location, means there could be
potential cache miss when use the three members.

2. With the new struct, the memory of the three members should be
live adjacent if not in the same cacheline, so cache coherency is honored.

Another bonus is the code is more cleaner with the new struct.

Otherwise, the set looks good to me.

Thanks for your review.

Thanks.
Guoqing



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux