segregated_gc

A GC with segregated allocations using D's static foreach.

Members

Classes

SegregatedGC
class SegregatedGC

Functions

ceilPow2
size_t ceilPow2(size_t sz)

Ceiling to closest to size class of sz.

Manifest constants

PAGESIZE
enum PAGESIZE;

< Page size in bytes. Linux $(shell getconf PAGESIZE).

WORDSIZE
enum WORDSIZE;

< Size of word type (size_t).

Static variables

smallSizeClasses
auto smallSizeClasses;

Small slot sizes classes (in bytes).

Structs

SmallPage
struct SmallPage(uint sizeClass)

Small page storing slots of size sizeClass.

SmallPool
struct SmallPool(uint sizeClass, bool pointerFlag)

Small pool of pages.

SmallPools
struct SmallPools

All small pools.

SmallSlot
struct SmallSlot(uint wordCount)

Small slot foreach slot contains wordCount machine words.

Variables

mediumSizeClasses
auto mediumSizeClasses;

Medium slot sizes classes (in bytes).

Meta

Authors

Per Nordlöw