Re: agcount 33 by default for a single HDD?

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

 



On Tue, Jul 31, 2018 at 10:41 PM, Eric Sandeen <sandeen@xxxxxxxxxxx> wrote:
>
>
> On 7/31/18 11:38 PM, Chris Murphy wrote:
>> On Tue, Jul 31, 2018 at 10:12 PM, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
>>> On Tue, Jul 31, 2018 at 07:32:50PM -0600, Chris Murphy wrote:
>>>> This seems suboptimal.
>>>
>>> It's actually a very useful optimisation to make on thin devices.
>>>
>>>> Basically this is a 750G thin volume. I don't
>>>> have a plain partition on a device handy to try this out but I'm
>>>> pretty certain the default is 4 AG's in that case, so I'm confused why
>>>> by default 33 AGs are created on a thin volume. The LVM volume group
>>>> is on a dmcrypt PV.
>>>
>>> It's a thin volume, therefore it advertises an optimal IO size and
>>> alignment setting (i.e. the thin volume allocation chunk size).
>>> Hence mkfs.xfs treats it as a "multi-disk device" and sets up
>>> alignment and AG count appropriately.
>>>
>>> This is actually the right optimisation to make for sparse devices -
>>> more AGs increase filesystem concurrency but we normally restrict it
>>> on single spindles because each AG adds more seeks into typical
>>> workloads and slows them down. However, the thin volume already adds
>>> that penalty to the storage stack for us because they don't have a
>>> linear LBA-to-physical location characteristic.  Hence we can
>>> increase filesystem concurrency without addition performance
>>> penalties being incurred.
>>
>> OK so why 33 AG's with xfsprogs 4.15, but 4 AG's with xfsprogs 4.17,
>> when directed to the same thin LV? And also the difference in sunit
>> and swidth?
>>
>
> Did you build 4.17 with --disable-blkid?

Yep, that's what doc/INSTALL recommends. Removing that and rebuilding,
sure enough 33 AGs, sunit 128, swidth 1024, and sectsz 4096. I do get
a build time warning.

Building mkfs
    [CC]     proto.o
    [CC]     xfs_mkfs.o
In function ‘finish_superblock_setup’,
    inlined from ‘main’ at xfs_mkfs.c:3937:2:
xfs_mkfs.c:3188:3: warning: ‘strncpy’ specified bound 12 equals
destination size [-Wstringop-truncation]
   strncpy(sbp->sb_fname, cfg->label, sizeof(sbp->sb_fname));
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    [LD]     mkfs.xfs



-- 
Chris Murphy
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux