Why Loom vs the rest of AI
Cloud chatbots rent intelligence. PyTorch rents a Python runtime. Loom v0.83 is a pure Go AI engine with measured hardware acceleration—Plan 9 SIMD (AVX2/NEON), Apple Metal, Intel OpenVINO NPU, and experimental Qualcomm Hexagon—plus the Drift Spectrum parity receipts. Shipped in SoulGlitch on real phones.
The OpenFluke stack
Not a single API—an open-source AI infrastructure lab: engine, bindings, docs, and products built on the same runtime.
Loom (Apache 2.0)
v0.83 M-POLY-VTD engine: Plan 9 SIMD, Metal, OpenVINO, Hexagon bridge, 21 dtypes, WebGPU, BitNet CPU, C-ABI welvet.
Polyglot bindings
Python, TypeScript/npm, Go, Dart, C#, Java, WASM—one engine, same weights, embed like SQLite for neural nets.
SoulGlitch (product)
Offline AI planet sandbox on App Store & Google Play — swarm polls, on-device chat, SIMD inference. Living proof of Loom on phones.
Primecraft + lab tools
Voxel simulation with embedded AI, scene gallery, Lucy CLI for local HF models—same sovereignty story.
Open source means Loom: source, license, and rebuildable natives on GitHub.
Releases ship prebuilt .so / .dylib / wheels so you don't have to compile Go—same pattern as PyTorch pip wheels or llama.cpp binaries.
SoulGlitch is a product on Google Play (app code not necessarily OSS). Model weights come from Hugging Face under their own licenses.
What Loom does differently
Compared to cloud AI, Python frameworks, LLM-only runners, and other Go ML libraries.
Sovereign & offline
No API keys. Prompts and training stay on your hardware—privacy by architecture, not policy PDFs.
Pure Go, zero CGO
Golang AI without a Python runtime or CUDA-only trap. Single-binary deployment story for edge and servers.
3D volumetric mesh
Networks as spatial grids—not only nn.Sequential. Native target propagation and step mesh learning.
21 dtypes + BitNet
Float64 down to 1-bit binary per layer. Native .entity checkpoints with verified JSON + binary save/reload (v0.80). BitNet b1.58 on CPU since v0.78.
DNVM determinism
Bit-identical behaviour across CPU, WebGPU, and bindings—reproducible research and embedded systems.
WebGPU everywhere
Cross-vendor GPU: Windows, Linux, macOS, Android, browser—without shipping CUDA toolchains per platform.
Plan 9 SIMD (v0.83)
Raw AVX2 / NEON across the engine — no CGO, no CUDA stack. Dense forward paths up to 3.7× throughput vs scalar on the same CPU.
Vendor accel bridge
poly/accel dispatches to Apple Metal, Intel OpenVINO NPU, and Qualcomm Hexagon — each cell measured with the Drift Spectrum parity buckets.
Mid-stream adaptation
Dense poly training paths flip chase → avoid → chase in 0 s with StepTweenChain — built for embodied agents, not offline-only convergence.
DNA & NEAT built-in
Topological comparison of whole networks, evolution in-engine—not just weight checkpoint diffing.
Shipped proof
SoulGlitch on App Store & Google Play — swarm polls, on-device chat. Living proof of local Loom on phones.
Measured on real hardware
DispatchLayer benchmarks from OpenFluke lab runs — Loom CPU vs Apple CPU/Metal, Intel CPU/OpenVINO NPU, and Qualcomm Hexagon. Plus dense mid-stream adaptation with Plan 9 SIMD forward paths. Release: v0.83 · docs · research PDF.
(NormalBP actions/s)
(large MatMul FP32)
(large Conv2D INT8)
(large MatMul FP16)
(chase/avoid flips)
(Apple · Intel · Qcom)
Plan 9 SIMD + dense adaptation
6-layer dense net, 15 s timeline: chase 5 s → avoid 5 s → chase 5 s. SIMD links AVX2/NEON for forward passes; training/backward stay scalar.
| Training path | SIMD | Throughput | Avg accuracy | Task-flip return | Deadline hits |
|---|---|---|---|---|---|
| NormalBP | off | 9,920 /s | 41.1% | 159.9% | 99.8% |
| NormalBP | on | 36,349 /s | 38.9% | 71.2% | 100.0% |
| TweenChain | off | 13,685 /s | 40.6% | 28.9% | 99.9% |
| TweenChain | on | 36,734 /s | 38.3% | 1.0% | 100.0% |
| StepTweenChain | off | 1,335 /s | 50.3% | 87.1% | 100.0% |
| StepTweenChain | on | 1,420 /s | 51.3% | 99.2% | 100.0% |
Takeaway: SIMD is a straight throughput win for reactive training loops. StepTweenChain wins on goal-switching — instant recovery at both task boundaries (0 s adapt delay), 100% deadline hit rate, best average accuracy. That's the embodied-AI story: chase, avoid, chase — not one static loss curve.
Apple Metal (DispatchLayer)
| Workload (large tensors) | Loom CPU | Metal GPU speedup | Loom CPU vs Apple CPU | Metal infer repeat |
|---|---|---|---|---|
| MatMul FP16 | 2.61 ms | 4.6× faster | — | 💎 EXACT (180/180) |
| MatMul INT8 | 2.32 ms | 4.1× faster | — | 💎 EXACT |
| ReLU INT8 | 1.91 ms | 6.1× faster | 87× faster | 💎 EXACT |
| GELU INT8 | 2.14 ms | — | 56× faster | 💎 EXACT |
| Conv2D FP32 | 59.3 ms | — | 4.3× faster | 💎 EXACT |
Loom↔Metal GPU parity: 132/180 cells at industrial grade (✅ INDUS or better). Every Metal infer-repeat forward: 💎 EXACT bit-identical across 180 layer×dtype cells.
Intel OpenVINO NPU
| Workload (large tensors) | Loom CPU | Intel NPU speedup | NPU parity (≤ INDUS) | Infer repeat |
|---|---|---|---|---|
| Conv2D INT8 | 115.6 ms | 21× faster | 61/90 cells | 💎 EXACT (90/90) |
| Conv2D FP32 | 117.4 ms | 21× faster | 61/90 | 💎 EXACT |
| MatMul INT8 | 4.23 ms | 6.1× faster | 61/90 | 💎 EXACT |
| Conv1D INT8 | 29.1 ms | 12× faster | 61/90 | 💎 EXACT |
| MatMul FP16 | 5.80 ms | 8.7× faster | 61/90 | 💎 EXACT |
Fat matmul/conv layers are where the NPU pays off. Small-tensor latency tax still applies on tiny ops —
Loom CPU + SIMD remains the right default for reactive dense loops. Compile once via SyncToAccel, then measure.
Qualcomm Hexagon (experimental)
| Workload (large tensors) | Loom CPU | Hexagon NPU | NPU parity | Status |
|---|---|---|---|---|
| MatMul FP32 | 3.58 ms | 7.0× faster | 45/54 cells | Experimental |
| ReLU INT8 | 3.52 ms | 6.9× faster | 45/54 | Experimental |
| GELU INT8 | 3.51 ms | 5.6× faster | 45/54 | Experimental |
| Sigmoid INT8 | 3.30 ms | 6.1× faster | 45/54 | Experimental |
| GELU INT4 | 3.51 ms | 6.5× faster | 45/54 | Experimental |
Hexagon path is experimental — many layer×dtype combos still return ERR while QNN coverage expands. Where it runs: infer-repeat is 💎 EXACT on 54/54 exercised cells. Snapdragon is the phone story; Metal/OpenVINO are the desktop stories.
Drift Spectrum is Loom's answer to "did the accelerator lie?" Every vendor bridge cell gets a parity bucket — not vibes, not a single cosine-similarity number. Read the full analysis in the v0.83 research PDF and release notes.
Quick comparisons
Cloud AI (ChatGPT, etc.)
- Them: Intelligence in their datacenter
- Loom: Engine in your process
- Them: No embeddable runtime
- Loom: C-ABI for your app
PyTorch / JAX
- Them: Python + huge CUDA stack
- Loom: Go binary, edge-first
- Them: 1D autograd DAG
- Loom: 3D mesh + target propagation
llama.cpp / Ollama
- Them: LLM inference focus
- Loom: Train + small nets + NEAT + DNA
- Them: GGUF decode excellence
- Loom: Full engine for products
GoMLX / Born ML
- Them: 1D stacks or OpenXLA/CGO
- Loom: Zero CGO + WebGPU
- Them: Narrower scope
- Loom: DNVM, BitNet, DNA, shipped app
Loom vs PyTorch & Go ML (summary)
| Capability | Loom | PyTorch / JAX | llama.cpp |
|---|---|---|---|
| Core language | Pure Go (golang AI) | Python + C++/CUDA | C/C++ |
| Offline / embed | First-class (C-ABI, WASM) | Possible, heavy | Inference-focused |
| Training + custom nets | 3D mesh, NEAT, DNA | Autograd ecosystem | Mostly inference |
| Quantization | 21 native dtypes + BitNet CPU | TorchAO add-ons | GGUF quants |
| GPU path | WebGPU + Metal / OpenVINO / Hexagon | CUDA / ROCm / TPU | CPU/GPU backends |
| Plan 9 SIMD (v0.83) | AVX2 / NEON, zero CGO | Vendor BLAS / MKL | Limited |
| Vendor NPU bridge | Metal · OpenVINO · Hexagon + Drift Spectrum | ONNX Runtime plugins | N/A |
| Determinism (DNVM) | Bit-exact claim | Not guaranteed | Varies |
| Open source | Apache 2.0 engine + binaries | Framework OSS | OSS inference |
Deep dive: M-POLY-VTD architecture research · docs overview
When to choose Loom
Choose Loom if you need…
- Offline AI inside your app (Flutter, Go, WASM)
- A golang AI / Go ML stack without Python
- Bit-exact, auditable local inference
- BitNet or sub-byte models on CPU
- Metal / OpenVINO / Hexagon with measured parity
- 3D / NEAT / DNA research in one engine
- Apache 2.0 you can fork and ship
Use something else if you need…
- Largest cloud models with zero setup (use hosted APIs)
- Massive PyTorch ecosystem & HF fine-tune recipes day one
- Fastest GGUF Llama on Mac CPU only (benchmark llama.cpp)
- Enterprise MLOps (Kubeflow, etc.) out of the box
Ready to try the golang AI engine?
Star the repo, read the docs, or install SoulGlitch and run models offline today.