Skip to main content

OPset for vLLM-HUST

OPset is a pluggable operator-optimization collection for the vLLM-HUST Ascend backend, delivering kernel replacements, vertical fusion, epilogue/prologue fusion, and the performance evidence for each change.

OPset is distributed as an updateable vLLM-HUST Extension Bundle with independently gated optimizations. Version 0.3.1 contains:

  • persistent-matmul-empty: replaces the redundant torch.zeros allocation in Ascend batch-invariant Triton linear_persistent with torch.empty.
  • linear-swiglu-graph: fuses adjacent unquantized gate/up GEMM and SwiGLU in the Graph path. The validated decode/small-batch range (M <= 128) uses the fused Triton kernel; larger dynamic prefill shapes fail closed to the native GEMM plus npu_swiglu path.

Both optimizations are limited to the batch-invariant Graph/Triton path and do not change ordinary ACLNN MatMul or unrelated linear implementations. Existing NPU evidence covers supported dtypes, divisible and non-divisible shapes, and matched operator/end-to-end measurements. Unknown source structures are rejected rather than patched.

Architecture

The distribution exposes two entry points:

  • vllm_hust.extension_bundles lets vllm-hust-ext discover, check and enable the 0.2-experimental bundle.
  • vllm.general_plugins installs a lazy import hook in each vLLM process. The hook changes only enabled target modules and has no device or network side effects at import time.

Optimizations are selected with VLLM_HUST_OPERATOR_OPTIMIZATIONS. The bundle manager enables both shipped optimizations; either ID can also be selected independently.

Install and use

This distribution succeeds vllm-hust-operator-optimizations. Existing Python imports, extension IDs, environment variables, and the vllm-hust-operator-check command remain available. Upgrade an existing installation with:

pip uninstall -y vllm-hust-operator-optimizations
pip install vllm-hust-opset==0.3.1

The package records the fixed experiment line in compatibility/verified-line.json. This keeps current results reproducible without repeatedly rebuilding the environment; the line will be refreshed and revalidated periodically as the underlying stack advances.

export VLLM_SRC=/path/to/vllm
export VLLM_ASCEND_SRC=/path/to/vllm-ascend-hust
pip install vllm-hust-opset==0.3.1
vllm-hust-opset \
  --vllm-src "$VLLM_SRC" \
  --vllm-ascend-src "$VLLM_ASCEND_SRC"
vllm-hust-ext extension check org.vllm-hust.operator-optimizations
vllm-hust-ext extension enable org.vllm-hust.operator-optimizations
VLLM_BATCH_INVARIANT=1 vllm-hust-ext run -- vllm serve /path/to/model \
  --block-size 128

TRITON_ASCEND_SRC may additionally point to the locked Triton checkout. If it is absent, the checker verifies the installed triton-ascend==3.2.2 wheel; this is the mode used by the validated server environment.

Repository maintainers can build with uv build --no-sources --out-dir dist and use scripts/install_verified_line.sh to gate and install a local wheel.

If VLLM_PLUGINS is manually set, it must include both the Ascend platform plugin name and operator_optimizations; otherwise vLLM intentionally filters out this runtime entry point.

Add another optimization

  1. Add an Optimization implementation under optimizations/ with a stable ID, target module and fail-closed apply() method.
  2. Register it in registry.register_builtins().
  3. Add its ID to the manifest environment value if it should be enabled by this bundle version, or publish a separately selectable bundle profile.
  4. Add unit correctness tests and NPU shape/tail, operator-share and matched end-to-end evidence.
  5. Increment _version.py and the manifest extension_version together.

The framework deliberately keeps every optimization independent so a future release can add, disable or reject one optimization without changing the others.

Validation

uv run --with pytest pytest
uv run --with ruff ruff check src tests
uv build --no-sources --out-dir dist

For 0.3.1, the linear-SwiGLU Graph path was validated with Qwen2.5-7B, ShareGPT, three matched baseline/candidate rounds and operator correctness coverage. Steady-state TPOT decreased by 3.82% and output-token throughput increased by 5.24%. Release checks remain extension list, inspect, check, and run --dry-run; full NPU validation is refreshed periodically or when the optimization changes.

Metadata

Release files for vllm-hust-opset 0.3.1

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

Source distribution (sdist)

Source distribution for vllm-hust-opset 0.3.1
File Size Uploaded Provenance Actions
vllm_hust_opset-0.3.1.tar.gz 16.1 kB Without provenance Details for vllm_hust_opset-0.3.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for vllm-hust-opset 0.3.1
File Interpreter ABI Platform Actions
vllm_hust_opset-0.3.1-py3-none-any.whl Python 3 none any Details for vllm_hust_opset-0.3.1-py3-none-any.whl

Total release size: 33.8 kB

Release files / vllm_hust_opset-0.3.1.tar.gz

Download URL vllm_hust_opset-0.3.1.tar.gz
Size 16.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e640a95e10cbbdbbe33d324cf6202a2ff6380277185187f10d87aba9657ef492
BLAKE2b-256 checksum
How to use checksums
cf57ede303d6b7083723ec2c1b4ac902fe78e0de1233e74f83809b3a9d1269ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / vllm_hust_opset-0.3.1-py3-none-any.whl

Download URL vllm_hust_opset-0.3.1-py3-none-any.whl
Size 17.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d4dc5828be73b065fd3c876a17328547218dc57e44c199abd6e16be90bbd58ed
BLAKE2b-256 checksum
How to use checksums
874f217d1b3e95ffd23679f0b11c1971d6c9363f904c7c262c61c162b25e5ab7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for vllm-hust-opset 0.3.1

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A 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.

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