Blame jemalloc/include/jemalloc/internal/bin_stats.h

Packit 345191
#ifndef JEMALLOC_INTERNAL_BIN_STATS_H
Packit 345191
#define JEMALLOC_INTERNAL_BIN_STATS_H
Packit 345191
Packit 345191
#include "jemalloc/internal/mutex_prof.h"
Packit 345191
Packit 345191
typedef struct bin_stats_s bin_stats_t;
Packit 345191
struct bin_stats_s {
Packit 345191
	/*
Packit 345191
	 * Total number of allocation/deallocation requests served directly by
Packit 345191
	 * the bin.  Note that tcache may allocate an object, then recycle it
Packit 345191
	 * many times, resulting many increments to nrequests, but only one
Packit 345191
	 * each to nmalloc and ndalloc.
Packit 345191
	 */
Packit 345191
	uint64_t	nmalloc;
Packit 345191
	uint64_t	ndalloc;
Packit 345191
Packit 345191
	/*
Packit 345191
	 * Number of allocation requests that correspond to the size of this
Packit 345191
	 * bin.  This includes requests served by tcache, though tcache only
Packit 345191
	 * periodically merges into this counter.
Packit 345191
	 */
Packit 345191
	uint64_t	nrequests;
Packit 345191
Packit 345191
	/*
Packit 345191
	 * Current number of regions of this size class, including regions
Packit 345191
	 * currently cached by tcache.
Packit 345191
	 */
Packit 345191
	size_t		curregs;
Packit 345191
Packit 345191
	/* Number of tcache fills from this bin. */
Packit 345191
	uint64_t	nfills;
Packit 345191
Packit 345191
	/* Number of tcache flushes to this bin. */
Packit 345191
	uint64_t	nflushes;
Packit 345191
Packit 345191
	/* Total number of slabs created for this bin's size class. */
Packit 345191
	uint64_t	nslabs;
Packit 345191
Packit 345191
	/*
Packit 345191
	 * Total number of slabs reused by extracting them from the slabs heap
Packit 345191
	 * for this bin's size class.
Packit 345191
	 */
Packit 345191
	uint64_t	reslabs;
Packit 345191
Packit 345191
	/* Current number of slabs in this bin. */
Packit 345191
	size_t		curslabs;
Packit 345191
Packit 345191
	/* Current size of nonfull slabs heap in this bin. */
Packit 345191
	size_t		nonfull_slabs;
Packit 345191
Packit 345191
	mutex_prof_data_t mutex_data;
Packit 345191
};
Packit 345191
Packit 345191
#endif /* JEMALLOC_INTERNAL_BIN_STATS_H */