simdref
simdref is a SIMD intrinsic and instruction reference for x86 (Intel + uops.info), Arm (ACLE, AARCHMRS), and RISC-V (RVV + unified-db). It runs as a CLI, a TUI, an LSP server, and an on-demand manpage renderer.
Web app · TestPyPI · GitHub · Contributing
Install the Claude Code and Codex skill
The asm-analysis skill lives in
simd-labs/simdref-skill. Follow
the install steps in that repo.
Install
pip install simdref
isa update # download the pre-built catalog
isa doctor # check the install
isa # open the TUI
The package installs two equivalent executables, isa and simdref. The
catalog download does not use llvm-mca. Only isa build uses
llvm-mca 18+ on PATH.
Pre-release builds live on TestPyPI:
pip install -i https://test.pypi.org/simple/ \
--extra-index-url https://pypi.org/simple/ simdref
Quickstart
isa _mm_add_ps # exact intrinsic -> detailed view
isa VPADDD # exact instruction -> detailed view
isa _mm_add # fuzzy -> ranked search results
isa mm add # tokenized query -> intrinsic-biased search
isa ADD # mnemonic-like -> instruction-biased search
isa VADDPS 2 # pick variant #2 from the last result list
isa # open the TUI
Interfaces
The web app at simdref.diamondinoia.com reads the JSON site data this repo exports:
isa export --out-dir ./site-data
The LSP server speaks JSON-RPC on stdio:
simdref-lsp
Editor clients, one for each editor:
- Zed: zed-asm-intrinsics
- VS Code: vscode-simdref
- JetBrains: jetbrains-simdref
- Neovim: nvim-simdref
Each client shows a one-line brief at the end of each instruction line and the full manpage on hover, from the local catalog.
The LLM interface writes JSON and NDJSON with exit codes 0 (match), 1 (bad flag), 2 (no match), 3 (ambiguous):
isa llm query _mm_add_ps --source-kind measured
echo -e "_mm_add_ps\nVPADDD" | isa llm batch
isa llm list --pattern "*gather*" --isa Intel
See docs/LLM.md for the payload shape.
The annotator turns compiler .s output into an annotated .sa file.
isa annotate hello_simd.s # writes hello_simd.sa
isa annotate hello_simd.s --arch skylake-x -o - # stdout, skylake-x only
The annotator adds a trailing comment with the summary, latency, and CPI to each instruction line. The output stays valid assembly.
Commands
isa --help groups commands into Commands and Dev commands.
Commands
| Command | Description |
|---|---|
isa |
Open the TUI |
isa <query> |
Open the TUI with the query in a TTY, else print ranked results to stdout |
isa doctor |
Check the install, non-zero exit on failure |
isa update |
Download the pre-built catalog, --from-release for the GitHub Release |
isa annotate <file.s> |
Annotate a .s file with summaries and latency/CPI, writes <file>.sa |
isa man <name> |
Show a manpage, made on demand |
isa install-manpages |
Pre-generate man7 pages so plain man vpaddd works |
isa llm query <q> |
Strict lookup to JSON, NDJSON, or Markdown |
isa llm batch |
Resolve many queries from stdin in one invocation |
isa llm list |
Write the FilterSpec or stream matching catalog entries |
isa llm schema |
Print the JSON schema for llm payloads |
Dev commands
| Command | Description |
|---|---|
isa build |
Rebuild the catalog from upstream, needs llvm-mca 18+ |
isa export |
Export the site-data JSON for the simdref-web repo |
isa completion install [SHELL] |
Install shell completion into the user profile |
isa completion show [SHELL] |
Print the completion script |
Data sources
| Source | What | Entries¹ |
|---|---|---|
| Intel Intrinsics Guide | Signatures, descriptions, ISA, categories | 7,381 intrinsics |
| uops.info | Instructions, operands, latency, throughput, ports | 2,558 instructions |
| Arm ACLE (NEON, SVE) | Intrinsic signatures and descriptions | 10,791 intrinsics |
| Arm AARCHMRS (A64) | Base instruction forms and operand tables | live-only² |
| riscv-rvv-intrinsic-doc | RVV intrinsics with deterministic instruction refs | 74,289 intrinsics |
| RISC-V unified-db | RVV instruction forms, ISA tags, description, operation | 672 instructions |
¹ Counts from the vendored snapshot. See
docs/coverage/summary.json for parity
against upstream and docs/SOURCES.md for licenses.
² The full AARCHMRS A64 spec needs a live fetch or a tarball under
vendor/arm/.
Each perf row carries a (measured, <core>) or (modeled, <core>) tag.
Scope
- Performance data is x86-only.
- RISC-V coverage is RVV only, not scalar or privileged ISA.
Development
git clone https://github.com/simd-labs/simdref.git
cd simdref
python3 -m venv .venv
.venv/bin/pip install -e .
.venv/bin/isa build # needs llvm-mca 18+
.venv/bin/python -m pytest tests/ -v
See CONTRIBUTING.md and ARCHITECTURE.md.
License
Metadata
Release files for simdref 0.0.15
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| simdref-0.0.15.tar.gz | 317.3 kB | With provenance | Details for simdref-0.0.15.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| simdref-0.0.15-py3-none-any.whl | Python 3 | none | any | Details for simdref-0.0.15-py3-none-any.whl |
Total release size: 528.5 kB
Release files / simdref-0.0.15.tar.gz
| Download URL | simdref-0.0.15.tar.gz |
|---|---|
| Size | 317.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7357102db59ac755d55621d67311a4cce1363936f64602be61a3cc48c6e477ac
|
|
BLAKE2b-256 checksum How to use checksums |
1dc681a6e157b3ba11a0a2b50cc4b39ffa7fd40c2c7e93f2e935cb4cc5cdbd6a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logRelease files / simdref-0.0.15-py3-none-any.whl
| Download URL | simdref-0.0.15-py3-none-any.whl |
|---|---|
| Size | 211.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6732cc6f809ddea41be9606b9550db44c3c077e105cd9a9dfb3c6faf9ea7c666
|
|
BLAKE2b-256 checksum How to use checksums |
3e429234bd5dfc16dcd5ea53b2e8584ec4256803f0f3030049a9e408f8dc4850
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logSecurity for simdref 0.0.15
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for simdref-0.0.15.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.