Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

FlashRWKV2

FlashRWKV2 is a high-performance CUDA operator library for RWKV-7. It provides composable inference and training operators; complete models, schedulers, and training frameworks remain the responsibility of downstream projects.

Requirements

  • Python 3.10 or newer
  • An NVIDIA CUDA build environment and a supported CUDA device
  • uv, using the repository-local ./.venv
  • SM120 or newer for the current native build

The runtime and reproducible source-build contracts currently pin PyTorch 2.13.0. When the build cannot detect a local GPU, set TORCH_CUDA_ARCH_LIST=12.0 explicitly.

Installation

The current alpha publishes a prebuilt CPython 3.12 Linux x86_64 wheel for SM120 GPUs. The wheel requires glibc 2.38 or newer, PyTorch 2.13.0, and a CUDA 13 runtime supplied through PyTorch's dependencies:

python -m pip install --pre FlashRWKV2

Other Python or platform combinations install from the source distribution and build the CUDA extension on the target machine:

TORCH_CUDA_ARCH_LIST=12.0 \
  python -m pip install --pre FlashRWKV2

For development from a checkout:

git clone https://github.com/rwkv-rs/FlashRWKV2.git
cd FlashRWKV2
uv sync
TORCH_CUDA_ARCH_LIST=12.0 \
  ./.venv/bin/python -m pip install -v --no-build-isolation -e .

Kernel API

See the Kernel API reference for the complete public operator surface and tensor contracts.

Tests

./.venv/bin/python -m pytest -q

CUDA tests require a successfully built flashrwkv2._C extension and a supported GPU.

Benchmarks

Operator benchmarks live in benchmarks/. For example, run the WKV7 recurrent correctness benchmark with:

./.venv/bin/python -m benchmarks.tmix.wkv7.bench \
  --shapes h32d64 \
  --dtype bfloat16 \
  --correctness-only \
  --output /tmp/flashrwkv2-wkv7-correctness.json

These benchmarks measure individual operators. They do not report or infer model-level latency.

For Albatross-compatible TMix low-rank inference, varlen means that the operator consumes packed token rows; it does not mean that one fused kernel is used for every row count. The public composite callers automatically use the canonical fused rank-in window at M<=7, the fused rank-out/value-residual window at M<=4, and the canonical large-row linear dispatcher otherwise. Callers may provide both the original checkpoint layout and a runtime layout. Both layouts must be prepared outside the timed forward region and retained for the lifetime of the inference weights; FlashRWKV2 never transposes or copies a missing layout during dispatch.

The existing low-rank operator benchmark reports correctness and latency as JSON without adding a model-level benchmark:

./.venv/bin/python benchmarks/tmix/linear/bench.py \
  --operator projection-group --layout both --channels 4096

License

FlashRWKV2 is distributed under the MIT License.

Metadata

Release files for FlashRWKV2 0.1.0a6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for FlashRWKV2 0.1.0a6
File Size Uploaded
flashrwkv2-0.1.0a6.tar.gz 163.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for FlashRWKV2 0.1.0a6
File Interpreter ABI Platform
flashrwkv2-0.1.0a6-cp312-cp312-manylinux_2_38_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.38+ x86-64 Details

Total release size: 86.6 MB

Release files / flashrwkv2-0.1.0a6.tar.gz

Download URL flashrwkv2-0.1.0a6.tar.gz
Size 163.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d2c0cf7c55fb3a6732c1e674fd9e3615719c685c2e0b50828e592c489e86eb29
BLAKE2b-256 checksum
How to use checksums
91bff90d991ae574e90e518df6dd8db7f2bb89e3a35bf3177eb7a1147b3d95aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 10, 2026.

Transparency log

Release files / flashrwkv2-0.1.0a6-cp312-cp312-manylinux_2_38_x86_64.whl

Download URL flashrwkv2-0.1.0a6-cp312-cp312-manylinux_2_38_x86_64.whl
Size 86.4 MB
Tags CPython 3.12 Linux glibc 2.38+ x86-64
SHA-256 checksum
How to use checksums
73d7ff2f055d03c0ae092a39e6387f8a372a320f31e6262a204a4eae9f2ec274
BLAKE2b-256 checksum
How to use checksums
a6c1889d9b4b68a5aede0990c5901cc9de3d42992ec9db54d0b0740c67f52d96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 10, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page