Kera | Deterministic Systems Language and Compiler

Dweve Kera is a graph-native systems language and compiler for deterministic computation across heterogeneous hardware, with content-addressed .keg graphs.

Ponovno zgrajeno za vsakega proizvajalca

Pomoč pri kodiranju in operaterska pomoč. Metrike v demu so ilustrativne.

Terminal, iskanje, lint, testi, git in več.

Zapomni si vašo bazo kode in kontekst ekipe.

Specializirani agenti sodelujejo pri različnih zadevah.

Vsak korak je zabeležen s časovnimi žigi.

Pravilniki, preverjanja in testi se vedno izvajajo.

Preglejte razlike, zahtevajte spremembe, končna potrditev.

Ponovite katero koli sejo bit za bitom, ko je treba nekaj pregledati.

Preberi retry.ts, izsledil napako pri časovni omejitvi

Avtonomni agenti, ki pišejo kodo in hranijo dokaze

za obravnavo omrežnih časovnih omejitev, odzivov 5xx in pogojev, varnih za idempotentnost. Čista pomožna funkcija, v celoti enotno testirana.

Skupine algoritmov glede na vrsto podatkov

eno spremenjeno vozlišče ponovno ključira samo svoj prizadeti rodovnik

skromni enomestni dobički na nekaterih bitnih poteh

jasni srednji dobički pri seštevanjih in aktivacijah

veliki dobički na več matričnih in vektorskih poteh

celice z izenačenjem ostanejo vidne, niso izbrisane

množenje matrik vstopi z desetimi znanimi dejstvi

vsaka običajna stopnja zniževanja odvrže več kart

Jedro izvorno deluje na izvornem izvajanju Rust

Jedro na Kera razkrije plasti grafa in prevajalnika

izvorna steza ni narejena, da bi izgledala pokvarjena

z osnovo daje eno zgoščeno vrednost na osnovo

eno vozlišče odpove in se obnovi iz kontrolne točke

nerazglašen rob omrežja je med načrtovanjem blokiran

vsaka meja nosi izrecne zmogljivosti in upravljavski nadzor

Brez neposrednega dostopa do Kera v upravljanem Fabric

Isti semantični graf se oddaja znotraj katere koli meje, ki jo izberete.

trije vmesniki odstranjeni, dve regiji združeni, ena vrednost ohranjena na napravi

trak prihrankov šteje zagone, dodelitve, prenose in odstranjene bajte

vsak stolp nosi pečat objave z ogrodjem, brez izmišljene strojne opreme

oznake operacij izginejo na vsaki stopnji IR

oznake preživijo do ciljno specifične strojne kode

odprti spremljevalni projekti so zunaj komercialne meje

običajni pas kopira v šest pomnilniških prostorov

Kera veriga od grafa do stroja z enim lastnikom

brez generičnega prevajalnika v središču

se lastnosti prenašajo samo skozi dejansko licencirano stezo

kognicija, organizacije, znanje, računanje

AI operacije, usposabljanje, sklepanje, strežba

graf, načrtovalec, neposredna oddaja, izvajalnik

vsak načrt se povezuje nazaj na isto zgoščeno vrednost grafa

ista delovna kartica je nameščena z drugačnim načrtom za vsakega

suverenost je odvisna od celotne nastavitve, ne le od geografije

uporabnik zgoraj vidi dogovorjeno zmogljivost Fabric

upravljan Fabric na javnem Dweve Mesh; brez neposrednega dostopa do Kera

Fabric na javnem Mesh znotraj svoje pogodbene meje obdelave

nekateri koraki delujejo precej hitreje kot običajna pot

nekaj primerov je trenutno podobno hitrih

ena naloga gre po dolgi cik-cak poti skozi prevajalske škatle

pot Kera ostaja en jasen načrt od dela do stroja

programska oprema ne bi smela iti po ovinkih

spremenjen korak ustvari nov prstni odtis

zabeleženo je, kateri strojni načrt je bil izbran

paketi običajno potujejo skozi sedem prostorov

informacije ostanejo tam, kjer so potrebne

odstranite tisto, kar ni bilo nikoli potrebno

brez povezave lahko sistem zavrne dostop do omrežja

brez skritega dostopa, ki se pojavi pozneje

zunanja strojna oprema in operacijski sistemi so na robu

recept, ki prehaja skozi ljudi, izgubi svoj namen

kuhinja lahko še vedno sprejema smiselne odločitve

ne generična različica, popravljena na koncu

koraki, ki se ujemajo, so obravnavani kot eno

brez osnutkov, ki se uporabijo le enkrat

ustvarjalna naloga omogoča različne vzorce

brez nenamerne spremembe na drugem računalniku

površje aplikacije ostaja prijazno in preprosto

prerez razkrije načrt Kera in strojno delo spodaj

pri običajni uporabi ni nobenih krmilnikov Kera

prejmete hitrejše in stabilnejše delovanje

oranžne celice označujejo izmerjene zmage

obrobljene celice označujejo analizo v teku

preveri, katera dejstva so povzročila razliko

celice neznanih paketov ostanejo opisane, dokler pakiranje ni dokončano

vozlišče operacije Core vstopi v načrt Kera

kjer Kera ni prisoten, Core ostane domač v Rustu

zasejano ponavlja variacijo glede na seme

ustvarjalno omogoča nameravano variacijo

LLVM steza preprosto ni prisotna, ni prečrtana teatralno

V središču ni stopnje LLVM IR. Vsak korak ohranja semantiko grafa in operacij.

izbrana pot je zapisana v evidenco izvajanja

učinkoviti vozli gredo skozi vrata zmogljivosti

neprijavljena zmogljivost je zavrnjena s strani preverjevalnika

ločena območja z materializiranimi vmesnimi rezultati

vsaka vrstica nosi natančen čip testnega obsega, brez izmišljene strojne opreme

rezultati se razlikujejo glede na strojno opremo, objavljeni skupaj s preizkuševališčem

vsaka izdaja uporablja drugačno širino vektorja

novi zgoščeni vrednosti se širijo samo skozi prizadeto predniško vejo

nespremenjeni podgrafi ohranijo svojo identiteto

žeton prečka gostiteljski, napravni in oddaljeni prostor

načrtovalec obdrži vrednost tam, kamor sodi

splošna življenjska obdobja brez konteksta operacije

življenjska obdobja, oblikovana glede na kontekst grafa

razvijanje zanke, širina vektorja in razlitja, izbrani iz operacije

preveri, zgradi, pregledaj, načrtuj, zaženi, preveri

pregledovalnik grafov prikazuje tipe in učinke

ni prikazanega izmišljenega izpisa meritev

vsako polje napaja odločitev načrtovalnika

določi velikost medpomnilnikov in širino vektorja

postavi vrednost na gostitelja ali napravo

omeji življenjsko dobo in ponovno uporabo

skupni vzrok je ohranjena semantična informacija

Kera ohranja operacije, učinke, lastništvo in premikanje vidne od izvornega grafa do izvajanja na cilju. Preberite arhitekturo, preglejte graf IR ali nam prinesite produkcijsko pot, ki je že bila optimizirana skozi LLVM.

Neposredno računanje. Graf ostane program.

Ring allreduce, obnovitev kontrolnih točk

x86-64 (SSE2/AVX2/AVX-512), ARM64 (NEON), RISC-V (Vector)

Kera je statično tipiziran sistemski jezik z grafovim, vsebinsko naslovljenim IR. Prevaja programe v .keg datoteke, usmerjene aciklične grafe operacij, in jih izvaja na CPU, GPU, FPGA in WASM. Kera uporablja lastno generiranje kode za x86-64, ARM64 in RISC-V namesto LLVM, z dodeljevanjem registrov in izbiro SIMD jeder. Stranski učinki so sledeni, lastništvo v slogu Rust pa pokriva gostiteljski, napravni, pripeti in enotni pomnilnik. Projekt je Rust delovni prostor s porazdeljenim izvajanjem, varnostjo na podlagi zmogljivosti in orodji LSP.

Prinesite operacijo, oblike, cilj, zastavice in zahteve za determinizem, ki jih uporabljate v produkciji. Primerjali bomo ustvarjeno pot in pokazali, kje ohranjanje grafa spremeni rezultat.

Kera združuje grafov sistemski jezik, vsebinsko naslovljen IR, prevajalnik, JIT in heterogen izvajalni sistem. Ohranja tipe, učinke, lastništvo, podatkovni tok, pomnilniške prostore in politiko izvajanja vidne, hkrati pa pripravlja načrte, specifične za cilj, za podprte poti CPU, GPU, FPGA in WebAssembly. LLVM ni v središču prevajalne verige.

Kera se ceni posebej za licencirane namestitve. Pogovorite se z nami o portfelju ciljev, izoliranem delovanju in morebitnih ločeno izbranih pravicah do izvorne kode, pregleda ali prenosa tehnologije.

Računanje ohrani svojo identiteto do stroja.

Izvorna strojna koda prek prilagojenega JIT prevajalnika

Dweve AI sklepanje in simulacijske obremenitve

Programski jezik za dosledno, hitro računanje

Programska oprema pogosto prehaja skozi toliko prevajalnih plasti, da računalnik ne vidi več naloge kot celote. Kera ohranja izračun organiziran kot en graf, nato pripravi načrt izvajanja za stroj, ki delo opravlja. To lahko odstrani nepotrebne korake, zmanjša premikanje in pusti jasnejši zapis tega, kar se je dejansko izvedlo.

Dweve Kera je grafno naravnan sistemski jezik in prevajalnik za deterministično računanje na heterogeni strojni opremi. Njegova statično tipizirana, vsebinsko naslovljena vmesna predstavitev ohranja operacijo vidno skozi načrtovanje, nato pa izdaja izvajanje za CPU, GPU, FPGA in WebAssembly. Graf ostaja program.

Splošnonamenski prevajalnik mora služiti vsem vrstam programske opreme. Njegova širina omejuje, kako globoko lahko razume specializirano operacijo, ko jo je čelni del že znižal v zanke, kazalce in generično aritmetiko, in nobena poznejša stopnja ne more obnoviti tega, kar je to znižanje odstranilo.

Identiteta operacije, algoritmi, namen pakiranja, pričakovane oblike, determinizem in lastništvo pomnilnika se lahko razpršijo med orodji pred končno optimizacijo. Cena so vse uporabne izbire, ki postanejo nemogoče, ko računanje pozabi, kaj je bilo.

Pričakovane oblike tenzorjev in vektorjev izginejo.

Namen akumulatorja in pakiranja je izgubljen.

Pravila za pomnilnik gostitelja in naprave odpadejo.

je to, da si zapomnimo, čemu so ukazi namenjeni

Kera ohranja ta dejstva pritrjena na operacijo.

Kera predstavlja računanje kot tipiziran graf. Operacija ostane operacija, namesto da bi prezgodaj postala anonimna koda na nizki ravni. Njeni vhodi, izhodi, oblike, učinki, lastništvo, pomnilniški prostori in politika izvajanja ostanejo pritrjeni nanjo.