Skip to content

ci: publish a portable ARM64 transaction prover image#14803

Open
adrienlacombe wants to merge 1 commit into
starkware-libs:mainfrom
adrienlacombe:codex/baseline-arm64-prover
Open

ci: publish a portable ARM64 transaction prover image#14803
adrienlacombe wants to merge 1 commit into
starkware-libs:mainfrom
adrienlacombe:codex/baseline-arm64-prover

Conversation

@adrienlacombe

Copy link
Copy Markdown

Summary

  • publish the linux/arm64 transaction-prover release artifact without a CPU-specific TARGET_CPU
  • retain the existing znver5 tuning for the AMD64 artifact

The current ARM64 release is compiled for neoverse-v2, which enables instructions unavailable on Apple Silicon. The published multi-architecture tag selects this true ARM64 image on M3 Docker hosts, where it exits with SIGILL before becoming healthy. Leaving TARGET_CPU empty makes the Dockerfile use Rust's generic AArch64 baseline while preserving the existing ARM64 image and manifest layout.

Validation

  • git diff --check
  • YAML syntax parse
  • confirmed the Dockerfile only sets -C target-cpu=... when TARGET_CPU is non-empty

A native ARM64 startup smoke test can be added separately once an appropriate runner/test RPC fixture is available.

@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
CI-only matrix change with no application logic; may slightly reduce ARM64 proving performance on Neoverse hardware in exchange for broader portability.

Overview
ARM64 release images are no longer built with TARGET_CPU=neoverse-v2. The publish workflow matrix now passes an empty target_cpu for linux/arm64, with a comment that release tags must use the generic AArch64 baseline (including Linux containers on Apple Silicon).

AMD64 is unchanged: the workflow still sets target_cpu: znver5 for linux/amd64. The Dockerfile already skips -C target-cpu when TARGET_CPU is empty, so ARM64 builds use Rust’s default portable AArch64 codegen instead of Neoverse-specific instructions that caused SIGILL on M-series hosts.

Reviewed by Cursor Bugbot for commit 8567b9c. Bugbot is set up for automated code reviews on this repo. Configure here.

@reviewable-StarkWare

Copy link
Copy Markdown

This change is Reviewable

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.

2 participants