Skip to content

Add pion 1.1.0 (built from source, open kernels only) - #451

Merged
alisterburt merged 1 commit into
modular:mainfrom
pavelhorak:add-pion-1.1.0
Nov 9, 2026
Merged

alisterburt merged 1 commit into
modular:mainfrom
pavelhorak:add-pion-1.1.0

Conversation

@pavelhorak

Copy link
Copy Markdown
Contributor

The Pion 1.1.0 server, a Redis-compatible key-value store written in Mojo, built entirely from source under Apache-2.0.

An earlier recipe (#391) was closed because it linked Pion's closed vector library. This one does not: it compiles the open reference vector kernels from src/vector/reference/, as Pion's build-open task does, and its test fails if the closed library is linked. Pion's own release tarballs and Homebrew formula link the closed library, which returns the same results, faster, for 1536-dim vector search. Nothing else differs.

Recipe (recipes/pion/):

  • Source: the v1.1.0 tag archive (sha256 e71259cc…3116). commit stamps the tag's commit into --version, as the release binaries do.
  • build.sh compiles Pion's C shims and Lua, then mojo build -O3 with a pinned target CPU (apple-m1, x86-64-v2, neoverse-n1). The Metal shader for --metal-attention is optional: it needs full Xcode, and without it that flag reports NOT ACTIVE.
  • mojo-compiler ==1.2.0 is also a run requirement: pion-server loads libKGENCompilerRTShared and two libraries it pulls in from the compiler package.
  • test_server.sh checks --version (the version, and that the closed library is not linked), starts the server on a random port, and runs Pion's wire basics (tests/test_raw.py) and a 1536-dim recall check (tests/test_vector_recall_smoke.py).

Tested: osx-arm64 built and passed its tests with rattler-build 0.30 and this repository's channels and variants. Linux was not built with rattler-build here. Pion's CI builds and tests the same source on x86-64 and arm64, but with the closed library linked; the open build has no Linux CI job.

@alisterburt

Copy link
Copy Markdown
Collaborator

thank you @pavelhorak !

@alisterburt
alisterburt merged commit 154e9a6 into modular:main Nov 9, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants