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.