marl is a lightweight C++ job system that schedules tasks on a pool of worker threads and runs them using cooperative fibers for high throughput. By decoupling “tasks” from OS threads, it minimizes context switches and lets workloads with fine-grained synchronization scale efficiently. The API is intentionally small—post tasks, wait on fences, and express dependencies—so you can retrofit it into existing engines without adopting a heavyweight framework. Under the hood, fibers allow tasks to yield while waiting, keeping cores busy without blocking threads. The runtime is portable across platforms and integrates cleanly with real-time systems that must minimize latency jitter. Graphics, simulation, and media pipelines use marl to turn long serial phases into parallel stages without rewriting everything around coroutines.

Features

  • Fiber-backed task scheduler over a fixed worker thread pool
  • Cooperative yielding to avoid blocking and keep cores busy
  • Simple task, dependency, and fence APIs for incremental adoption
  • Low overhead suitable for real-time and interactive workloads
  • Cross-platform C++ library with minimal dependencies
  • Plays well with existing engines, allocators, and profilers

Project Samples

Project Activity

See All Activity >

Categories

Scheduling

License

Apache License V2.0

Follow Marl

Marl Web Site

Other Useful Business Software
Full-stack observability with actually useful AI | Grafana Cloud Icon
Full-stack observability with actually useful AI | Grafana Cloud

Our generous forever free tier includes the full platform, including the AI Assistant, for 3 users with 10k metrics, 50GB logs, and 50GB traces.

Built on open standards like Prometheus and OpenTelemetry, Grafana Cloud includes Kubernetes Monitoring, Application Observability, Incident Response, plus the AI-powered Grafana Assistant. Get started with our generous free tier today.
Create free account
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Marl!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

C++

Related Categories

C++ Scheduling Software

Registered

2025-10-10