materializeinc/materialize · Archived

mz-profile

"debug performance", or mentions profiling, samply, heaptrack, flame graphs, memory checking, binary size, slow queries, high CPU/memory in Materialize. Also "slow" or "using too much memory" without explicit profile mention.

First seen Apr 3, 2026

Installation

$ npx skills add materializeinc/materialize --skill mz-profile

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from materializeinc/materialize · top by installs.

npx skills add materializeinc/materialize

Browse all from materializeinc/materialize

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 6.3K
License LICENSE
Default branch main
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 1,920 B
  • docs SUMMARY.md 320 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 4 installs

SKILL.md

Profiling Materialize

CPU profiling

Prefer profiling with samply, which produces Firefox Profiler-compatible flame graphs.

  • Attach to a running process: samply record -p PID
  • Record environmentd from startup: bin/environmentd --wrapper "samply record"
  • Record clusterd processes from startup: bin/environmentd -- --orchestrator-process-wrapper "samply record"

Samply opens a browser tab with an interactive flame graph when recording finishes.

On macOS, enable codesigning for Instruments support: bin/environmentd --enable-mac-codesigning

Memory profiling

Valgrind doesn't work on Materialize as it's too slow to yield results. Heaptrack works, but is slow.

Run heaptrack on environmentd processes: bin/environmentd --reset --no-default-features --wrapper "heaptrack --raw" Run heaptrack on clusterd processes: bin/environmentd --reset --no-default-features -- --orchestrator-process-wrapper "heaptrack --raw" Use heaptrack --interpret on the .raw.zst file to analyze.

Set MALLOCCHECK=3 MALLOCPERTURB=123 (and compile with --no-default-features on Linux to use the system allocator instead of jemalloc) to detect some memory corruption issues.

Analyze the size of binary functions

nm --demangle=rust --print-size --size-sort --radix=d BINARY to determine the binary size of symbols in BINARY. Produces a potentially large output, which should be redirected and analyzed separately. Filter with cut -d' ' -f2- | sort | sort -k3 | uniq to just learn about the size of symbols.