-
Notifications
You must be signed in to change notification settings - Fork 0
Performance Settings
The performance section controls parallelism and how Beez spends CPU and I/O during a run.
performance = {
max_threads = 8,
cache_write_strategy = "phase",
cache_fs_metadata = true,
use_mmap_for_hashing = true,
mmap_hashing_min_bytes = 65536,
optimize_gc_for_throughput = false,
pin_threads_to_cores = false,
}Maximum worker threads for parallel step execution and parallel workflow invocations.
| Type | integer, 1 to 1024 |
| Default | CPU core count |
| CLI override |
-j, --threads N
|
beez -j 4 buildSet to 1 to force sequential execution within each parallel level.
When Beez flushes cache data to disk.
| Value | Behavior |
|---|---|
immediate |
Write cache files as soon as each entry is ready |
phase |
Flush at the end of each phase+scope invocation |
end |
Flush once at the end of the run |
phase is a good default: fewer small writes, still safe if a run stops mid-phase.
When true, Beez caches glob expansion metadata in memory for the current run. Speeds up repeated globbing of the same patterns within one invocation.
When true, large files may be memory-mapped when computing content hashes for cache keys.
Minimum file size (bytes) before mmap hashing is used. Default 65536 (64 KiB).
When true, Beez reduces Lua garbage collection during a run for higher throughput. Useful for large build.lua files with many Lua callbacks. Can increase peak memory use.
When true, worker threads may be pinned to CPU cores. Behavior depends on the host OS and thread pool implementation.
| Situation | Suggestion |
|---|---|
| Laptop thermal throttling | Lower max_threads
|
| CI with 2 vCPUs |
max_threads = 2 in project or CI command |
| Huge repo, many globs | Keep cache_fs_metadata = true
|
| Debugging race issues | beez -j 1 ... |
| Many small cache writes on slow disk | Try cache_write_strategy = "end"
|
- Cache Settings - on-disk cache layout and compression
- Parallel Execution and Dependencies - what actually runs in parallel
- Config Reference - all keys
Quick Reference · Glossary · FAQ
- Fundamentals
- Core Concepts
- Project Layout
- First Pipeline
- Phases and Scopes
- How Phases and Scopes Work
- Selecting with Phases and Scopes
- Designing Phases and Scopes
- Parallel Execution and Dependencies
- Configuration
- Configuration Overview
- Global User Config
- Project Config
- Environment Variables
- Performance Settings
- Cache Settings
- Config Reference
- CLI
- CLI Overview
- Running Targets
- Filtering by Phase
- Running a Single Step
- Listing Entities
- Output and Logging Flags
- Cache and Maintenance Flags
- Meta and Utility Commands
-
Project Scaffolding —
beez --init(embedded Tempify) - CLI Flag Reference
- Lua DSL
- DSL Overview
- Plugin System — Plugins, Config DSL, Standard-Workflows
- Step Declaration
- Task Declaration
- Workflow Declaration
- Order Declaration
- Configure Step
- ReqPack Declaration
- Beez API
- Step Context
- DSL Patterns
- Caching
- Caching Overview
- Step Cache
- Success Cache
- Glob Metadata Cache
- Artifact Patterns
- Cache Keys and Invalidation
- Cache Storage and Maintenance
- Caching Troubleshooting
- UI and Output
- Output Modes
- Progress and Animation
- Colors and Themes
- Run Summaries
- Logging and Log Files
- Development and Contribution
- Building and Setup
- Repository Layout
- Testing
- Code Quality
- Feature Development Workflow
- Submitting Changes