Skip to content

readme: describe the fork that exists now (badges, stance, parallelism, MSRV) - #139

Merged
shinaoka merged 1 commit into
mainfrom
docs/readme-current
Oct 29, 2026
Merged

shinaoka merged 1 commit into
mainfrom
docs/readme-current

Conversation

@shinaoka

@shinaoka shinaoka commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

Minimal README update, approved by the maintainer (2026-10-29); the full rewrite waits for the linearis rename. Closes #138.

Stale before this change

  • Badges pointed at upstream faer rather than t4a-faer.
  • The fork was introduced as "an AI-driven, high-speed experiment bench" and "a place for destructive experiments" where "API churn and removal are expected, and compatibility is not promised". That is not what the published crates are: tenferro and the rest of the stack build on them.
  • The # parallelism section documented Par::rayon(n) and faer::spindle::with_lock(n, ..), both removed by threadteam is the only parallel route: drop Par::Rayon, the spindle path and the Rayon cost model #97.
  • The MSRV section called x86-v4 a default feature; it is opt in.

What the README says now

  • Badges and links to docs.rs/t4a-faer and crates.io/t4a-faer. The upstream website, docs.rs/faer and the upstream zulip stay, labelled "upstream documentation, for the same crate with an API that differs in places".
  • The opening description: the linear algebra foundation of the tensor4all stack, published on crates.io, depended on by tenferro; then four lines on what differs from upstream (parallelism on threadteam through Par::Team and faer::team::with_team, the correctness fixes with their worklogs, the nightly LAPACK validation with known failures tracked by issue, MSRV 1.89, x86-v4 opt in); then PATCHSET.md and upstream-reports/ as the record, and "published versions follow semver".
  • The parallelism section states the route that exists: Par::Seq on the calling thread, Par::Team on a caller owned team, with_team(width, ..) for a scoped call, par.reborrow() to lend a sub-team, and the note that a caller keeping a budget across many calls should own the team.
  • MSRV: 1.89 because it is the first release with the AVX-512 target features stable, with x86-v4 opt in "until that path is settled".
  • Contributing and benchmarks keep their upstream links, marked as upstream, and point at upstream-reports/README.md and PERFORMANCE_TIPS.md.

Verification: markdown only, every relative link (PATCHSET.md, NOTICE, upstream-reports/README.md, PERFORMANCE_TIPS.md) resolves in the tree, and the upstream URLs are the ones the repository already uses. No dashes as punctuation, short sentences.

Repository description and homepage are handled by the monitoring side, not here.

The README still introduced the fork as an experiment bench whose API is expected to churn, pointed
its badges at upstream `faer`, and told callers to hold `spindle::with_lock` around `Par::rayon`
calls. None of that is true any more.

- Badges and links point at `t4a-faer` (docs.rs and crates.io). The upstream website, `docs.rs/faer`
  and the upstream zulip stay, labelled as upstream documentation whose API differs in places.
- The opening description is the current one: the linear algebra foundation of the tensor4all stack,
  published on crates.io and used by tenferro, with what differs from upstream (parallelism on
  `threadteam` through `Par::Team` and `faer::team::with_team`, the correctness fixes, the nightly
  LAPACK validation, MSRV 1.89, `x86-v4` opt-in), and pointers to `PATCHSET.md` and
  `upstream-reports/`. "A place for destructive experiments, compatibility not promised" becomes:
  every change is recorded in `PATCHSET.md`, and published versions follow semver.
- The parallelism section states the route that exists (a caller owned team, `with_team` for a
  scoped call, `Par::Seq` at width one) instead of `Par::rayon` and `spindle::with_lock`.
- The MSRV section no longer calls `x86-v4` a default feature; it is opt in while that path settles.

No code changes; every relative link resolves. Short sentences, no dashes.
@shinaoka
shinaoka merged commit e7889ca into main Oct 29, 2026
7 checks passed
@shinaoka
shinaoka deleted the docs/readme-current branch October 29, 2026 10:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

README: bring the fork description, badges and parallelism section up to the current state

1 participant