FMI agus an insamhlóir céanna i ngach áit
Níor cheart pearsantacht a fhorbairt ag an tsamhail
Ba chóir go mbeadh samhail insamhalta leadránach ar bhealach an-sonrach amháin: ionchur céanna, samhail chéanna, aschur céanna. Is cosúil go bhfuil sin soiléir go dtí go n-aistríonn an tsamhail ó stáisiún oibre go braisle, ó ríomhaire glúine go crua-earraí i lúb, ó thiomsaitheoir amháin go tiomsaitheoir eile, nó ó uirlis dhíoltóra go hoifig sábháilteachta nach bhfuil meas aici ar rince léirmhínitheach. Ansin bíonn difríochtaí beaga uimhriúla ina gcruinnithe. Bíonn cruinnithe ina scarbhileoga réitigh. Bíonn scarbhileoga réitigh ina reilig ina bhfaigheann tráthnónta maithe innealtóireachta bás.
Tá FMI ann chun malartú samhlacha agus comh-insamhalta a dhéanamh praiticiúil trasna uirlisí. Tugann an Comhéadan Samhail Fheidhmiúil (Functional Mock-up Interface) bealach caighdeánach d’fhoirne chun samhlacha a phacáistiú agus a rith in ionad cód comhtháthaithe leochaileach a iompar de láimh ó thimpeallacht insamhalta amháin go dtí an chéad cheann eile. Tá sin úsáideach cheana féin. Ach ní dhéanann comhéadan caighdeánach uimhríocht chinntitheach go huathoibríoch. Is minic a bhíonn sreafaí oibre traidisiúnta FMI ag brath ar iompar snámhphointe IEEE 754, leabharlanna ardáin, roghanna tiomsaitheora, ord forghníomhaithe, agus difríochtaí cúlbhrainn. Bíonn sin ceart go leor an chuid is mó den am. Ansin níl sé ceart go leor, agus is gnách go bhfaigheann duine éigin amach faoin difríocht agus spriocdháta aige agus aghaidh air a deir gur gheall an soláthar go mbeadh sé seo éasca.
Ionsaíonn Dweve FMI an chuid leadránach, chostasach: in-atáirgtheacht. Déanann an suíomh cur síos ar chur i bhfeidhm Rust FMI do Mhalartú Samhlacha agus Comh-insamhalta le huimhríocht sheasta-phointe chinntitheach, tógtha ar Numerus. Tá cruth an chur i bhfeidhm níos leithne ná taispeántas: spás oibre FMI il-chláir le hionadaíocht samhla, parsáil scéime, allmhairiú, easpórtáil, am rite, réiteoir, orkestráil, cuimhne, cúlbhrainn do LAP, GPU, FPGA, imeall agus forghníomhú dáilte, FFI, fuzzing, tagarmharcanna, doiciméid, agus tástálacha. Braitheann sé ar chláir Numerus le haghaidh uimhríocht sheasta-phointe agus dheachúil, móide an cruach Dweve coitianta le haghaidh insamhalta, logáil, láimhseáil lochtanna, iompar, teannsóirí, agus stóráil.
Ní hé an sprioc insamhalta a dhéanamh mistéireach. Is é an sprioc an FMU céanna a stopadh ó scéalta beagán difriúla a insint toisc gur dhúisigh sé ar mheaisín difriúil.
Tugann FMI an clúdach, is í an uimhríocht a scríobhann an seic fós
Is clúdach úsáideach é FMU. Iompraíonn sé tuairisc samhla, dénártha nó earraí foinse, acmhainní, athróga, stáit, cloig, spleáchais, agus go leor meiteashonraí le go mbeidh uirlis eile in ann an tsamhail a shuiteáil agus a chéimniú. Cuireann FMI 3.0 cloig níos saibhre, forghníomhú sceidealaithe, clóscríobh feabhsaithe athróg, agus innealra comh-insamhalta ar fáil. Tá foinse Dweve FMI eagraithe timpeall an chlúdaigh sin: fmi-schema a pharsálann agus a bhailíochtaíonn tuairiscí samhla, fmi-import a lódálann cartlanna FMU, fmi-export a thógann cartlanna, fmi-model a léiríonn athróga agus staid samhla, agus fmi-runtime a bhfuil úinéireacht aige ar shaolré, rochtain athróg, cloig, imeachtaí, díorthaigh, agus staid a shábháil nó a athchóiriú.
Tá an clúdach sin riachtanach, ach níl sé leordhóthanach. Cinneann an uimhríocht thíos fós an bhfuil rith in-atáirgthe. Deir na doiciméid ama rite go n-úsáideann uimhríocht sheasta-phointe Numerus Q31_32 le haghaidh ríomh chinntitheach. Ainmníonn meiteashonraí an spáis oibre Q31.32 mar an fhormáid sheasta réamhshocraithe, Dec64_6 mar an fhormáid dheachúil réamhshocraithe, agus Q16.16 le haghaidh ama. Labhraíonn an leathanach poiblí faoi phróifílí Q31.32, Q16.16, agus Dec64_6, agus MPFR á úsáid mar bhealach tagartha. Tugann sin conradh soiléir don tionscadal: ba cheart insamhalta fíorluachmhar a mhapáil isteach i bpróifílí uimhriúla cinntitheacha in ionad gach cúlbhrainn a fhágáil le seiftiú.
Seo pointe macántachta tábhachtach. D’fhéadfadh go nglacfadh APIanna atá dírithe ar FMI agus dromchlaí comhoiriúnachta le luachanna snámhphointe fós, nó go n-astróidís iad, toisc go mbíonn siad ag súil leo de réir an chaighdeáin agus na n-uirlisí atá ann cheana. Ní hé an t-éileamh is tábhachtaí ná íonacht amharclainne ag gach teorainn. Is é an t-éileamh is tábhachtaí ná go bhfuil an cosán cinntitheach lárnach tógtha timpeall ar phróifílí seasta-phointe Numerus agus ar bhailíochtú i gcoinne tagartha ardchruinnis nuair a bhíonn an chomparáid bríoch. Is féidir le hoiriúnóirí imeallacha teanga an domhain sheachtraigh a labhairt. Níor cheart go mbeadh an conradh istigh ina shraoth.
Is cinneadh samhla é an phróifíl uimhriúil
Ní suíomh draíochta amháin é seasta-phointe. Níl an brú céanna ar shamhail a dteastaíonn luachanna ama dlútha uaithi, ar shamhail a bhfuil raonta fisiciúla leathana aici, agus ar shamhail a thuairiscíonn cainníochtaí deachúlacha. Ní greamáin iad Q16.16, Q31.32, agus Dec64_6 do shleamhnán. Is conarthaí éagsúla iad maidir le raon, réiteach, ionadaíocht, agus áit a gceadaítear earráidí a bheith.
Seo áit a mbíonn foirne insamhalta ró-éadrom go minic. Caitheann siad le hiompar uimhriúil mar airí den uirlis seachas mar airí den tsamhail. Ansin athraíonn an uirlis, nó athraíonn an backend, nó leabaítear an tsamhail, agus go tobann bíonn an tseanbhoinn tuisceana ina hualach bailíochtaithe. Déanann Dweve FMI an phróifíl uimhriúil mar chuid den ailtireacht seachas mar aimsir chúlra. Níl sé sin chomh gléineach le taispeántas mór. Maith. Is annamh a mhíníonn taispeántais mhóra cé leis an teorainn shlánúcháin.
Insíonn an crate réitigh an scéal céanna. Nochtann sé tréithe córais ODE, RK4, RKF45, Euler, cumraíocht atá dírithe ar BDF, rialú céime oiriúnaitheach, brath imeachtaí, agus am réitigh chinntithigh. Is leis an runtime crate timthriall saoil FMU, modhanna imeachta agus ama leanúnaigh, rochtain ar athróga, díorthaigh ionchuir, díorthaigh threoracha agus chomhchuingeacha, taisceadh Jacobian, cloig, agus sruthú stáit. Níl aon cheann de sin úsáideach mura féidir muinín a bheith as an gciseal uimhriúil nuair a ghluaiseann sé trasna crua-earraí. Is féidir leis an réiteoir a bheith cliste. Is féidir leis an tsamhail a bheith galánta. Má theastaíonn trí réiteach ar an rith céanna, is troscán den chuid is mó an ghalántacht.
Is é comh-insamhalta an áit a n-éiríonn bréaga beaga costasach
Is leor obair FMU amháin cheana féin. Nuair a chúpláiltear roinnt FMUanna le chéile, is áit a n-éiríonn botúin uimhriúla agus oibríochtúla sóisialta. Cothaíonn samhail theirmeach samhail rialaithe, cothaíonn an tsamhail rialaithe samhail ghníomhaitheora, cothaíonn an tsamhail ghníomhaitheora samhail mheicniúil, agus tá súil ag gach duine nach bhfuil an t-ord céimeanna ag cruthú praiseach go ciúin. Teastaíonn bainistíocht naisc, ord forghníomhaithe, malartú sonraí, comhordú céimeanna, láimhseáil lúb ailgéabrach, agus bealach le rá níl nuair atá an ghraf mícheart ó chomh-insamhalta.
Tá fmi-orchestration sa bhfoinse don obair sin. Láimhseálann sé comh-insamhalta il-FMU, naisc, brath timthriall, ordú topolaíoch, sceidealú páirtíoch, brath agus réiteach lúb ailgéabrach, stair luacha, ord forghníomhaithe, am insamhalta, agus staitisticí ceolfhoireann. Tá fmi-cc ann do chumarsáid idir FMUanna cúpláilte agus fmi-dist do fhorghníomhú dáilte le comhordaitheoirí, clárú nód, teachtaireachtaí, iarratais céime, freagraí céime, agus luachanna stádais. Sin an cineál innealra a ndéanann daoine dearmad air nuair a deir siad gur sreangú aschur go hionchur é comhtháthú. Is sreangú é, sea. Is am é freisin, bainistíocht spleáchais, stát, teip, agus cruthúnas go ndearna an sreangú an méid a dúirt sé.
Cuireann an chomhshamhlú béim níos mó ar chinnteacht, ní níos lú. Má shleamhnaíonn FMU amháin beagán agus go dtéann an luach sin isteach i bhFMU eile, is féidir leis an neamhréir leathadh. Má athraíonn ord na forghníomhaithe trasna nód, is féidir leis an neamhréir fanacht i bhfolach go dtí céim níos déanaí. Má úsáideann backend amháin cosán matamaitice beagán difriúil, is féidir leis an neamhréir breathnú mar iompar samhla. Sin mar a chríochnaíonn foirne ag dífhabhtú fisice le nótaí cruinnithe. Níor cheart go mbeadh ar éinne é sin a dhéanamh mura raibh siad an-dona i saol roimhe seo.
Is roghanna imlonnaithe iad backends, ní fírinní nua
Scarann an crann foinse spriocanna forghníomhaithe ina crates backend: LAPU, GPU, FPGA, imeall, agus dáilte. Díríonn an backend imeall ar ghléasanna srianta, cuimhne theoranta, agus forchostas íseal. Labhraíonn an backend FPGA faoi uimhríocht phointe sheasta, aistrithe DMA, bainistíocht sruthán giotán, forghníomhú eithne, agus lúb crua-earraí. Comhordaíonn an crate dáilte nóid iolracha. Déanann an leathanach poiblí cur síos ar chosáin LAPU SIMD, GPU, FPGA, imeall, agus dáilte. Ní chiallaíonn sin go bhfuil gach sprioc chomh aibí céanna do gach ualach oibre. Ciallaíonn sé go gcaitheann an ailtireacht le rogha backend mar ábhar den chéad scoth.
Is é an prionsabal dearaidh ríthábhachtach ná gur cheart don imlonnaithe a athrú cá ritheann an tshamhail, ní cad a chiallaíonn an tshamhail. D'fhéadfadh cosán LAPU a bheith is éasca le haghaidh údaraithe agus fíoraithe. D'fhéadfadh cosán GPU a bheith ciallmhar d'ualaí oibre móra comhthreomhara. D'fhéadfadh cosán FPGA a bheith ag teastáil le haghaidh fíor-ama nó lúb crua-earraí. D'fhéadfadh cosán imeall a bheith ag teastáil in aice leis an meaisín. D'fhéadfadh forghníomhú dáilte a bheith ag teastáil do chórais mhóra chúpláilte. Is roghanna oibríochtúla iad sin. Níor cheart dóibh aitheantas uimhriúil nua a chruthú don tsamhail.
Seo freisin an áit a bhfuil tábhacht le bogearraí foinse oscailte. I sábháilteacht, fuinneamh, róbataic, feistí leighis, feithicleach, aeraspás, rialú tionsclaíoch, agus cúpla digiteach, ní féidir le héilimh in-atáirgtheachta maireachtáil i sleamhnáin díoltóra amháin.Caithfidh duine éigin iniúchadh a dhéanamh ar an gcur i bhfeidhm, leagan a shocrú, na tástálacha a rith, na cásanna teipe a léamh, agus cinneadh a dhéanamh an bhfuil an fhianaise maith go leor. Tugann cur i bhfeidhm FMI foinse oscailte bealach níos fearr d'fhoirne chuig an bhfianaise sin. Ní dheimhníonn sé rud ar bith go draíochtúil. Déanann sé an obair in-iniúchta, arb é an chéad chéim úsáideach é.
Ba cheart go mbeadh bailíochtú ina gheata, ní ina dheais
Ní bhaineann scéal bailíochtaithe Dweve FMI le rianta deasa amháin. Déanann an README agus an suíomh cur síos ar sheiceálacha tagartha MPFR, coibhéis tras-backend, athsheinm chinntitheach, tástálacha comhréireachta, fuzzing, agus teipeanna clóscríofa. Tá fmi-test, fmi-fuzz, fmi-bench, fmi-conformance, tástálacha maoine, úmacha fuzz, agus sruthú stáit sa bhfoinse. Sin an treo ceart. In infrastruchtúr insamhalta, níor cheart go mbeadh bailíochtú ina dheais ina bhfeiceann líne dhearg imníoch agus geallann duine éigin faire uirthi. Ba cheart go mbeadh sé ina gheata.
Tá roinnt codanna sa gheata. Caithfidh allmhairiú cartlann FMU agus modelDescription a pharsáil i gceart. Caithfidh bailíochtú scéime diúltú do shainmhínithe athróg neamhbhailí, spleáchais, cloig, agus tréithe. Teastaíonn oracle ó sheiceálacha uimhriúla nuair is cruinneas an t-éileamh. Teastaíonn an staid chéanna ó chomhionannas backend trasna spriocanna forghníomhaithe. Teastaíonn staid shábháilte agus logaí imeachtaí le haghaidh athsheinm chun an rith a atógáil. Teastaíonn earráidí clóscríofa ó theip, ní tuarascáil neamhréire mistéireach a sheolann an fhoireann ag cuardach trí logaí. Ba cheart go gcuirfeadh neamhréir bac ar chonair scaoilte go dtí go dtuigtear nó go nglactar go sainráite léi. Ní fhuaimeann sin cruálach ach amháin mura bhfuil an rogha eile tar éis bille a chur ort fós.
Cá háit a mbaineann sé seo leis an gcéad uair
Is iad na réimsí soiléire na cinn ina n-éiríonn botúin insamhalta ina botúin fhisiciúla: feithicleach, aeraspáis, rialú tionsclaíoch, feistí leighis, fuinneamh, róbataic, agus bonneagar. Ní éiríonn samhail choscáin, rialtóir caidéil, samhail eangaí, cill róbataice, líne mhonarchan, nó rialtóir HVAC níos sábháilte toisc go ndeir sleamhnán cúpla digiteach. Éiríonn sé níos sábháilte nuair a bhíonn an tsamhail, na hionchuir, an phróifíl uimhriúil, an backend, an leagan, agus an rian athsheinm rialaithe go leor le himscrúdú a dhéanamh.
Tá gné soláthair ann freisin, mar ar ndóigh tá. Má éilíonn gach backend scéal bailíochtaithe ar leith, éiríonn gach athrú crua-earraí ina chleachtadh beag athdheimhnithe. Más féidir an FMU céanna a chruthú uair amháin agus ansin é a rith ar an sprioc a oireann don tsriantán oibriúcháin, faigheann foirne saoirse gan ligean orthu go bhfuil bailíochtú saor in aisce. Cuireann an suíomh é seo mar chruthú uair amháin agus rith áit ar bith. Is beagán níos lú rómánsúil an t-aistriúchán innealtóireachta: laghdaigh líon na n-áiteanna inar féidir leis an tsamhail chéanna easaontú léi féin.
Tá sé sin ábhartha go háirithe san Eoraip. Ní hé amháin an áit a bhfuil an freastalaí an cheannasacht. Is é freisin an bhféadfar cás sábháilteachta a iniúchadh, a athdhéanamh, agus a bhogadh gan cead a iarraidh ar sholáthróir amháin. Ní réitíonn cur i bhfeidhm oscailte, uimhríocht chinntitheach, athsheinm in-atáirgthe, agus comhionannas backend polasaí leo féin. Déanann siad an chuid theicniúil níos lú ag brath ar bhosca dubh le foireann díolacháin ceangailte leis.
Cad atá le hathbhreithniú sula muinín a bheith agat as
Is é an chéad cheist athbhreithnithe cé acu dromchlaí FMI 3.0 a úsáideann do shamhail i ndáiríre. Ní ionann Malartú Samhla, Comhshamhlú, Forghníomhú Sceidealaithe, cloig, díorthaigh, imeachtaí, athróga dénártha, teaghráin, eagair, agus spleáchais agus an t-ualach oibre céanna. Cuireann FMU simplí agus insamhalta cúpláilte il-FMU brú difriúil ar an am rite agus ar an orquestrator.
Is í an dara ceist cén phróifíl uimhriúil a dhearbhaíonn an tsamhail agus cén fáth. Más é an freagra cibé réamhshocrú a d'oibrigh sa sampla, ní dearadh é sin. Ba cheart don phróifíl raon, réiteach, ionadaíocht ama, lamháltas, agus sprioc imlonnaithe a mheaitseáil. Ba cheart go mbeadh sé le feiceáil go leor gur féidir le hathbhreithneoir é a cheistiú gan an réiteoir iomlán a léamh.
Is í an tríú ceist cén fhianaise a thaistealaíonn le toradh. Cén leagan foinse? Cén leagan FMU? Cén modelDescription? Cén phróifíl Numerus? Cén backend? Cé na seiceálacha oracail? Cén staid athsheinm? Cé na tástálacha comhréireachta nó maoine? Má tá na freagraí sin scaipthe ar fud vicí agus cuimhne duine éigin, níl an insamhalta réidh fós le muinín a bheith as in sreabhadh oibre tromchúiseach.
An ceacht
Ní hé ceacht Dweve FMI go bhfuil caighdeáin insamhalta leadránach. Tá siad leadránach ar an mbealach díreach go bhfuil droichid leadránach nuair a fhanann siad ina seasamh. Tugann FMI an clúdach malartaithe. Tugann pointe seasta Numerus-bhunaithe an dearcadh uimhríochta cinntithigh. Déanann na crates am rite agus réiteora an tsamhail a chéimniú. Ceanglaíonn orquestration FMUanna gan ligean air go bhfuil uainiú fánach. Bogann backends forghníomhú go dtí na crua-earraí a oireann don phost. Déanann bailíochtú comhionannas ina gheata in ionad dóchais.
Sin é an obair. Ní éileamh mór go bhfuil uimhreacha réitithe go deo. Ní taispeántas lonrach ina mheaitseálann gach rud mar níor tástáladh ach cosán amháin. Córas insamhalta a bhfuil a fhios aige a fhormáidí, a dhearbhaíonn a chonradh uimhriúil, a ritheann ar fud backends, agus a theipeann go hard nuair a stopann an tsamhail chéanna a bheith mar an tsamhail chéanna.
Níor cheart go bhforbródh an tsamhail pearsantacht. Tá go leor acu sin againn i gcruinnithe.