RE: [PATCH 00/13] object store: alloc
- From
Jameson Miller <jamill@microsoft.com>
- Date
- May 2, 2018, 18:07 UTC
- Message-ID
- <BL0PR2101MB1106C07DEE184F8DA2C7CA62CE800@BL0PR2101MB1106.namprd21.prod.outlook.com>
- In-Reply-To
- <CACsJy8DKnBRDZC=oBd8nTOAVzQf3UtoLCeoGKjcMHgUmXf-KqQ@mail.gmail.com>
Show 21 quoted lines
> -----Original Message----- > From: Duy Nguyen <pclouds@gmail.com> > Sent: Wednesday, May 2, 2018 1:02 PM > To: Stefan Beller <sbeller@google.com> > Cc: Git Mailing List <git@vger.kernel.org>; Jameson Miller > <jamill@microsoft.com> > Subject: Re: [PATCH 00/13] object store: alloc > > On Tue, May 1, 2018 at 11:33 PM, Stefan Beller <sbeller@google.com> wrote: > > I also debated if it is worth converting alloc.c via this patch series > > or if it might make more sense to use the new mem-pool by Jameson[1]. > > > > I vaguely wonder about the performance impact, as the object > > allocation code seemed to be relevant in the past. > > If I remember correctly, alloc.c was added because malloc() has too high > overhead per allocation (and we create like millions of them). As long as you > keep allocation overhead low, it should be ok. Note that we allocate a lot more > than the mem-pool's main target (cache entries if I remember correctly). We > may have a couple thousands cache entries. We already deal with a couple > million of struct object.
The work to move cache entry allocation onto a memory pool was motivated by the fact that we are looking at indexes with millions of entries. If there is scaling concern with the current version of mem-pool, we would like to address it there as well. Or if there is improvements that can be shared, that would be nice as well.
> -- > Duy