Jedna platforma, 1 930 algoritmov, každý backend: ako sme postavili kompletný stack pre diskrétnu AI
Problém fragmentácie
Vaše vývojové prostredie pre AI je fragmentované.
Prototypujete v PyTorch, pretože ho výskumníci uprednostňujú. Nasadzujete s TensorFlow, pretože produkčné tímy chcú nástroje od Googlu. Píšete CUDA jadrá pre GPU od NVIDIA. Portujete na ROCm pre hardvér od AMD. Všetko prepisujete pre mobil pomocou TensorFlow Lite alebo Core ML. Používate ONNX na konverziu medzi frameworkmi a dúfate, že sa nič nepokazí. Udržiavate oddelené kódové základne pre cloud, edge a prehliadačové nasadenie.
Desať rôznych nástrojov. Tisíce závislostí. Nočné mory s kompatibilitou verzií. Zásadné zmeny v každom cykle vydania.
Aktualizujete PyTorch? Dúfajte, že vaša verzia CUDA sedí. Chcete nasadiť na AMD? Prepíšte svoje jadrá. Potrebujete inferenciu v prehliadači? Začnite odznova s WebAssembly. Prechádzate z GPU NVIDIA na AMD? Veľa šťastia pri portovaní tej kódovej základne. Nasadzujete na FPGA? Naučte sa úplne iný nástrojový reťazec.
Táto fragmentácia nie je náhoda. Je prirodzeným výsledkom toho, že každý framework sa optimalizuje pre svoj konkrétny prípad použitia a ignoruje interoperabilitu. PyTorch vyniká vo výskume, ale nasadenie považuje za dodatočnú myšlienku. TensorFlow sa zameriava na produkciu, ale výskumná skúsenosť je bolestivá. CUDA vás uzamkne na hardvér NVIDIA. Každý nástroj rieši jeden problém a vytvára tri ďalšie.
Existuje lepšia cesta.
Dweve Core: Kompletná platforma pre diskrétnu AI
Dweve Core je jednotná platforma na vytváranie diskrétnych neurónových sietí s presnosťou od binárnej po 8-bitovú. Nie je to ďalší framework. Je to úplná náhrada vašej fragmentovanej sady nástrojov.
Jedna inštalácia. Jedno API. Jedna kódová základňa. Automatické nasadenie na CPU, GPU, FPGA, WebAssembly, kamkoľvek potrebujete spustiť.
Tu je to, čo znamená úplná:
1 930 algoritmov pokrývajúcich každú operáciu, ktorú potrebujete:
- 415 primitív: Atómové operácie ako XNOR, popcount, manipulácia s bitmi, kvantizácia, konverzia medzi formátmi
- 500 jadier: Optimalizované zložené operácie pre bežné vzory
- 191 vrstiev: Kompletné stavebné bloky neurónových sietí (konvolúcia, hustá vrstva, normalizácia, aktivácia, pozornosť)
- 674 algoritmov: Vysokoúrovňové metódy vrátane transformácií, tréningových postupov, evolučného vyhľadávania, destilácie znalostí
- 30 interop nástrojov: Voliteľné mosty pre pohyblivú rádovú čiarku pre hybridné prístupy
- 120 architektúr modelov: Predoptimalizované šablóny sietí od ResNet po Transformers
Toto nie je podmnožina. Je to matematická úplnosť. Analyzovali sme každú významnú architektúru neurónových sietí a vytvorili každú operáciu, ktorú vyžadujú, optimalizovanú pre diskrétny výpočet od základných princípov.
6 backendov s automatickou kompiláciou:
- SIMD CPU: Ručne optimalizované jadrá pre x86 a ARM s automatickou detekciou ISA (SSE2, AVX2, AVX-512, NEON, SVE/SVE2)
- CUDA: Optimalizácia pre GPU NVIDIA s primitívami na úrovni warpov a využitím Tensor Core
- Rust-HDL: Priama syntéza FPGA a ASIC z opisov algoritmov
- WebAssembly: Inferencia v prehliadači s podporou SIMD128 pre spracovanie na zariadení v súlade s GDPR
- ROCm: Optimalizácia pre GPU AMD s operáciami na úrovni wavefrontov
- Metal: Optimalizácia pre Apple Silicon pomocou architektúry zjednotenej pamäte
6 šírok bitov s adaptívnou presnosťou:
- Binárny (1-bit): Maximálna efektivita s 16-násobnou kompresiou oproti FP16
- Termárny: {-1, 0, +1} s explicitnou riedkosťou
- 2-bitový: Štyri úrovne pre vyváženú kompresiu
- 3-bitový: Osem úrovní pre vrstvy citlivé na kvalitu
- 4-bitový: Šestnásť úrovní približujúcich sa kvalite FP16
- 8-bitový: Takmer plná presnosť pre kritické operácie
Platforma sa počas tréningu učí optimálnu bitovú šírku pre každú vrstvu prostredníctvom výberu založeného na gradiente. Žiadne heuristiky. Žiadne hádanie. Skutočná optimalizácia založená na tom, ako presnosť rastie s pridanou presnosťou.
Napíšte raz, nasaďte všade
Platforma používa deklaratívne Rust API. Opíšete, čo chcete, a kompilátor zistí, ako to optimálne spustiť na vašom cieľovom hardvéri.
Príklad definície siete:
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 raz a kompilátor automaticky vygeneruje optimalizované implementácie pre každý backend.
Kompilačný pipeline prebieha na štyroch úrovniach:
Úroveň 1: IR neurónovej siete - Váš opis siete na vysokej úrovni sa spracuje do výpočtového grafu s operáciami, tokom dát a hyperparametrami.
Úroveň 2: Optimalizácia grafu - Štandardné kompilátorové prechody odstraňujú mŕtvy kód, skladajú konštanty, deduplikujú výrazy a spájajú sekvenčné operácie. Hustá vrstva nasledovaná batch normalizáciou a aktiváciou sa stáva jediným spojeným jadrom, ktoré načíta vstup raz a vytvorí konečný výstup.
Úroveň 3: Dialekt BitOps - Graf sa zníži na bitové operácie explicitne typované presnosťou. Táto medzireprezentácia je nezávislá od hardvéru, ale blízka skutočným strojovým operáciám. Postavená na infraštruktúre MLIR (Multi-Level Intermediate Representation) pre priemyselnú optimalizáciu.
Úroveň 4: Zníženie na hardvér - Konečná generácia kódu vytvára implementácie špecifické pre platformu. Pre AVX-512 sa bitové operácie stávajú inštrukciami VPXORQ a VPOPCNTQ. Pre CUDA sa stávajú vnútornými funkciami na úrovni warpov so zlúčeným prístupom do pamäte. Pre FPGA sa stávajú hradlami XNOR a sčítačovými stromami syntetizovanými do Verilogu.
Rovnaký zdrojový kód beží na procesore vášho notebooku počas vývoja, nasadzuje sa na cloudové GPU v produkcii a kompiluje sa na FPGA pre deterministickú inferenciu v reálnom čase. Žiadny preklad. Žiadny porting. Žiadny kód špecifický pre platformu.
Postavené pre zákazníkov, aby s ním tvorili
Dweve Core poháňa Dweve Loom, náš systém uvažovania založený na obmedzeniach. Ale nie je to len pre nás. Je to kompletná platforma pre každého, kto vytvára diskrétne neurónové siete.
Môžete vytvárať:
- Vlastné architektúry pomocou 191 typov vrstiev a 674 algoritmov
- Modely špecifické pre doménu optimalizované presne podľa vašich požiadaviek
- Hybridné prístupy kombinujúce diskrétny a spojitý výpočet prostredníctvom 30 interop nástrojov
- Nové metódy tréningu pomocou evolučného vyhľadávania, destilácie znalostí alebo vlastných odhadovačov gradientu
Platforma poskytuje:
Kompletná tréningová infraštruktúra: Šesť variantov priamych odhadovačov pre binárny/ternárny tok gradientov. Optimalizátory pracujúce s binárnymi hodnotami, ktoré interne udržiavajú váhy v plnej presnosti a binarizujú ich pre dopredné prechody. Automatický výber šírky bitov prostredníctvom optimalizácie založenej na gradiente. Postupná viacstupňová destilácia od FP32 cez INT8, INT4, ternárne až po binárne.
Automatická hardvérová optimalizácia: Detekcia schopností CPU počas behu (CPUID na x86, systémové registre na ARM) a automatické presmerovanie na najrýchlejšiu dostupnú SIMD implementáciu. Varianty GPU kernelov vybrané na základe veľkosti warp, zdieľanej pamäte a počtu registrov. Syntéza FPGA s automatickým vkladaním pipeline registrov na základe časových obmedzení.
Flexibilná kvantizácia: Symetrická a asymetrická kvantizácia s mierkami per-tensor, per-channel alebo per-group. Dynamická kvantizácia s detekciou rozsahu počas behu alebo statická kvantizácia s vopred vypočítanými mierkami z kalibračných dát. Výpočet mierok založený na MSE a KL divergencii pre minimálnu stratu presnosti.
Prečo záleží na diskrétnom výpočte
Tradičné neurónové siete počítajú všetko v 16-bitovej alebo 32-bitovej pohyblivej rádovej čiarke a na konci robia diskrétne rozhodnutia. My pracujeme priamo v diskrétnom priestore od binárneho po 8-bitový, čím eliminujeme medziľahlý spojitý výpočet.
Toto nie je jednoduchá kvantizácia existujúcich modelov. Framework je od základov navrhnutý okolo diskrétnych operácií:
Hardvérová realita: Moderné procesory pozostávajú z miliárd tranzistorov v dvoch stavoch. Hradlo XNOR vyžaduje 6 tranzistorov. 32-bitová násobička s pohyblivou rádovou čiarkou vyžaduje tisíce a spotrebúva o rády viac energie. Diskrétne operácie sú v súlade so základmi hardvéru.
Pamäťová efektívnosť: Binárne váhy zabalia 64 hodnôt do jedného 64-bitového slova. ResNet-50 s 25,6 miliónmi parametrov zaberá 3,1 MB v binárnej forme oproti 50 MB vo FP16. Celý model sa zmestí do L3 cache CPU (typicky 36-64 MB). Stávate sa výpočtovo obmedzení namiesto pamäťovo obmedzení.
Flexibilita nasadenia: Malé modely umožňujú inferenciu priamo na zariadení. Žiadna závislosť od cloudu. Žiadna sieťová latencia. Žiadne obavy o súkromie dát. Spracúvajte citlivé informácie výhradne na zariadeniach používateľov bez toho, aby ste ich kedykoľvek prenášali na servery.
Kompletná matica algoritmov
Platforma poskytuje komplexné pokrytie v troch dimenziách: algoritmy, backends a šírky bitov.
Základné operácie (415 primitív):
- 46 bitových operácií: logické hradlá, manipulácia, posuny, počítanie, vyhľadávanie
- 16 operácií s poľami: extrakcia, vkladanie, balenie, rozptyl, zber, vytváranie masiek
- 25 redukcií: logické AND/OR/XOR, aritmetický súčet/súčin, hlasovanie a konsenzus
- 17 metrík vzdialenosti: Hammingova, Jaccardova, Dice, Tanimoto, kosínusová, Manhattanská, Euklidovská
- 12 operácií prekladania: 2-smerné až 4-smerné prekladanie, Mortonove a Hilbertove krivky vypĺňajúce priestor
- 44 aritmetických operácií: sčítanie, odčítanie, násobenie, delenie, operácie s pevnou rádovou čiarkou
- 39 transformácií: Walshova-Hadamardova, FFT, DCT, NTT, vlnky (Haar, Daubechies, CDF97)
- 11 hašovacích funkcií: SHA-256, Blake3, xxHash, MinHash, SimHash, hašovanie citlivé na lokalitu
- 22 generátorov náhodných čísel: LFSR, Mersenne Twister, ChaCha20, Sobolove postupnosti
- 15 kvantizácií: symetrická, asymetrická, per-tenzor, per-kanál, výpočet mierky
- 30 binárnych matematických operácií: XNOR-popcount, ternárne kódovanie, aktualizácie váh, gradientové operácie
- 48 konverzií formátov: konverzie FP32/FP16/FP8/INT8/INT4/INT2 vo všetkých smeroch
- 42 operácií s pevnou rádovou čiarkou: aritmetika, transcendentálne funkcie, saturácia naprieč všetkými šírkami bitov
Zložené operácie (500 jadier):
Optimalizované jadrá kombinujúce primitívy pre bežné vzory. Varianty násobenia matíc (štandardné, transponované, blokované). Typy konvolúcií (2D, 3D, depthwise, grouped, dilated). Normalizácia (batch, layer, group, instance). Aktivačné funkcie (sign, hard tanh, po častiach lineárna). Mechanizmy pozornosti (self-attention, cross-attention, multi-head). Pooling (max, average, stochastic).
Sieťové vrstvy (191 vrstiev):
Kompletné stavebné bloky na vytváranie sietí. Husté vrstvy s binárnymi, ternárnymi a viacbitovými váhami. Konvolučné vrstvy so všetkými bežnými variantmi. Rekurentné vrstvy (LSTM, GRU s binárnymi hradlami). Vrstvy pozornosti (scaled dot-product, multi-head, relatívna pozícia). Normalizačné vrstvy so štatistikami dávky a naučenými parametrami. Reziduálne spojenia s prispôsobením rozmerov.
Algoritmy vysokej úrovne (674 algoritmov):
Kompletné metódy na trénovanie, inferenciu a optimalizáciu. Destilácia znalostí s postupným viacstupňovým zušľachťovaním. Evolučné objavovanie obmedzení pomocou genetického programovania. Vyhľadávanie neurónovej architektúry pre diskrétne siete. Odhadovače gradientov (straight-through, clipped, adaptive, momentum, hypernetwork). Optimalizátory (BinaryAdam, TernaryAdam, adaptívna kvantizácia). Distribuované trénovanie s agregáciou odolnou voči byzantským chybám.
Hĺbka implementácie backendu
Každý algoritmus existuje vo viacerých optimalizovaných variantoch pre každý backend. Nie generické implementácie. Kód špecifický pre hardvér, ktorý využíva každú architektonickú funkciu.
CPU SIMD: SSE2 poskytuje univerzálnu kompatibilitu x86-64 (každý procesor od roku 2001). AVX2 prináša 4-8× zrýchlenie na Haswell a novších (2013+). AVX-512 dosahuje 10-16× s maskovacími registrami na predikáciu a VPTERNLOG pre ľubovoľnú 3-vstupovú Booleovu funkciu. NEON prináša 3-4× zrýchlenie všetkým procesorom ARMv8 vrátane mobilných a Apple Silicon. SVE/SVE2 poskytuje kód nezávislý od dĺžky vektora, ktorý automaticky využíva širšie vektory na novšom hardvéri.
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:
- Deklaratívne API: Rust DSL s NetworkBuilder na definovanie modelov
- Infraštruktúra kompilátora: Optimalizačný pipeline založený na MLIR so štyrmi úrovňami IR
- Tréningový rámec: Šesť variantov STE, binárne optimalizátory, automatický výber bitovej šírky
- Generátory backendového kódu: C s intrinsics pre CPU, CUDA/HIP jadrá pre GPU, Verilog pre FPGA
- Nástroje na nasadenie: Export do ONNX, Core ML, TensorFlow Lite alebo samostatných binárok
Príklad pracovného postupu:
1. Definujte svoju sieť pomocou NetworkBuilder
2. Trénujte pomocou binárnych optimalizátorov s adaptívnym výberom bitovej šírky
3. Kompilujte pre cieľový hardvér s automatickým výberom backendu
4. Nasadenie ako optimalizovaná binárka alebo export do štandardného formátu
5. Spustite kdekoľvek: cloudové servery, edge zariadenia, prehliadače, FPGA
Jedna platforma. Jedna kódová základňa. Každý backend. Kompletná diskrétna AI.
Prestaňte žonglovať s desiatimi rámcami. Prestaňte prepisovať kód pre každý cieľ nasadenia. Prestaňte bojovať s kompatibilitou verzií. Postavte raz na Dweve Core a nasadzujte všade.
Dweve Core poháňa Dweve Loom, náš systém uvažovania založený na obmedzeniach, ktorý bude uvedený v roku 2026. Rámec implementuje kompletný zásobník 1 930 algoritmov na 6 backendoch s adaptívnou multi-bitovou kvantizáciou od binárnej po 8-bitovú. Vyvinul ho holandský inžiniersky tím počas troch rokov vývoja.