On (02/18/16 18:55), Sergey Senozhatsky wrote: > > There is a reason that it is order of 2. Increasing ZS_MAX_PAGES_PER_ZSPAGE > > is related to ZS_MIN_ALLOC_SIZE. If we don't have enough OBJ_INDEX_BITS, > > ZS_MIN_ALLOC_SIZE would be increase and it causes regression on some > > system. > > Thanks! > > do you mean PHYSMEM_BITS != BITS_PER_LONG systems? PAE/LPAE? isn't it > the case that on those systems ZS_MIN_ALLOC_SIZE already bigger than 32? I mean, yes, there are ZS_ALIGN requirements that I completely ignored, thanks for pointing that out. just saying, not insisting on anything, theoretically, trading 32 bit size objects in exchange of reducing a much bigger memory wastage is sort of interesting. zram stores objects bigger than 3072 as huge objects, leaving 4096-3072 bytes unused, and it'll take 4096-3072/32 = 4000 32 bit objects to beat that single 'bad' compression object in storing inefficiency... well, patches 0001/0002 are trying to address this a bit, but the biggest problem is still there: we have too many ->huge classes and they are a bit far from good. -ss -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>