TinyChain-Inc / TinyChain-Inc/ha-ndarray
Gate CubeCL parity and retire the OpenCL backend
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 3
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
Objective
Remove the deprecated OpenCL backend only after CubeCL satisfies documented functionality, performance, native/browser, fusion, and streaming gates.
Procedure
- Freeze a parity matrix against the current OpenCL behavior and supported public API.
- Run correctness, memory, cold/warm compilation, throughput, and block-stream benchmarks on documented hardware.
- Publish migration and release notes, including feature-name changes and fallback behavior.
- Deprecate
openclfor at least one release unless the maintainer explicitly approves a same-release removal. - Remove
ocl, theopenclfeature, OpenCL build detection, kernels, tests, and docs. - Verify default/no-default/CubeCL/stream/browser build combinations.
Acceptance criteria
- #35, #36, #37, #38, #39 and benchmark migration #22 are accepted.
- The parity matrix has no unexplained functional gaps.
- Performance regressions beyond an agreed threshold are documented and explicitly approved.
-
rg -n "ocl|opencl|OpenCL" Cargo.toml src tests README.mdhas no runtime/backend references except migration history. - All supported feature combinations and downstream TinyChain integration tests pass.
- Rayon remains available unless a separate measured decision authorizes its retirement.
- Release notes give users an actionable migration path and rollback version.
Parent: #33
Protected retirement decision
Tembo may implement removal only after a maintainer records the accepted parity matrix, supported runtime matrix, benchmark hardware, regression thresholds, deprecation/release policy, and rollback release. Tembo may generate evidence and a draft removal PR; it may not choose thresholds, waive unexplained gaps, approve performance regressions, or make the final backend-retirement decision.
Required evidence includes host/CubeCL differential results, designated accelerator results, actual-browser WebGPU results, cold compilation versus warm execution, transfer time, peak host/device memory, fused/unfused comparisons, streamed-block behavior, downstream TinyChain integration, and exact environment identities.
automation:
eligible: false
executor_profile: tembo
readiness: validation/review
primary_repository: TinyChain-Inc/ha-ndarray
base_branch: main
writable_scope: []
prerequisites: ["#41", "#42", "#43", "#44", "#45", "#46", "#47", "#48", "#49", "#39", "#50", "#22"]
concurrency_group: opencl-retirement-decision
required_commands: []
external_actions: none
draft_pr_only: true
completion_authority: human-maintainer-release-review
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the parity and benchmark prerequisites in #35, #36, #37, #38, #39, #22 and the referenced Cargo.toml, src, tests, and README.md areas. Establish the required runtime and benchmark evidence, then verify supported build combinations and TinyChain integration; completion also requires maintainer approval of thresholds, migration notes, deprecation policy, and rollback release before removal.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend, build-system, documentation
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 20/100