F16C
F16C agghiunci cunvirsioni x86 tra rapprisintazzioni a virgula mòbbili a menza pricisioni e a pricisioni sìngula. Furnisci astruzzioni di cunvirsioni, nun nu muturi ginirali d'aritmètica a menza pricisioni.
Chiḍḍu ca t'hà sapiri
F16C agghiunci cunvirsioni x86 tra rapprisintazzioni a virgula mòbbili a menza pricisioni e a pricisioni sìngula. Furnisci astruzzioni di cunvirsioni, nun nu muturi ginirali d'aritmètica a menza pricisioni.
Comu funziona
VCVTPH2PS espandi valuri a menza pricisioni 'n pricisioni sìngula; VCVTPS2PH cunverti valuri a pricisioni sìngula 'n menza pricisioni secunnu li controlli d'arritunnamentu di l'astruzzioni. Na rapprisintazzioni a 16 bit usa menu spazziu pi quatranu rispettu a una a 32 bit, ma havi n'intervallu e na pricisioni diffirenti. Lu cumpurtamentu dâ cunvirsioni pi valuri spiciali e l'arritunnamentu sèquinu li spicìfichi di l'astruzzioni.
Unni e' ùtili
Nu prugramma pò sarvari n'array granni a menza pricisioni, spànniri li valuri pi l'aritmètica e poi cunvèrtiri li risurtati pi sarvàrili. Si chistu aiuta dipenni dû costu dâ cunvirsioni, dû cumpurtamentu dâ cache e di l'arrori accittàbbili. Cunvirsioni cuntìnui ponnu cancillari li vantaggî di larghizza di banna dâ mimoria.
Comu cuntrollari lu supportu e l'abbilitazzioni
Cuntrolla CPUID.01H:ECX bit 29 e li requisiti dû statu OS pi AVX. Cunferma ca lu software addanna la cunvirsioni F16C mmeci d'un'estinzioni aritmètica FP16 cchiù ricenti. Manteni n'arritiru (fallback) suppurtatu pi prucissuri o guest ca nun la mòstranu.
Lu prugramma havi sia a cuntèniri na mplimintazzioni apprupriata sia a silizziunàrila a runtime. La nummarazzioni di l'hardware, lu statu dî riggistri abbilitatu dû SO e la basi cumpilata dû binariu sunnu cuntrolli siparati. Na màchina virtùali po ammustrari apposta menu funziunalitati dû sò host, e un container nun agghiunci struzzioni a la CPU host.
Zoccu la funziunalitati nun stabbilisci
F16C nun è AVX-512 FP16 o BF16, e nun signìfica la prisenza d'astruzzioni nativi d'addizzioni, murtipricazzioni o matrici a menza pricisioni. La prisenza di F16C nun pruva l'accuratizza nummèrica d'un mudellu doppu la quantizzazzioni o la cunvirsioni.
Cumpatibbilitati e pristazzioni nnâ pràtica
Misuredda lu caricu di travagghiu cumpletu cu dati rapprisintativi. Vettura cchiù larghi ponnu arridùciri lu nùmmaru di struzzioni lassannu lu tràfficu di mimoria, la sincrunizzazzioni o i costi di cunvirsioni nun canciati. La latenza dî struzzioni, lu throughput e lu cumpurtamentu d'energìa dipènninu dâ microarchitittura esatta e dî cunnizzioni upirativi.
Na lista di virìfica pràtica
- Riggistra lu mudellu esattu dû prucissuri o dâ piattafurma e li virsioni di l'applicazzioni, dû SO e dû runtime cuinvorti. Manteni la formulazzioni di l'erruri o dû requisitu riali.
- Cuntrolla lu rifirimentu dû prudutturi pi ddu mudellu esattu, poi spizziona la capacitati effittiva e lu statu abbilitatu nta l'ambienti unni lu prugramma gira.
- Cunfrunta ogni requisitu dû binariu o dû backend silizziunatu. Na funziunalitati cû nomu sìmili, un pseudònimu o n'etichetta ticnulòggica ginèrica nun abbàstanu.
- Cunferma ca l'applicazzioni hà silizziunatu la mplimintazzioni privista. Usa la sò diagnòstica ducumintata e un fallback suppurtatu quannu li requisiti nun sunnu suddisfatti.
- Fai un canciamentu suppurtatu a la vota e ripeti lu stissu caricu di travagghiu. Manteni dispunìbbili la cunfigurazzioni urigginali e lu pircorsu di ricùp ситуаazzioni.
Si la funziunalitati e' ndicata ma lu software nun la po usari
Accumenza cû cumpunenti esattu ca fallisci. Un database d'hardware discrivi la capacitati riggistrata; lu sistema upirativu o l'hypervisor ponnu ammustrari n'ambienti effittivu diffirenti. N'erruri di struzzioni illigali addanna puru n'indàggini supra la struzzioni ca fallisci pi daveru e supra la build binaria, picchì la curruzzioni o na struzzioni nun currilata e nun suppurtata ponnu fari un sìntumu sìmili.
Installa la virsioni di l'applicazzioni, dû driver o dû runtime suppurtata pâ piattafurma esatta, e usa la build di basi o di fallback ducumintata dû prudutturi si n'hai bisognu. N'aggiurnamentu dû software nun po criari na struzzioni ca manca nnô prucissuri. Li canciamenti di firmware e di pulìtica di sicurizza avìssiru a sèquiri la prucidura dû prudutturi dû sistema e un pianu di ricùpiru mmeci d'un ricittariu d'uttimizzazzioni ginèricu.
Funti e scanciu di st'esplicazzioni
Intel 64 and IA-32 Architectures Software Developer's Manual · Linux kernel: using XSTATE features in user space
Sti rifirimenti stabbilìscinu lu cumpurtamentu architittùnicu e li requisiti dû software. Nun virìficanu di manera ndipinnenti ogni valuri di funziunalitati nta na pàggina d'un mudellu hardware culligatu. Pû supportu dû mudellu, usa li provi dû prudutturi di dda pàggina e cuntrolla la cunfigurazzioni effittiva dû sistema. St'artìculu nun duna un benchmark, na cirtificazzioni o na data di rivisioni ndipinnenti.
Funti e virìfica
Titularità editoriali: Feex. Nudda data di rivisioni nnipinnenti è riggistrata. Comu facemu i ricerchi.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Li Vulumi 1 e 2 discrìvinu li famigghi di struzzioni muntuati e CPUID; lu Vulumi 3 discrivi statu, pagginazzioni, VMX e cuntrolli di prutizzioni. La ducumintazzioni d'architittura nun stabbilisci lu supportu pi un mudellu particulari.
- Linux kernel: using XSTATE features in user space · Statu vitturiali abbilitatu dû SO, statu dî tile abbilitatu dinamicamenti, requisiti dû signal stack e flussu di pirmissu AMX. Lu cumpurtamentu spicìficu di Linux nun e' na prumissa supra n'àutru SO.
Fu ùtili st'artìculu?
Un sì o un no abbasta. Scegghi un mutivu si voi, o junci na nota curta.
Grazzi. Chistu n'aiuta a megghiurari sta pàggina.