Jedna platforma, 1 930 algoritmů, všechny backendy: jak jsme postavili kompletní stack pro diskrétní AI
Problém roztříštěnosti
Vaše vývojové prostředí pro AI je roztříštěné.
Prototypujete v PyTorch, protože ho výzkumníci preferují. Nasazujete s TensorFlow, protože produkční týmy chtějí nástroje od Googlu. Píšete CUDA jádra pro GPU NVIDIA. Portujete na ROCm pro hardware AMD. Vše přepisujete pro mobilní zařízení pomocí TensorFlow Lite nebo Core ML. Používáte ONNX k převodu mezi frameworky a doufáte, že se nic nerozbije. Udržujete oddělené kódové základny pro cloud, edge a prohlížečové nasazení.
Deset různých nástrojů. Tisíce závislostí. Noční můry s kompatibilitou verzí. Změny, které rozbíjejí věci, v každém cyklu vydání.
Aktualizujete PyTorch? Doufejte, že vaše verze CUDA odpovídá. Chcete nasadit na AMD? Přepište svá jádra. Potřebujete inferenci v prohlížeči? Začněte znovu s WebAssembly. Přecházíte z GPU NVIDIA na AMD? Hodně štěstí s portováním té kódové základny. Nasazujete na FPGA? Naučte se úplně jiný nástrojový řetězec.
Tato roztříštěnost není náhoda. Je to přirozený důsledek toho, že každý framework optimalizuje pro svůj konkrétní případ použití a ignoruje interoperabilitu. PyTorch vyniká ve výzkumu, ale na nasazení myslí až na posledním místě. TensorFlow cílí na produkci, ale výzkumná zkušenost je bolestivá. CUDA vás uzamkne na hardware NVIDIA. Každý nástroj řeší jeden problém a vytváří tři další.
Existuje lepší cesta.
Dweve Core: Kompletní platforma pro diskrétní AI
Dweve Core je jednotná platforma pro vytváření diskrétních neuronových sítí od binární po 8bitovou přesnost. Není to další framework. Je to úplná náhrada vašeho roztříštěného stacku.
Jedna instalace. Jedno API. Jedna kódová základna. Automatické nasazení na CPU, GPU, FPGA, WebAssembly, kamkoli potřebujete běžet.
Zde je, co znamená kompletní:
1 930 algoritmů pokrývajících každou operaci, kterou potřebujete:
- 415 primitiv: Atomické operace jako XNOR, popcount, manipulace s bity, kvantizace, převod mezi formáty
- 500 jader: Optimalizované složené operace pro běžné vzory
- 191 vrstev: Kompletní stavební bloky neuronových sítí (konvoluce, husté vrstvy, normalizace, aktivace, pozornost)
- 674 algoritmů: Vysoceúrovňové metody včetně transformací, trénovacích postupů, evolučního vyhledávání, znalostní destilace
- 30 nástrojů pro interoperabilitu: Volitelné plovoucí můstky pro hybridní přístupy
- 120 architektur modelů: Předoptimalizované šablony sítí od ResNet po Transformery
Toto není podmnožina. Je to matematická úplnost. Analyzovali jsme každou hlavní architekturu neuronových sítí a vytvořili každou operaci, kterou vyžadují, optimalizovanou pro diskrétní výpočty od základních principů.
6 backendů s automatickou kompilací:
- SIMD CPU: Ručně optimalizovaná jádra pro x86 a ARM s automatickou detekcí ISA (SSE2, AVX2, AVX-512, NEON, SVE/SVE2)
- CUDA: Optimalizace pro GPU NVIDIA s primitivy na úrovni warpů a využitím Tensor Core
- Rust-HDL: Přímá syntéza FPGA a ASIC z popisů algoritmů
- WebAssembly: Inferenční výpočty v prohlížeči s podporou SIMD128 pro zpracování na zařízení v souladu s GDPR
- ROCm: Optimalizace pro GPU AMD s operacemi na úrovni wavefrontů
- Metal: Optimalizace pro Apple Silicon s využitím architektury jednotné paměti
6 bitových šířek s adaptivní přesností:
- Binární (1 bit): Maximální efektivita s 16násobnou kompresí oproti FP16
- Trinární: {-1, 0, +1} s explicitní řídkostí
- 2bitové: Čtyři úrovně pro vyváženou kompresi
- 3bitové: Osm úrovní pro vrstvy citlivé na kvalitu
- 4bitové: Šestnáct úrovní blížících se kvalitě FP16
- 8bitové: Téměř plná přesnost pro kritické operace
Platforma se během tréninku učí optimální bitovou šířku pro každou vrstvu pomocí výběru založeného na gradientech. Žádné heuristiky. Žádné hádání. Skutečná optimalizace založená na tom, jak se přesnost zlepšuje s přidanou přesností.
Napište jednou, nasaďte všude
Platforma používá deklarativní Rust API. Popíšete, co chcete, a kompilátor zjistí, jak to optimálně spustit na vašem cílovém hardwaru.
Příklad definice sítě:
let model = NetworkBuilder::new()
.input(BinaryTensor::new([1024, 784]))
.dense(784, 512, activation=BinaryActivation::Sign)
.dense(512, 256, activation=BinaryActivation::Sign)
.output(256, 10)
.build();
A je to. Napíšete to jednou a kompilátor automaticky vygeneruje optimalizované implementace pro každý backend.
Kompilační pipeline probíhá na čtyřech úrovních:
Úroveň 1: IR neuronové sítě - Váš popis sítě na vysoké úrovni se analyzuje do výpočetního grafu s operacemi, datovými toky a hyperparametry.
Úroveň 2: Optimalizace grafu - Standardní průchody kompilátoru odstraňují mrtvý kód, skládají konstanty, deduplikují výrazy a spojují sekvenční operace. Hustá vrstva následovaná batch normalizací a aktivační funkcí se stane jediným spojeným jádrem, které načte vstup jednou a vytvoří konečný výstup.
Úroveň 3: Dialekt BitOps - Graf se sníží na bitové operace explicitně typované přesností. Tato mezilehlá reprezentace je nezávislá na hardwaru, ale blízká skutečným strojovým operacím. Postaveno na infrastruktuře MLIR (Multi-Level Intermediate Representation) pro optimalizaci na průmyslové úrovni.
Úroveň 4: Snížení na hardware - Finální generování kódu vytváří implementace specifické pro danou platformu. Pro AVX-512 se bitové operace stávají instrukcemi VPXORQ a VPOPCNTQ. Pro CUDA se stávají intrinsics na úrovni warpů s koalesovaným přístupem do paměti. Pro FPGA se stávají hradly XNOR a sčítačovými stromy syntetizovanými do Verilogu.
Stejný zdrojový kód běží na procesoru vašeho notebooku během vývoje, nasazuje se na cloudové GPU v produkci a kompiluje se do FPGA pro deterministickou inferenci v reálném čase. Žádný překlad. Žádný porting. Žádný kód specifický pro platformu.
Postaveno pro zákazníky, aby s ním mohli tvořit
Dweve Core pohání Dweve Loom, náš systém uvažování založený na omezeních. Ale není to jen pro nás. Je to kompletní platforma pro každého, kdo staví diskrétní neuronové sítě.
You can build:
- Custom architectures using the 191 layer types and 674 algorithms
- Domain-specific models optimized for your exact requirements
- Hybrid approaches mixing discrete and continuous computation via the 30 interop utilities
- Novel training methods using evolutionary search, knowledge distillation, or custom gradient estimators
The platform provides:
Complete training infrastructure: Six straight-through estimator variants for binary/ternary gradient flow. Binary-aware optimizers that maintain full-precision weights internally while binarizing for forward passes. Automatic bit-width selection through gradient-based optimization. Progressive multi-stage distillation from FP32 through INT8, INT4, ternary, to binary.
Automatic hardware optimization: Runtime detection of CPU capabilities (CPUID on x86, system registers on ARM) and automatic dispatch to fastest available SIMD implementation. GPU kernel variants selected based on warp size, shared memory, and register count. FPGA synthesis with automatic pipeline register insertion based on timing constraints.
Flexible quantization: Symmetric and asymmetric quantization with per-tensor, per-channel, or per-group scales. Dynamic quantization with runtime range detection or static quantization with pre-computed scales from calibration data. MSE-optimal and KL-divergence-based scale computation for minimal accuracy loss.
Why discrete computation matters
Traditional neural networks compute everything in 16-bit or 32-bit floating point, then make discrete decisions at the end. We operate directly in discrete space from binary to 8-bit, eliminating intermediate continuous computation.
This isn't simple quantization of existing models. The framework is architected from first principles around discrete operations:
Hardware reality: Modern processors consist of billions of transistors in two states. An XNOR gate requires 6 transistors. A 32-bit floating-point multiplier requires thousands and consumes orders of magnitude more energy. Discrete operations align with hardware fundamentals.
Memory efficiency: Binary weights pack 64 values per 64-bit word. A ResNet-50 with 25.6 million parameters occupies 3.1MB in binary versus 50MB in FP16. The entire model fits in CPU L3 cache (typical: 36-64MB). You become compute-bound instead of memory-bound.
Deployment flexibility: Small models enable on-device inference. No cloud dependency. No network latency. No data privacy concerns. Process sensitive information entirely on user devices without ever transmitting to servers.
The complete algorithm matrix
The platform provides comprehensive coverage across three dimensions: algorithms, backends, and bit-widths.
Fundamental operations (415 primitives):
- 46 bitových operací: logická hradla, manipulace, posuny, počítání, vyhledávání
- 16 operací s poli: extrakce, vložení, zabalení, rozptýlení, shromáždění, tvorba masek
- 25 redukcí: logické AND/OR/XOR, aritmetický součet/součin, hlasování a konsenzus
- 17 metrik vzdálenosti: Hammingova, Jaccardova, Dice, Tanimoto, kosinová, manhattanská, euklidovská
- 12 prokládacích operací: 2cestné až 4cestné prokládání, Mortonovy a Hilbertovy křivky vyplňující prostor
- 44 aritmetických operací: sčítání, odčítání, násobení, dělení, operace s pevnou řádovou čárkou
- 39 transformací: Walsh-Hadamardova, FFT, DCT, NTT, vlnky (Haarova, Daubechiesovy, CDF97)
- 11 hashovacích funkcí: SHA-256, Blake3, xxHash, MinHash, SimHash, locality-sensitive hashování
- 22 generátorů náhodných čísel: LFSR, Mersenne Twister, ChaCha20, Sobolovy posloupnosti
- 15 kvantizací: symetrická, asymetrická, per-tensor, per-channel, výpočet měřítka
- 30 binárních matematických operací: XNOR-popcount, ternární kódování, aktualizace vah, gradientní operace
- 48 převodů formátů: převody FP32/FP16/FP8/INT8/INT4/INT2 všemi směry
- 42 operací s pevnou řádovou čárkou: aritmetika, transcendentální funkce, saturace napříč všemi šířkami bitů
Složené operace (500 jader):
Optimalizovaná jádra kombinující primitiva pro běžné vzory. Varianty násobení matic (standardní, transponované, blokové). Typy konvolucí (2D, 3D, depthwise, grouped, dilated). Normalizace (batch, layer, group, instance). Aktivační funkce (sign, hard tanh, po částech lineární). Mechanismy pozornosti (self-attention, cross-attention, multi-head). Pooling (max, average, stochastic).
Vrstvy sítí (191 vrstev):
Kompletní stavební bloky pro konstrukci sítí. Husté vrstvy s binárními, ternárními a vícebitovými vahami. Konvoluční vrstvy se všemi běžnými variantami. Rekurentní vrstvy (LSTM, GRU s binárními hradly). Vrstvy pozornosti (scaled dot-product, multi-head, relativní pozice). Normalizační vrstvy s dávkovými statistikami a naučenými parametry. Reziduální spojení s přiřazením dimenzí.
Algoritmy vysoké úrovně (674 algoritmů):
Kompletní metody pro trénování, inferenci a optimalizaci. Znalostní destilace s postupným vícestupňovým zpřesňováním. Evoluční objevování omezení s genetickým programováním. Vyhledávání architektury neuronových sítí pro diskrétní sítě. Odhadovače gradientu (straight-through, clipped, adaptive, momentum, hypernetwork). Optimalizátory (BinaryAdam, TernaryAdam, adaptivní kvantizace). Distribuované trénování s agregací odolnou vůči byzantským chybám.
Hloubka implementace backendu
Každý algoritmus existuje ve více optimalizovaných variantách pro každý backend. Ne generické implementace. Kód specifický pro hardware využívající každou architektonickou funkci.
CPU SIMD: SSE2 poskytuje univerzální kompatibilitu x86-64 (každý procesor od roku 2001). AVX2 přináší 4-8násobné zrychlení na Haswell a novějších (2013+). AVX-512 dosahuje 10-16násobného zrychlení s maskovacími registry pro predikaci a VPTERNLOG pro libovolnou 3vstupovou booleovskou funkci. NEON přináší 3-4násobné zrychlení všem procesorům ARMv8 včetně mobilních a Apple Silicon. SVE/SVE2 poskytuje kód nezávislý na délce vektoru, který automaticky využívá širší vektory na novějším hardwaru.
CUDA: Warp-level primitives organize 32 threads executing in lockstep. Each thread processes 32 binary values packed in uint32. Full warp processes 1,024 binary values in parallel. Hardware intrinsics include __popc for population count, __ballot_sync for warp voting, __shfl_sync for fast communication without shared memory. Coalesced memory access ensures bandwidth utilization. Tensor Core utilization for matrix operations even with binary data.
Rust-HDL: Direct hardware synthesis from annotated Rust code. The framework generates Verilog/VHDL automatically. Binary XNOR-popcount operations map to XNOR gates (combinatorial logic, zero propagation delay) plus adder trees. Pipeline registers inserted automatically based on timing constraints. Synthesizes to both FPGAs (Xilinx, Intel) and ASICs.
WebAssembly: SIMD128 provides 128-bit vector operations in all modern browsers (Chrome 91+, Firefox 89+, Safari 16.4+). Operations include v128.and/or/xor for bitwise logic and i8x16.popcnt for population counting. Combined with Web Workers for multi-threading and SharedArrayBuffer for shared memory, achieves 60-80% of native CPU performance. On-device browser inference enables GDPR-compliant processing without server uploads.
ROCm: Wavefront-level optimization for AMD architectures with 64 threads per wavefront (double NVIDIA's 32). Each thread processes 32 binary values for 2,048 values per wavefront. Similar intrinsics to CUDA with __builtin_popcount, __ballot, and ds_swizzle. Programming model close enough that CUDA developers can write ROCm code immediately.
Metal: Apple Silicon optimization using unified memory architecture where CPU and GPU share physical RAM with cache coherency. Eliminates data copying overhead. Binary operations leverage Apple's custom matrix engines. M3 Max Neural Engine delivers 50-80 TOPS on binary inference using dedicated accelerators built into the SoC.
What we don't do (and why focus matters)
Important to clarify: we don't do everything. Focus enables excellence.
No floating-point inference: Discrete computation only from binary to 8-bit. If you need FP32/FP16/BFloat16 for deployment, use PyTorch or JAX instead. We optimize exclusively for discrete operations, enabling specializations impossible with mixed-precision floating-point. You can't be excellent at everything. We chose discrete AI and optimized ruthlessly.
No dynamic inference graphs: Models compile to static graphs for deployment. Training supports dynamic computation (necessary for research flexibility), but production inference is static. This enables ahead-of-time optimization: kernel fusion across entire network, memory layout optimization with known tensor shapes, prefetch instruction insertion with predictable access patterns.
Focused data preprocessing: We provide 8 specialized algorithms for neural network input preparation (normalization, adaptive scaling, learned quantization, binary augmentation), not general-purpose ETL. For feature engineering pipelines and data loading, use existing tools (Pandas, Polars, DuckDB). We're excellent at discrete neural network inference from binary to 8-bit. We're not replacing your entire data stack.
These aren't limitations. They're focus. By constraining scope to discrete neural networks with static inference graphs, we achieve optimization depth that comprehensive frameworks can't match.
Building on Dweve Core
The platform is ready to use. You can start building discrete neural networks today.
Complete toolchain:
- Deklarativní API: Rust DSL s NetworkBuilder pro definici modelu
- Infrastruktura kompilátoru: Optimalizační pipeline založená na MLIR se čtyřmi úrovněmi IR
- Tréninkový framework: Šest variant STE, binárně uvědomělé optimalizátory, automatický výběr bitové šířky
- Generátory kódu pro backendy: C s intrinsics pro CPU, CUDA/HIP jádra pro GPU, Verilog pro FPGA
- Nástroje pro nasazení: Export do ONNX, Core ML, TensorFlow Lite nebo samostatných binárek
Příklad pracovního postupu:
1. Definujte svou síť pomocí NetworkBuilder
2. Trénujte pomocí binárně uvědomělých optimalizátorů s adaptivním výběrem bitové šířky
3. Zkompilujte pro cílový hardware s automatickým výběrem backendu
4. Nasaďte jako optimalizovanou binárku nebo exportujte do standardního formátu
5. Spusťte kdekoli: cloudové servery, edge zařízení, prohlížeče, FPGA
Jedna platforma. Jeden kód. Každý backend. Kompletní diskrétní AI.
Přestaňte žonglovat s deseti frameworky. Přestaňte přepisovat kód pro každý cíl nasazení. Přestaňte bojovat s kompatibilitou verzí. Postavte jednou na Dweve Core a nasazujte všude.
Dweve Core pohání Dweve Loom, náš systém uvažování založený na omezeních, který startuje v roce 2026. Framework implementuje kompletní zásobník 1 930 algoritmů napříč 6 backendy s adaptivní multi-bitovou kvantizací od binární po 8bitovou. Vyvinul ho nizozemský inženýrský tým během tří let vývoje.