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 affronta il drift della piattaforma nella simulazione. I profili a virgola fissa e i controlli di backend rendono visibili le differenze prima che raggiungano un safety case.
Libreria di aritmetica a virgola fissa che alimenta la determinismo FMI.
Motore di recupero binario deterministico.
Infrastruttura di prova crittografica per il ragionamento dell'IA.
Esegui l'oscillatore smorzato su due target supportati e confronta gli output. I controlli di riferimento rendono visibile qualsiasi divergenza prima che entri in un safety case.
Due domande decidono l'approvvigionamento: dove gira e chi controlla le prove. Dweve FMI gira su hardware che già possiedi, on premise o in una regione europea, mentre il modello e il record di validazione restano dentro un confine che scegli tu.
Una dichiarazione di sicurezza richiede più di una promessa. Esamina il contratto dei risultati, la matrice dei target supportati e il metodo di validazione basato su MPFR; poi esegui lo stesso esempio su due macchine e confronta l'output prima di decidere dove inserire FMI.
Nessun tempo perso a riconciliare i risultati
Un unico registro di sicurezza dichiarato
Il motivo per cui importa è operativo, non tecnico. Confrontando la stessa simulazione sotto un unico contratto dichiarato su ciascuna macchina, vedi dove un target differisce prima di chiudere il caso di sicurezza. I team non devono più riconciliare le differenze in silenzio. Il lavoro gira sull'hardware che già possiedi, e un passaggio a nuove attrezzature ottiene un percorso di validazione esplicito.
Un fornitore, una roadmap, un prezzo che non decidi tu.
Un nuovo chip o una nuova regione fa ripartire la validazione su tutto il portafoglio.
I team discutono su quale macchina abbia prodotto il risultato corretto.
Ogni piattaforma richiede il proprio caso di sicurezza perché i numeri possono differire.
Il caso per il passaggio è più facile da vedere presentato come confronto. Da un lato, una simulazione che varia per piattaforma: un caso di sicurezza ri-validato per ogni macchina, team che riconciliano numeri che dovrebbero già corrispondere, e una ri-validazione ogni volta che l'hardware cambia. Dall'altro, risultati confrontati sotto un unico contratto dichiarato, così le prove mostrano dove una distribuzione differisce. La differenza è operativa, non tecnica.
Rimuovi il runtime; modello ed evidenze restano
Un modello di simulazione dovrebbe rendere visibile qualsiasi differenza dipendente dall'hardware. Dweve FMI definisce un unico contratto dei risultati su tutti i target supportati, verifica ogni backend contro un oracolo MPFR e consente a un unico registro di validazione di viaggiare con il modello.
Il risultato segue il contratto dichiarato
No, lo gestiscono gli ingegneri in background
È giusto chiedersi se una cosa del genere spetti a te. Non è così. La gestiscono gli ingegneri in background, dove confronta le simulazioni di sicurezza tra le macchine e rende visibili le differenze.
Un unico record di validazione segue il modello
I controlli basati su MPFR rilevano la divergenza prima dell'uso
Non devi capire come funziona per godere di ciò che fa. Pensalo come all'acqua pulita o alle buone strade. Non vedi mai il lavoro, ma la tua giornata è migliore perché qualcuno lo ha fatto bene. Ecco quattro semplici motivi per cui conta.
Ecco il cuore della cosa, mostrato in modo semplice. Lo stesso test di sicurezza gira su due computer diversi. Su computer normali le due risposte possono differire di pochissimo. Con questo, il confronto rende visibile qualsiasi differenza. Aziona l'interruttore e guarda cosa cambia. Quel confronto è il punto centrale.
Robot che lavorano in sicurezza accanto alle persone.
Alimentazione stabile, testata prima dell'installazione.
Controllati attentamente prima di arrivare a un paziente.
Testati migliaia di volte prima su un computer.
Non lo userai mai, ma usi ogni giorno le cose che aiuta a proteggere. Un'auto, una pompa medica, l'energia in casa tua, le macchine in una fabbrica. Ognuna viene testata su un computer prima di essere costruita, e questa è la parte che rende visibili le differenze tra le piattaforme di destinazione. Tocca un'immagine per vedere perché è importante per ciascuna.
Un assistente attento per i test di sicurezza
Non lo userai mai direttamente. Ma è una piccola cosa attenta che aiuta a mantenere al sicuro auto, aerei e macchine mediche. Ecco tutta l'idea, un semplice passo alla volta, con un esempio quotidiano per ciascuno.
Un ingegnere di simulazione crea ed esegue un FMU sulla propria workstation. Lo stesso FMU può essere confrontato su un cluster per spazzamenti dei parametri. Può anche essere usato su un riparo FPGA per scenari hardware-in-the-loop dove il budget di latenza è stretto. Il contratto di riproduzione vale in tutti e tre i casi.
Scritto in Rust sulla base aritmetica Numerus, FMI utilizza percorsi a virgola fissa con controlli di riferimento MPFR e supporta Model Exchange, Co-Simulation e Scheduled Execution su cinque backend.
Virgola mobile sostituita con virgola fissa
Il FMI tradizionale può variare per piattaforma perché si basa sulla virgola mobile. Dweve FMI utilizza un percorso aritmetico a virgola fissa con controlli di riferimento MPFR. Il modello di simulazione e il caso di sicurezza rimangono espliciti, mentre lo stesso archivio FMU può essere confrontato su workstation, cluster e FPGA. La scelta di distribuzione è operativa, non numerica.
Mantieni il modello e il caso di sicurezza
Massa ed energia chimica, co-simulazione PLC.
Cinematica, traiettoria, fusione sensori.
Convertitori di potenza, integrazione delle rinnovabili.
Dinamica delle pompe e comportamento dei dispositivi.
Validazione della legge di controllo, pilota nel ciclo.
Motore, trasmissione, freno, sospensioni.
Dweve FMI serve domini in cui i risultati della simulazione informano progettazione e decisioni. Automotive, aerospaziale, dispositivi medici, energia, robotica, controllo industriale e gemelli digitali richiedono tutti prove che gli output di simulazione siano riproducibili, tracciabili e controllabili per piattaforma di destinazione.
Aritmetica a virgola fissa arrotondata correttamente
Dweve FMI si integra con le toolchain esistenti tramite importazione ed esportazione di FMU, orchestrazione multi-modello e bridging di digital twin. Importa FMU da qualsiasi tool compatibile con FMI 3.0 con conversione automatica da float a fixed. Esporta FMU per tool a valle che richiedono virgola mobile.
Il superamento della tolleranza interrompe l'esecuzione con un errore tipizzato e l'equazione nominata.
Un'esecuzione registrata viene riprodotta dal suo log eventi tramite il ponte Twin.
Stessa FMU su CPU, GPU, FPGA e edge. Vettori di output confrontati.
Operazioni in virgola fissa verificate rispetto a un riferimento MPFR.
I controlli numerici utilizzano il piano aritmetico Numerus e un riferimento MPFR. Il confronto cross-backend esegue la stessa FMU su ogni target e registra qualsiasi differenza di output. La riproduzione deterministica ricostruisce un'esecuzione registrata dal suo log eventi e le modalità di errore sono rumorose piuttosto che silenziose.
Lo stesso kernel deterministico esegue su CPU workstation, GPU, hardware FPGA, un dispositivo edge embedded e nodi distribuiti. I risultati possono essere confrontati secondo il contratto dichiarato, quindi la scelta di distribuzione è operativa, non numerica.
Ground truth MPFR, usato solo per la verifica.
6 cifre decimali, scenari bancari e di fatturazione.
32 bit frazionari, profilo predefinito, piena precisione.
16 bit frazionari, intervalli ristretti, efficiente per la batteria.
Q31.32 copre la maggior parte delle esigenze di simulazione. Q16.16 si adatta a target embedded ed edge. Dec64_6 copre la contabilità decimale specifica del dominio. Tutti e tre si basano sulla base aritmetica Numerus, dove ogni operazione è arrotondata correttamente e verificata rispetto alla libreria di riferimento matematico MPFR.
Un nuovo chip o cloud significa rivalidare l'intero portafoglio.
Una funzione trigonometrica in una libreria può differire leggermente da un'altra.
L'ottimizzazione del compilatore cambia l'ordine dei float; i risultati si spostano.
Workstation, CI, certificazione: confronta le piattaforme target e registra le differenze nel safety case.
L'Interfaccia Functional Mock-up è lo standard di settore per lo scambio di modelli e la co-simulazione. Viene utilizzata in domini critici per la sicurezza dove i risultati della simulazione informano le decisioni di progettazione, i safety case e le presentazioni regolatorie. Le implementazioni FMI tradizionali spesso si basano sull'aritmetica a virgola mobile IEEE 754, quindi le differenze tra piattaforme devono essere verificate.
La stessa simulazione non dovrebbe deviare
Dweve FMI implementa lo standard FMI per Model Exchange, Co-Simulazione ed Esecuzione Programmata, costruito in Rust con aritmetica deterministica a virgola fissa. I calcoli a valori reali seguono il percorso a virgola fissa configurato. I risultati possono essere confrontati tra target CPU, GPU, FPGA, edge e distribuiti, con MPFR usato come riferimento matematico dove applicabile. Tre profili a virgola fissa coprono i target ingegneristici dai dispositivi embedded agli sweep di parametri GPU senza modificare il modello di simulazione.