Lines Matching refs:bins
697 MXFAST is the maximum request size used for "fastbins", special bins
1884 linked. The bins are approximately proportionally (log) spaced.
1885 There are a lot of these bins (128). This may look excessive, but
1886 works very well in practice. Most bins hold sizes that are
1888 and consolidated sets of chunks, which is what these bins hold, so
1894 Chunks in bins are kept in size order, with ties going to the
1896 for the small bins, which all contain the same-sized chunks, but
1910 only the fd/bk pointers of bins, and then use repositioning tricks
1921 #define bin_at(m, i) ((mbinptr)((char*)&((m)->bins[(i)<<1]) - (SIZE_SZ<<1)))
1929 /* Reminders about list directionality within bins */
1946 Indexing bins
1949 8 bytes apart. Larger bins are approximately logarithmically spaced:
1951 64 bins of size 8
1952 32 bins of size 64
1953 16 bins of size 512
1954 8 bins of size 4096
1955 4 bins of size 32768
1956 2 bins of size 262144
1962 The bins top out at around 1mb because we expect to service large
1967 /* The first NSMALLBIN bins (and fastbins) hold only one size */
1993 in regular bins after malloc gives them ONE chance to be used before
1996 and taken off (to be either used or placed in bins) in malloc.
2032 To help compensate for the large number of bins, a one-level index
2034 bitvector recording whether bins are definitely empty so they can
2036 cleared as soon as bins are empty, but instead only
2070 /* offset 2 to use otherwise unindexable first 2 bins */
2140 /* Normal bins packed as described above */
2141 mchunkptr bins[NBINS * 2];
2143 /* Bitmap of bins */
2219 /* Establish circular links for normal bins */
2527 /* all bins past max_fast are empty */
2544 /* check normal bins */
3129 hold one size each, no searching within bins is necessary.
3176 bins. Note that this step is the only place in any routine where
3177 chunks are placed in bins.
3242 /* maintain large bins in sorted order */
3311 Search for a chunk by scanning bins, starting with next largest
3317 The particular case of skipping all bins during warm-up phases
3334 if (++block >= BINMAPSIZE) /* out of bins */
3538 not placed into regular bins until after they have
3664 placing in unsorted bin avoids needing to calculate actual bins
4376 /* traverse regular bins */
5075 * Pack bins using idea from colin@nyx10.cs.du.edu
5076 * Use ordered bins instead of best-fit threshhold
5096 * No longer use return list or unconsolidated bins since
5116 * Try not to scavenge used bins