Kötelező lesz a SAD4 utasítás támogatása a DirectX 12-ben

A Microsoft az elmúlt héten részletezte a DirectX 12 újításait, beleértve a leghasznosabb, ugyanakkor opcionális funkciókat is. Némi információ még erre a hétre is akadt, ugyanis megtudtuk, hogy a DirectX 11.1 API-val bevezetett SAD4 utasítással komoly tervei vannak a Microsoftnak, így az aktuális, még nem végleges specifikációban kötelezően előírják a támogatását.

Hirdetés

Maga a SAD (sum of absolute differences) utasítás alapvetően egy képfolyamok feldolgozásában sűrűn használt és igen egyszerű algoritmusra épül, aminek használatával meg lehet állapítani a különböző képtartalmak között a hasonlóságot. Az AMD vezette be az algoritmusnak a támogatását egyetlen utasításból még anno a Radeon HD 5000 sorozattal.

A Microsoft a SAD4 utasítást az Xbox One konzolon aktívan használja is, hiszen az új generációs Kinect szenzornál drámaian felgyorsítható vele a képfolyamokon a mozgás felismerése. Alapvető érdeke tehát a Microsoftnak, hogy ez az utasítás elterjedjen a PC-s grafikus vezérlőkön, így a DirectX 12 API-val kötelezően előírták a támogatását.

Mivel a gyártók ezt korábban nem tartották fontosnak, így első körben csak a GCN architektúrára épülő Radeonok esetében lesz natív támogatás, de a Microsoft engedélyezi az emulációt. Ez azt jelenti, hogy a DirectX 12-höz írt shader fordítóknak kezelnie kell a SAD4 funkciót, és ha nincs a hardverben rá direkt utasítás, akkor egy egyéni SAD algoritmust kell futtatni a grafikus vezérlő shader processzorain, amely ellátja ugyanezt a feladatot.

Ezzel a döntéssel a Microsoft eléri, hogy funkcionálisan minden hardveren üzemképes lesz a SAD4, vagyis a fejlesztőknek csak a DirectX 12-be épített szabványos funkciót kell támogatni, továbbá előbb-utóbb az újabb grafikus vezérlőkben ott lesz a natív támogatás is.

A fentiek mellett érdekesség, hogy a SAD4 funkció használható a játékokban is. Több fejlesztő is olyan analitikai élsimításon dolgozik, amelynek alapja egy olyan temporális eljárása, ami az aktuális képkocka számításánál figyelembe veszi az előző két-három képkockát is, és ennek segítségével stabilizálható a mozgás során keletkező zizegés. A számításnál a rendszer csupán elemzi a képkockák közötti különbséget, és ehhez a SAD4 funkció tökéletes alapot ad. Bár a célhardver egyértelműen az Xbox One, viszont a DirectX 12 követelményei mellett maga az analitikai élsimítás átmenthető PC-re is, aminek hála a fejlesztőknek nem szükséges alternatív élsimítást tervezni.

Azóta történt

Előzmények

Hirdetés