Hi Colin Thanks for your reply, I understood how it happened. I am just interested in the history of slab allocation,
1. why need it? 2. who design and implement it? The first check-in of slab allocation policy was about 10 years ago, it's the fifth check-in of all memcached check-ins. In the comments, * update from avva with new allocation policy: bunches of power-of-two > slab classes. no external fragmentation... always allocate slabs of 1MB. It did solve the external fragmentation, but it introduced internal fragmentation (that's why -f is introduced). *what I want to know is which check-in introduce slab calcification*? I suspect it is the intrinsic issue of slab allocation. Thanks Chang On Sunday, March 17, 2013 8:18:27 PM UTC+8, Colin Pitrat wrote: > > Hello, > > In memcached, pages are allocated progressively when needed and allocated > to the slab that need space for new items. Once a page is allocated to a > slab, it cannot be deallocated nor moved to another slab, even if it gets > empty. > > Slab calcification is the fact that with time, all pages get allocated to > some slabs and if the repartition of items size changes, some slabs will > miss space whereas others are full of empty pages. > > Regards, > Colin > > > 2013/3/14 Chang Chen <[email protected] <javascript:>> > >> Hi All >> >> I am interested in how slab calcification issue is introduced. I checked >> revision history that slab allocation is added almost 10 years ago! but >> twitter said >> >> The v1.4.4 implementation of Memcached, which Twemcache is based on, >>> suffers from a problem we call *slab calcification*. >> >> >> Is slab calcification caused by certain new feature, or an intrinsic >> issue from its born? >> >> Thanks >> Chang >> >> -- >> >> --- >> You received this message because you are subscribed to the Google Groups >> "memcached" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
