# Memory Allocator

> Expert skill for custom memory allocator design optimized for language runtime needs

- Skill: `a5c-ai/memory-allocator` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add a5c-ai/memory-allocator`
- Raw SKILL.md: https://api.skillmd.com/api/skills/a5c-ai/memory-allocator/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: a5c-ai (https://skillmd.com/u/a5c-ai)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/a5c-ai/memory-allocator

---


# Memory Allocator Skill

## Overview

Expert skill for custom memory allocator design optimized for language runtime needs.

## Capabilities

- Implement bump/arena allocators
- Implement free-list allocators with size classes
- Design slab allocators for fixed-size objects
- Implement thread-local allocation buffers (TLAB)
- Handle large object allocation strategies
- Implement memory pooling and recycling
- Design memory profiling and statistics
- Implement address space layout optimization

## Target Processes

- memory-allocator-design.js
- garbage-collector-implementation.js
- interpreter-implementation.js
- bytecode-vm-implementation.js

## Dependencies

jemalloc, tcmalloc references

## Usage Guidelines

1. **Size Classes**: Design size classes to minimize internal fragmentation
2. **Thread Safety**: Use thread-local allocation for hot paths
3. **Large Objects**: Handle large objects separately from small allocations
4. **Profiling**: Build allocation statistics from the start
5. **GC Integration**: Design allocator API with GC integration in mind

## Output Schema

```json
{
  "type": "object",
  "properties": {
    "allocatorType": {
      "type": "string",
      "enum": ["bump", "free-list", "slab", "hybrid"]
    },
    "sizeClasses": {
      "type": "array",
      "items": { "type": "integer" }
    },
    "threadSafety": {
      "type": "string",
      "enum": ["single-threaded", "tlab", "lock-free"]
    },
    "generatedFiles": {
      "type": "array",
      "items": { "type": "string" }
    }
  }
}
```

