Skip to main content

Copy-Space — validated scheduling toolkit for deterministic data movement

CI Release License Python

Copy-Space produces conflict-free schedules for directed data transfer demands under a deterministic resource model (STRICT1). It also provides an independent validator report with reproducible metrics.

What you get:

  • Correctness: schedule validation under STRICT1 (coverage + bandwidth + model constraints)
  • A lower bound on required ticks (lower_bound_ticks) and a normalized gap metric (gap_to_lower_bound)
  • Reproducible metrics suitable for CI gating and regression tracking

Try it in 60 seconds (hero example)

Hero workload: odd ring (15 demands, non-trivial gap to lower bound):

python3 -m venv .venv . .venv/bin/activate python -m pip install -e . copyspace-pilot --csv examples/ring15.csv --bw 256 --outdir tmp/pilot_ring15 --plot

Example output (expected shape):

baseline status=PASS ticks=12288 lb=8192 gap=4096 gapr=0.500000 util=0.7143 greedy status=PASS ticks=8778 lb=8192 gap=586 gapr=0.071533 util=0.9999

What to open after the run:

  • tmp/pilot_ring15/report_baseline.json
  • tmp/pilot_ring15/report_greedy.json
  • tmp/pilot_ring15/plot_baseline.html
  • tmp/pilot_ring15/plot_greedy.html

Bench history (smoke time series):


CLI entrypoints (Scheduler v0)

copyspace-validate --help copyspace-solve --help copyspace-pilot --help copyspace-demo-scheduler --help copyspace-bench-core --help copyspace-bench-scheduler --help

Partner-facing docs:

  • doc/partners/quickstart_pilot.md
  • doc/partners/pilot_intake.md
  • doc/partners/ci_gate_recipe.md

Technical contracts (source of truth):

  • doc/scheduler_io_v0.md
  • doc/strict1_model_v0.md

What is inside (high-level)

Scheduler v0 (pilot-facing, recommended):

  • validator + metrics (copyspace-validate)
  • solver strategies (copyspace-solve: baseline, greedy, external)
  • pilot runner (copyspace-pilot)

Under the hood (VM and toolchain):

  • minimal bit-addressable VM (space, ticks, copy slots)
  • std7_fixed image builder (mkimage_std7_fixed)
  • host-side Forth0 compiler (forth0c) and Forth0-first regression tests

Optional: VM demo (DB / analytics focus)

Build native tools:

make bins

Run demo (produces CSV):

scripts/demo_db.sh > /dev/null 2> tmp/demo.stderr cat tmp/demo.csv

Key metric in CSV:

vmrep_avg_bits_uniq_dst_per_tick

Meaning:

  • effective unique destination bits written per tick (useful write throughput)

Tests

Run all regression tests:

make test make tdd

Scheduler v0 fixtures and smokes:

  • scripts/test_scheduler.sh
  • scripts/scheduler/tests

Documentation

Start here:

  • doc/README.md

Status and roadmap:

  • doc/status.md
  • doc/roadmap.md

License

Apache-2.0 — see LICENSE Third-party notes — see THIRD_PARTY.md


Contact

Dmitri Bortoq Email: bortoq@gmail.com Telegram: @the_arctium GitHub repo: https://github.com/bortoq/copy-space

Release files for copy-space 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for copy-space 0.1.3
File Size Uploaded
copy_space-0.1.3.tar.gz 21.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for copy-space 0.1.3
File Interpreter ABI Platform
copy_space-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 49.0 kB

Release files / copy_space-0.1.3.tar.gz

Download URL copy_space-0.1.3.tar.gz
Size 21.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2e5b13d4a55308369eea778a8231fa34320470842359a2ed0176829a0c70e781
BLAKE2b-256 checksum
How to use checksums
9b53fa4f96a3f441e6580fdd84998fd038530a0d4ad5458ef293ccd85fc2f4ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.4

Release files / copy_space-0.1.3-py3-none-any.whl

Download URL copy_space-0.1.3-py3-none-any.whl
Size 27.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f37e00ca201b74bc1bfb0793219e7ad426d6eace4336791472e816140e3e351
BLAKE2b-256 checksum
How to use checksums
b176d208de118f0ce097688a2260b195bbe5c9d4e0045b53717767a47e65630a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.4

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page