FMI 3 Simulation Runtime in Rust | Dweve FMI

Dweve FMI is an Apache-2.0 FMI 3 runtime in Rust for Model Exchange, Co-Simulation and Scheduled Execution. Publishing in the tenth release round.

Dweve FMI abordează derivarea platformei în simulare. Profilele în virgulă fixă și verificările backend fac diferențele vizibile înainte ca acestea să ajungă într-un caz de siguranță.

Bibliotecă de aritmetică în virgulă fixă care asigură determinismul FMI.

Infrastructură de probe criptografice pentru raționamentul AI.

Rulează oscilatorul amortizat pe două ținte acceptate și compară rezultatele. Verificările de referință expun orice divergență înainte ca aceasta să intre într-un caz de siguranță.

În interiorul unei granițe pe care o alegi

Două întrebări decid achiziția: unde rulează și cine controlează dovezile. Dweve FMI rulează pe hardware-ul pe care îl deții deja, la sediu sau într-o regiune europeană, în timp ce modelul și înregistrarea de validare rămân în interiorul unei granițe pe care o alegi.

O afirmație de siguranță are nevoie de mai mult decât o promisiune. Revizuiește contractul de rezultate, matricea de ținte acceptate și metoda de validare bazată pe MPFR; apoi rulează același exemplu pe două mașini și compară rezultatul înainte de a decide unde se potrivește FMI.

Fără timp pierdut cu reconcilierea rezultatelor

O singură înregistrare de siguranță declarată

Motivul pentru care contează este operațional, nu tehnic. Comparând aceeași simulare sub un singur contract declarat pe fiecare mașină, vezi unde diferă o țintă înainte de a închide cazul de siguranță. Echipele nu mai trebuie să reconcilieze diferențele în tăcere. Munca rulează pe hardware-ul pe care îl deții deja, iar o mutare pe echipament nou primește o cale explicită de validare.

Un singur furnizor, o singură foaie de parcurs, un singur preț pe care nu îl stabilești tu.

Un cip sau o regiune nouă repornește validarea pe întreg portofoliul.

Echipele se ceartă pe a cui mașină a produs rezultatul corect.

Fiecare platformă are nevoie de propriul caz de siguranță, deoarece numerele pot diferi.

Argumentul pentru schimbare este cel mai ușor de văzut prezentat ca o comparație. Pe de o parte, simulare care variază în funcție de platformă: un caz de siguranță re-validat pentru fiecare mașină, echipe care reconciliază numere care ar trebui să se potrivească deja, și o re-validare de fiecare dată când hardware-ul se schimbă. Pe de altă parte, rezultate comparate sub un singur contract declarat, astfel încât dovezile să arate unde diferă o implementare. Diferența este operațională, nu tehnică.

Elimină runtime-ul; modelul și dovezile rămân

O singură înregistrare de siguranță reutilizabilă

Un model de simulare ar trebui să facă vizibilă orice diferență dependentă de hardware. Dweve FMI definește un singur contract de rezultate pe țintele acceptate, verifică fiecare backend împotriva unui oracol MPFR și permite ca o singură înregistrare de validare să călătorească cu modelul.

Este firesc să te întrebi dacă așa ceva trebuie să te preocupe. Nu trebuie. Inginerii îl rulează în fundal, unde compară simulările de siguranță între mașini și fac diferențele vizibile.

Un singur raport de validare însoțește modelul

Verificările bazate pe MPFR detectează divergențele înainte de utilizare

Nu trebuie să înțelegi cum funcționează ca să te bucuri de ceea ce face. Gândește-te la apă curată sau la drumuri bune. Nu vezi niciodată munca, dar ziua ta este mai bună pentru că cineva a făcut-o bine. Iată patru motive simple pentru care contează.

Iată esența, prezentată simplu. Același test de siguranță rulează pe două calculatoare diferite. Pe calculatoare obișnuite, cele două răspunsuri pot diferi ușor. Cu aceasta, comparația face vizibilă orice diferență. Comută și urmărește ce se schimbă. Acea comparație este tot scopul.

Roboți care lucrează în siguranță lângă oameni.

Putere constantă, testată înainte de instalare.

Verificate cu atenție înainte de a ajunge la pacient.

Testate de mii de ori pe computer mai întâi.

Nu vei folosi niciodată acest lucru, dar folosești lucrurile pe care le ajută să fie sigure în fiecare zi. O mașină, o pompă medicală, energia din casa ta, mașinile dintr-o fabrică. Fiecare este testat pe computer înainte de a fi construit, iar aceasta este partea care face vizibile diferențele dintre platformele țintă. Atinge o imagine pentru a vedea de ce contează pentru fiecare.

Un ajutor atent pentru testele de siguranță

Nu vei folosi niciodată acest lucru personal. Dar este un lucru mic și atent care ajută la menținerea siguranței mașinilor, avioanelor și echipamentelor medicale. Iată întreaga idee, pas cu pas, cu un exemplu din viața de zi cu zi pentru fiecare.

Un inginer de simulare creează și rulează un FMU pe stația sa de lucru. Același FMU poate fi comparat pe un cluster pentru baleierea de parametri. Poate fi folosit și pe un adăpost FPGA pentru scenarii hardware în buclă în care bugetul de latență este strict. Contractul de redare se menține în toate cele trei.

Scris în Rust pe baza aritmetică Numerus, FMI utilizează căi în virgulă fixă cu verificări de referință MPFR și acceptă Model Exchange, Co-Simulation și Scheduled Execution pe cinci backend-uri.

Virgulă mobilă înlocuită cu virgulă fixă

FMI tradițional poate varia în funcție de platformă, deoarece se bazează pe virgulă mobilă. Dweve FMI utilizează o cale aritmetică în virgulă fixă cu verificări de referință MPFR. Modelul de simulare și cazul de siguranță rămân explicite, în timp ce același arhivă FMU poate fi comparată pe stație de lucru, cluster și FPGA. Alegerea de implementare este operațională, nu numerică.

Masă și energie chimică, co-simulare PLC.

Cinematică, traiectorie, fuziune de senzori.

Convertoare de putere, integrare regenerabile.

Dinamica pompelor și comportamentul dispozitivelor.

Validarea legilor de control, pilot în buclă.

Dweve FMI deservește domenii în care rezultatele simulării informează proiectarea și deciziile. Automotive, aerospațial, dispozitive medicale, energie, robotică, control industrial și gemeni digitali au nevoie de dovezi că rezultatele simulării sunt reproductibile, trasabile și controlabile pe fiecare platformă țintă.

Aritmetică în virgulă fixă corect rotunjită

Dweve FMI se integrează cu instrumentele existente prin import și export FMU, orchestrare multi-model și punte pentru gemeni digitali. Importați FMU-uri din orice instrument compatibil FMI 3.0, cu conversie automată de la virgulă mobilă la virgulă fixă. Exportați FMU-uri pentru instrumentele din aval care necesită virgulă mobilă.

Depășirea toleranței oprește rularea cu o eroare tipizată și ecuația numită.

O rulare înregistrată se reproduce din jurnalul de evenimente prin puntea Twin.

Același FMU pe CPU, GPU, FPGA și edge. Vectorii de ieșire sunt comparați.

Operațiile cu virgulă fixă sunt verificate față de o referință MPFR.

Verificările numerice folosesc etajul aritmetic Numerus și o referință MPFR. Comparația multi-backend rulează același FMU pe fiecare țintă și înregistrează orice diferență de ieșire. Redarea deterministă reconstruiește o rulare înregistrată din jurnalul de evenimente, iar modurile de eșec sunt zgomotoase, nu tăcute.

Același nucleu determinist rulează pe CPU-ul stației de lucru, GPU, hardware FPGA, un dispozitiv edge încorporat și noduri distribuite. Rezultatele pot fi comparate conform contractului declarat, astfel încât alegerea implementării este operațională, nu numerică.

Adevărul de bază MPFR, folosit doar pentru verificare.

6 cifre zecimale, scenarii bancare și de facturare.

32 biți de fracție, profil implicit, precizie completă.

16 biți de fracție, intervale înguste, prietenos cu bateria.

Q31.32 acoperă majoritatea nevoilor de simulare. Q16.16 se potrivește țintelor încorporate și edge. Dec64_6 acoperă contabilitatea zecimală specifică domeniului. Toate cele trei se bazează pe baza aritmetică Numerus, unde fiecare operație este rotunjită corect și verificată față de biblioteca matematică de referință MPFR.

Un cip sau un cloud nou înseamnă revalidarea întregului portofoliu.

O funcție trigonometrică dintr-o bibliotecă poate diferi ușor față de alta.

Optimizarea compilatorului schimbă ordinea operațiilor în virgulă mobilă; rezultatele se modifică.

Stație de lucru, CI, certificare: comparați platformele țintă și înregistrați diferențele în dosarul de siguranță.

Interfața Functional Mock-up este standardul din industrie pentru schimbul de modele și co-simulare. Este folosită în domenii critice pentru siguranță, unde rezultatele simulării influențează deciziile de proiectare, dosarele de siguranță și depunerile de reglementare. Implementările tradiționale FMI se bazează adesea pe aritmetica în virgulă mobilă IEEE 754, deci diferențele dintre platforme trebuie verificate.

Aceeași simulare nu ar trebui să devieze

Dweve FMI implementează standardul FMI pentru Model Exchange, Co-Simulation și Scheduled Execution, construit în Rust cu aritmetică deterministă în virgulă fixă. Calculele cu valori reale urmează calea configurată în virgulă fixă. Rezultatele pot fi comparate pe CPU, GPU, FPGA, edge și platforme distribuite, cu MPFR folosit ca referință matematică acolo unde este cazul. Trei profiluri în virgulă fixă acoperă ținte de inginerie de la dispozitive încorporate până la baleierea parametrilor pe GPU, fără a modifica modelul de simulare.