Repository navigation
Releases: hsfzxjy/npunlock
Release list
2026-10-13.00
Built from 1d8687a26fd8.
Python wheel version: 0.1.0.post2026101300.
New commits compared with the previous release
Compared with 2026-10-08.00.
4e40048python: reuse precompiled SHAVE kernels106b133python: add compile-once kernel workfloweb92a18python: allow source-free compiled kernel graphs6fe1897python: pass kernel overrides through prepared buildf9bbfdfpython: build compiled kernel graphs in one call7786c1cnpurun: accept precompiled SHAVE ELFd34db18npurun: reuse native graph carriers6d5c076python: attach kernels to custom nodes9022438python: compile kernel source directlyf4a376bpython: add single-tensor inference helperd5bc4abpython: simplify shared tensor allocatione093427graphinfer: add I32 graph executionb769647graphinfer: add U8 graph execution1d8687agraphinfer: add I8 graph execution
New ABI breakthrough
Latest breakthrough — 2026-10-12: Ordinary NPU graphs now accept signed I8 host tensors: copied and shared
Squeeze/Unsqueeze, plus a parallel I8-to-FP32 output, matched exact NumPy oracles. Custom ACT kernels remain FP16/FP32. Evidence and limits.
Environment prober quick start
The npunlock-environment-prober-linux-x64.zip asset contains the Linux probe, the offline inspector, the bundle helper, and a ready-to-run add1-probe bundle. After extracting it:
python3 porting_probe.py verify add1-probe
./npunlock-linux-probe --bundle add1-probe --report add1-linux-report.jsonTo bundle another patched add-one graph, run:
python3 porting_probe.py create --graph patched-add1.blob --output-dir my-probe --producer-platform "Windows x64" --device "Meteor Lake / NPU3720" --driver-version "DRIVER_VERSION" --graph-compiler-version "8.3"The prober is experimental: graph loading alone is not a compatibility result; compare the output with the bundled host oracle.
2026-10-08.00
Built from dd9aa2ef2508.
Python wheel version: 0.1.0.post2026100800.
New commits compared with the previous release
Compared with 2026-10-05.00.
8f5cf70python: add reviewable multi-kernel build plans0b0f7eepython: add reusable prepared carrier bundlesc8f73ddir2blob: query driver compiler provenance056dfe1python: prove connected mixed-precision composition5d873c9ci: verify installed wheel workflows72f8108python: add strict ACT group selectiondd9aa2epython: infer static rank-2 MatMul outputs
New ABI breakthrough
Latest breakthrough — 2026-10-07: One connected graph now composes custom FP32→FP16, two-input FP16, and FP16→FP32 kernels around an ordinary DPU
MatMul, with exact host-oracle agreement after carrier and program reloads. Evidence and limits.
Environment prober quick start
The npunlock-environment-prober-linux-x64.zip asset contains the Linux probe, the offline inspector, the bundle helper, and a ready-to-run add1-probe bundle. After extracting it:
python3 porting_probe.py verify add1-probe
./npunlock-linux-probe --bundle add1-probe --report add1-linux-report.jsonTo bundle another patched add-one graph, run:
python3 porting_probe.py create --graph patched-add1.blob --output-dir my-probe --producer-platform "Windows x64" --device "Meteor Lake / NPU3720" --driver-version "DRIVER_VERSION" --graph-compiler-version "8.3"The prober is experimental: graph loading alone is not a compatibility result; compare the output with the bundled host oracle.
2026-10-05.00
Built from c23eded3d1d9.
Python wheel version: 0.1.0.post2026100500.
New commits compared with the previous release
Compared with 2026-10-03.00.
b40662apython: add prepared graph target bindinge602c55python: infer common same-spec operators1dd08cbpython: add self-describing program bundles52d471bpython: add environment doctor0de3816release: version daily snapshot wheels8960b74graphinfer: reuse sessions for ordinary inferencebf470e4examples: add branched custom network proofcf374abpatchblob: add per-tensor conversion contracts20efa18inspect: report per-tensor ACT contracts0df3d03npurun: support per-tensor positional targetsc23ededpython: add full custom-kernel doctor check
New ABI breakthrough
Latest breakthrough — 2026-10-04: Versioned per-tensor contracts now run connected custom FP32→FP16 and FP16→FP32 kernels in one graph, with exact host-oracle agreement. Evidence and limits.
Environment prober quick start
The npunlock-environment-prober-linux-x64.zip asset contains the Linux probe, the offline inspector, the bundle helper, and a ready-to-run add1-probe bundle. After extracting it:
python3 porting_probe.py verify add1-probe
./npunlock-linux-probe --bundle add1-probe --report add1-linux-report.jsonTo bundle another patched add-one graph, run:
python3 porting_probe.py create --graph patched-add1.blob --output-dir my-probe --producer-platform "Windows x64" --device "Meteor Lake / NPU3720" --driver-version "DRIVER_VERSION" --graph-compiler-version "8.3"The prober is experimental: graph loading alone is not a compatibility result; compare the output with the bundled host oracle.
2026-10-03.00
Built from bdf1c01d2caa.
New commits compared with the previous release
Compared with 2026-09-28.00.
d4646a4docs: identify executable ACT tile replicasee4f5dcdocs: confirm mixed-dtype ACT inputsb673459docs: confirm scalar broadcast ACT inputcc37f0cpatchblob: support scalar second inputsbdf1c01build: normalize duplicate proxy variables
New ABI breakthrough
Latest breakthrough — 2026-10-02: Scalar broadcast inputs remain one-element ACT descriptors rather than expanded tensors; custom FP16 and FP32 kernels used them to match all 32 outputs exactly. Evidence and limits.
Environment prober quick start
The npunlock-environment-prober-linux-x64.zip asset contains the Linux probe, the offline inspector, the bundle helper, and a ready-to-run add1-probe bundle. After extracting it:
python3 porting_probe.py verify add1-probe
./npunlock-linux-probe --bundle add1-probe --report add1-linux-report.jsonTo bundle another patched add-one graph, run:
python3 porting_probe.py create --graph patched-add1.blob --output-dir my-probe --producer-platform "Windows x64" --device "Meteor Lake / NPU3720" --driver-version "DRIVER_VERSION" --graph-compiler-version "8.3"The prober is experimental: graph loading alone is not a compatibility result; compare the output with the bundled host oracle.
2026-09-28.00
Built from e9619451c613.
New commits compared with the previous release
Compared with 2026-09-25.00.
441f52cdocs: record mixed-dtype ACT executione961945docs: confirm reverse mixed-dtype ACT conversion
New ABI breakthrough
Latest breakthrough — 2026-09-27: Custom ACT kernels performed connected FP32-to-FP16 and FP16-to-FP32 conversion, each matching 32/32 outputs across two input sets. Evidence and limits.
Environment prober quick start
The npunlock-environment-prober-linux-x64.zip asset contains the Linux probe, the offline inspector, the bundle helper, and a ready-to-run add1-probe bundle. After extracting it:
python3 porting_probe.py verify add1-probe
./npunlock-linux-probe --bundle add1-probe --report add1-linux-report.jsonTo bundle another patched add-one graph, run:
python3 porting_probe.py create --graph patched-add1.blob --output-dir my-probe --producer-platform "Windows x64" --device "Meteor Lake / NPU3720" --driver-version "DRIVER_VERSION" --graph-compiler-version "8.3"The prober is experimental: graph loading alone is not a compatibility result; compare the output with the bundled host oracle.
2026-09-25.00
Built from 33108578c9e9.
New commits compared with the previous release
This is the first published release; the list covers repository history through this build.
c1f402abuild: initialize npunlock project scaffold2a9ddaashavecc: add bounded MoviTools worker pipeline6ce55b8docs: update README.md to clarify npunlock's functionality and architecture3ff738afix: fix AV in calling moviLLD64!process34958bair2blob: add bounded Level Zero compile workeraa3474bpatchblob: add validated ACT code substitution8f934e8npurun: add end-to-end build command09d8ce8execution: checkpoint private worker ABI scaffoldd878c60docs: add Windows development environment instructions and MSVC run script88ed5a8npurun: add bounded native execution worker6cc96e6python: add symbolic graph and native bindings5a35776graphinfer: add bounded public tensor inference5025903docs: stabilize public API and offline CI2365b46docs: record observed NPU and MoviTools ABIs82797c1Add LICENSE383c88btests: vendor licensed NPU3720 fixturesf1cc579tests: use bundled reproducibility fixtures4153e15config: move MoviTools path to runtime interfaces768620bbuild: make Windows preset generator-neutral417f5f5patchblob: infer positional ACT target groupsed49839shavecc: embed default linker script6cfada0examples: update GELU frontend flow52d5319shavecc: garbage-collect MoviTools math linkage8e0c59ccmake: enable shared library builds in CMake configurationab84449examples: implement FP16 GELUa25bf0ashavecc: replace null output with consoles for stdout and stderr81de3f7patchblob: add dtype handling for F32 and F16 in graph_blob.c7b525f3build: unify native runtime distributiondfc8b6bfp32: preserve custom carrier precision3c2301bexamples: add multilayer binary custom graph55fe893docs: rewrite ABI guides for public readers128df27docs: reorganize public guides022072fdocs: add README motivation and Q&A4aaf02ddocs: clarify why npunlock existsda951d8docs: explain model-to-machine lowering4b28924worker: consolidate Win32 process isolationdbc984edocs: streamline repository landing pagec4294fedocs: clarify installed driver wording1a23e64shavecc: add bundled NPU3720 kernel helpersf7b3450shavecc: shorten kernel helper API180ec0arefactor: simplify invocation loading in controlled_act functionsc28e997docs: integrate introduction diagram1e3c470docs: improve README wordingb4cba81docs: show complete FP32 kernel example10989b5docs: outline Linux and newer NPU portingb00df18docs: disclose AI-assisted developmenta5608b7docs: clarify MoviTools extraction instructions in README3933fdedocs: describe kernel libm availability54572ffdocs: inventory MoviTools math symbolse8b837bpython: infer custom output contract023f5aadocs: lead with SHAVE programming gap87a7aa5examples: add mixed-precision multi-custom graph4bd65d4docs: record reverse-engineering breakthroughs76595acpython: add native graph persistence50b39bedocs: highlight latest research resultfce9450python: accept partitioned custom operations1883f5bgraphinfer: add shared tensor sessions3cf1690style: format Python sources with Blackac46cffporting: add Linux offline blob inspector5a04fffporting: add reproducible add1 probe bundlesb485f5fporting: add Linux Level Zero execution probeeb7d971porting: add bounded POSIX worker launcher4cbf3f0graphinfer: execute in process without worker5b0c694graphinfer: remove worker ABI remnants3310857ci: add daily release workflow
New ABI breakthrough
Latest breakthrough — 2026-09-23: One native graph can execute independent FP32-unary and FP16-binary custom branches; explicit ACT-group preflight handles the compiler's branch reordering. Evidence and limits.
Environment prober quick start
The `npunlock...