Intel Binary Optimization Tool: hogyan hozza ki a legtöbbet a játékokból és a referenciaértékekből

  • Az Intel Binary Optimization Tool optimalizálja a már lefordított bináris fájlokat az eredeti .exe fájl érintése nélkül, átszervezi az utasításokat és javítja a vektorizálást.
  • Az eszköz a HWPGO-ra és az Intel laboratóriumaiban generált profilokra támaszkodik, átlagosan közel 8%-os, játékokban pedig 20% ​​feletti értékeket ér el.
  • Jelenlegi hatóköre korlátozott: kevés támogatott játék, kizárólag az Arrow Lake Refresh-ben elérhető, és problémák vannak a csalás elleni védelemmel és a Geekbenchhez hasonló benchmarkokkal.
  • Ha a kompatibilitása bővül, és az átláthatósági aggályok megoldódnak, akkor az Intel teljesítménystratégiájának kulcsfontosságú pillére lehet.

Intel bináris optimalizáló eszköz

Az új Intel Core Ultra 200S Plus processzorok, az Arrow Lake Refresh érkezése nem csupán GHz-eket és magokat kínál. Emellett egy egészen különleges szoftverrel is rendelkezik: a Intel bináris optimalizáló eszköz, vagy BOT/IBOT, egy olyan technológia, amelyet a valós teljesítmény további javítására terveztek, különösen a szerény GPU-kkal rendelkező játékok és igényes munkaterheléseket, anélkül, hogy a fejlesztőknek egyetlen sornyi kódhoz is hozzá kellene nyúlniuk.

Ez a megközelítés azért érdekes, mert arra összpontosít, hogy a bináris fájlok hogyan futnak a CPU-n, nem csak a chip nyers erejére. A programok újrafordítása vagy a játékok foltozása helyett az Intel egy olyan réteget javasol, amely... a már lefordított kód dinamikus optimalizálása Ez a technológia a végrehajtható fájl és a processzor között működik, átszervezi az utasításokat és jobban kihasználja a belső mikroarchitektúrát. Mindez egy nagyon érdekes vitát nyit meg: vajon továbbra is „tisztességes”-e összehasonlítani a processzorokat, ha az egyik ilyen agresszív támogatást nyújt?

Mi is pontosan az Intel Binary Optimization Tool, és miben különbözik más optimalizáló eszközöktől?

Az Intel Binary Optimization Tool lényegében... egy intelligens fordítási és optimalizálási réteg, amelyet a már lefordított bináris fájlokra alkalmaznakNem fordítja újra, nem dekompilálja vissza és nem módosítja a játék vagy alkalmazás eredeti futtatható fájlját, de megváltoztatja a bináris fájlok CPU-ellátásának módját, hogy az hatékonyabban működjön.

Az ötlet egy évek óta fennálló alapvető problémából fakad: sok játékot és programot a következők szem előtt tartásával fejlesztenek: régebbi architektúrák, konzolok vagy általános CPU-kAz eredmény az, hogy amikor modern hardvereken, például az Arrow Lake Refresh-en futtatjuk őket, a CPU nincs teljesen kihasználva. Hatékonytalanságok, elágazás-előrejelzési hibák, gyenge gyorsítótár-használat, vagy egyszerűen a vektorizáció hiánya jelentkezik ott, ahol az jelen lehetne.

A hagyományos fordítóprogram-optimalizálások vagy fejlesztői javítások helyett a BOT azt javasolja, hogy az Intel saját laboratóriumaiban... Elemezze ezeket a munkaterheléseket mikroarchitektúra szinten és optimalizált verziót generál a kódból, de anélkül, hogy hozzányúlna a lemezen található .exe fájlhoz.

A márka szoftverökoszisztémájában a BOT olyan eszközökhöz csatlakozik, mint az Intel Application Optimizer (APO) és a teljesítménycsomag egyéb összetevői. Míg az APO elsősorban a következőkre összpontosít: mag- és szálkiosztás és interakció az ütemezővel Az operációs rendszertől kezdve a BOT még lejjebb hat, a CPU-ban végrehajtott utasítások folyamatában, ami azt eredményezi, hogy a két rendszer kiegészíti egymást az átfedés helyett.

Az Intel BOT belső működése

Az Intel BOT belső működése: HWPGO, mikroarchitektúra és bináris profilok

Az Intel BOT mögött álló technikai motor a következő megközelítésen alapul: Hardveralapú profilvezérelt optimalizálás (HWPGO)Egyszerűen fogalmazva, az Intel elemzi, hogyan viselkednek a bináris fájlok az architektúráján futva, felismeri a szűk keresztmetszeteket, és ezen információk alapján optimalizált verziót generál a gépi kódból.

Az elemzés során részletesen figyelik az olyan dolgokat, mint az elágazás-előrejelzési hibák, a folyamatbuborékok, a gyorsítótár-késleltetések és a rossz előhívási használat. Amikor nem hatékony mintákat azonosítanak, a rendszer egy korrekciós profil, amely átszervezi az utasításokat hogy minimalizáljuk ezeket a problémákat. A cél nem a kevesebb munka elvégzése vagy a műveletek „kihagyása”, hanem az, hogy ugyanannyi munkát végezzünk el úgy, hogy a CPU sokkal magasabb effektív IPC-t tudjon fenntartani.

Egy kulcsfontosságú szempont, hogy ez a teljes profilalkotási folyamat nem a számítógépen, hanem az Intel laboratóriumaiban zajlik. A link utáni optimalizálási technikák segítségével a vállalat generál átalakított bináris kódok jobb utasítássűrűséggelEzeket a profilokat kifejezetten a legújabb chipek mikroarchitektúráihoz tervezték. Ezután a teljesítménycsomag részeként terjesztik őket, hogy a felhasználó aktiválhassa őket.

A gépén, amikor aktiválja az Intel BOT-ot, egy felhasználói módú szolgáltatás fut a háttérben. Ez a szolgáltatás felelős a következőkért: figyelje, amikor kompatibilis bináris fájlok jelennek meg és átirányítja a végrehajtását az Intel által létrehozott optimalizált elérési utakra. A merevlemezen található .exe fájl nem módosul: ami megváltozik, az az utasítások futásidejű elérési útja, hasonlóan ahhoz, ahogy egy grafikus illesztőprogram bizonyos játékokban optimalizált verziókra cseréli a shadereket.

Technikailag az eszköz egyfajta dinamikus végrehajtási folyamatoptimalizálóként viselkedik, kihasználva az Arrow Lake Refresh mikroarchitektúra belső ismeretét. Nem klasszikus illesztőprogramként vagy játékfrissítésként működik; valami a kettő között van. az utasításmenü átrendezése a "darabok" megváltoztatása nélkül, csak a CPU-nak történő kiszolgálás sorrendjét.

Az Intel BOT, az APO és más Intel teljesítménynövelő eszközök közötti kapcsolat

Az Intel legújabb stratégiájában a BOT nem önmagában jelenik meg: egy tágabb csomag része, amelyben más technológiák is együtt léteznek. Intel Extreme Tuning Utility (XTU)Intel Application Optimizer (APO) és most már az Intel saját Binary Optimization Tool eszköze (IBOT/BOT). Minden komponens a teljesítmény egy másik aspektusát fedi le.

Az XTU a klasszikusabb oldalára összpontosít CPU túlhajtás, feszültségek és paraméterekVagyis magának a hardvernek a finomhangolása. Az APO a szoftveres és operációs rendszeri rétegre hat, szabályozza, hogyan oszlanak meg a szálak és a feladatok a különböző típusú magok (P-magok, E-magok) között, és figyeli az erőforrás-elosztást, hogy a leginkább rászoruló alkalmazások profitáljanak a megfelelő hardverből.

A BOT a maga részéről még alacsonyabb szintre megy: maga az utasításfolyam, amelyet a CPU egy adott bináris fájlhoz végrehajtMíg az APO megpróbálja a feladatot a megfelelő kernelbe a megfelelő időben beilleszteni, a BOT gondoskodik arról, hogy az utasítások a chip belső architektúrájához leginkább illeszkedő sorrendben és vektorizálva legyenek.

A gyakorlatban ez azt jelenti, hogy amikor egy játék szerepel a támogatott címek listáján, és a felhasználó aktiválja a megfelelő módot, Az APO és a BOT együtt tudnak működniAz APO kezeli a munkaterhelések megfelelő elosztását, a BOT pedig kinyeri az eredményül kapott gépi kódot. Pontosan ezekben a forgatókönyvekben jegyezték fel a legfigyelemreméltóbb teljesítménynövekedést, különösen az Intel hibrid architektúrájához rosszul adaptált játékokban.

Érdemes megjegyezni, hogy bár a BOT filozófiája az APO filozófiájára emlékeztet (mindkettő olyan szoftveroptimalizálás, amelyet az alkalmazáson "kívülről" alkalmaznak), Nem felcserélhetők és nem egyenértékűekAz Intel kiegészítő eszközként mutatja be ezeket a teljesítményverem minden rétegének finomhangolására: a hardvertől és annak konfigurációjától (XTU) a folyamatallokáción (APO) át egészen a gépi kód átszervezéséig (BOT).

Játékteljesítmény-növekedés: a szerény fejlesztésektől a látványos ugrásokig

Az Intel azt állítja, hogy a támogatott címek első sorozatában a Binary Optimization Tool eléri a átlagosan körülbelül 8%-os javulás játékokbansokkal magasabb csúcsokkal bizonyos forgatókönyvekben. Egyelőre egy körülbelül 12 meccsből álló, csökkentett listáról beszélünk, de a kezdeti eredmények meglepőek.

Az egyik leggyakrabban idézett példa az A Tomb Raider árnyékaEz a játék, eredeti optimalizálása miatt, nem használta ki teljes mértékben a modern Intel processzorok hibrid architektúráját. Az APO + BOT kombinációval egyes benchmarkokban körülbelül 22%-os, vagy akár nagyobb növekedést is mértek, olyan esetekkel, amikor az FPS például 298-ról 375 képkocka/másodpercre ugrott, ami közel 26%-os ugrást jelent.

Egy modernebb játékban, amely jobban optimalizált a jelenlegi CPU-khoz, mint például cyberpunk 2077A történet azonban jelentősen megváltozik. Ebben az esetben a javulás csak néhány százalékpontos: bizonyos benchmarkokban körülbelül 210 FPS-ről alig több mint 220-ra, vagy más konkrét jelenetekben körülbelül 173 FPS-ről körülbelül 179-re. Arról beszélünk, hogy körülbelül 3-5%-os növekedésamelyek továbbra is üdvözlendők, mert "ingyenesek" a felhasználó számára, de már nem változtatják meg annyira az élményt.

Ezek a számok azt mutatják, hogy a BOT se nem csodaszer, se nem fekete mágia, hanem inkább Nagyban függ attól, hogy mennyire van rosszul (vagy jól) optimalizálva a kezdőjáték.Amikor az eredeti bináris fájl jelentősen eltér az Intel architektúrájától, a hatás drámai lehet. Ha elég jól van hangolva, a BOT csak néhány extra FPS-t képes kipréselni, ami kritikus helyzetekben vagy magas frissítési gyakoriságnál még mindig számíthat.

A játékok világán túl, figyelemre méltó hatásokat figyeltek meg bizonyos erőforrás-igényes alkalmazásokban is, mint például Objektum eltávolító vagy HDR feldolgozásahol a laboratóriumi elemzések az eredetileg skaláris kódszakaszok agresszívabb vektorizálásának köszönhetően akár 30%-os növekedést is mutatnak.

Mélyvektorizáció és utasításanalízis: a Geekbench eset

A BOT működésének megértéséhez az egyik legvilágosabb módja, ha megvizsgáljuk, hogy miért felelős a Primate Labs... GeekbenchAprólékosan megvizsgálták, hogyan változott a benchmark teljesítményük, amikor az Intel eszköze aktív volt. Ehhez az Intel Software Development Emulator (SDE) programot használták, amely a végrehajtott utasítások számát és típusát méri.

Egy szabványos Geekbench 6 futtatásnál bot nélkül a teszt körülbelül 1,26 billió utasítás befejezni. A BOT aktiválásával ez a szám körülbelül 1,08 billióra csökkent, ami az utasítások teljes számának körülbelül 14%-os csökkenését jelenti. Más szóval, a munka kompaktabban és hatékonyabban végezhető el, funkciók csökkentése vagy rövidítések igénybevétele nélkül.

Ha utasítástípusonként lebontjuk, az eszköz filozófiája még világosabbá válik. A skaláris utasítások száma körülbelül ...-ról csökken. 220.000 milliárdról körülbelül 84.600 milliárdra, míg a vektoros utasítások (SSE2, AVX2 stb.) száma 1.250 milliárdról körülbelül 18.300 milliárdra ugrott meg, ami az ilyen típusú utasításokhoz képest körülbelül 13,7-szeres növekedést jelent.

Ez egyértelművé teszi, hogy a BOT nagyrészt a következőkre specializálódott: nem hatékony skaláris kódszegmensek vektorizált kóddá alakítása amely jobban kihasználja az Intel processzorok SIMD egységeit. Ahol korábban számos egyszerű, ismétlődő műveletet hajtottak végre, most ezeket vektorműveletekbe csoportosítják, amelyek párhuzamosan több adatpontot dolgoznak fel, ami tökéletesen illeszkedik a vállalat legújabb mikroarchitektúráinak belső kialakításához.

Ez a masszív vektorálás nem vakon történik. Hardverprofilozáson (HWPGO) és bináris szintű utóoptimalizáláson alapul, amelyet az Intel a laboratóriumaiban végez, ami megmagyarázza, hogy miért tekintik kívülről a BOT-ot egy… egy meglehetősen kifinomult fekete dobozA felhasználó csak azt látja, hogy a benchmark vagy a játék gyorsabban fut, de nincs pontos rálátása arra, hogy milyen transzformációkat alkalmaztak a végrehajtási útvonalon.

Kevés játékkal kompatibilis, kizárólag az Arrow Lake Refresh-ben érhető el, és manuális aktiválást igényel.

A benne rejlő lehetőségek ellenére az eszköznek számos figyelemre méltó korlátja van. Az első az, hogy legalábbis ebben a kezdeti fázisban, Az Intel BOT kompatibilitása csak néhány játékra korlátozódik.körülbelül egy tucat kiválasztott címből. Az Intel jelezte, hogy bővíteni fogja a katalógust, de egyelőre a hatókör meglehetősen korlátozott.

A második fontos korlátozás az, hogy ez egy az Arrow Lake Refresh processzorok (Core Ultra 200S Plus) exkluzív funkciója, a Linux támogatás olyan megoldásoktól függ, mint például Proton 11Ez nem valami, amit a korábbi generációkban lehetett aktiválni, ami a BOT-ot megkülönböztető jellemzővé teszi ebben a CPU-családban a korábbi modellekhez, és részben a közvetlen versenytársakhoz képest.

Továbbá ahhoz, hogy ezeket az optimalizálásokat élvezhesse, a felhasználónak bizonyos lépéseket kell végrehajtania: jelenleg a BOT aktiválása egy „Speciális mód” az Intel teljesítménycsomagján belül és a profilok helyes alkalmazásához újra kell indítani a rendszert. Ez nem egy bonyolult folyamat, de messze nem teljesen átlátható.

Az Intel ragaszkodott ahhoz, hogy azt szeretné, ha a végső élmény a lehető legautomatikusabb lenne, és a varázslat nagy része valóban csendben történik, miután beállította, de egyelőre van egy bizonyos összetevője a... komplexitás és exkluzivitás ami korlátozza a hatalmas hatását a kevésbé lelkes felhasználók vagy azok körében, akik kevésbé hajlandóak a speciális beállításokhoz nyúlni.

Egy másik szempont, amit érdemes figyelembe venni, hogy a BOT a bináris fájl végrehajtási útvonalának ilyen alacsony szintjén működik, és jelenleg számos érzékeny környezetben tiloskülönösen az online játékokban, ahol nagyon szigorú csalásgátló rendszerek vannak.

Problémák a csalásgátló rendszerekkel és kétségek a benchmarking világában

Az Intel BOT egyik legkényesebb területe a vele való interakció. csalásgátló rendszerek többjátékos játékokbanMivel az eszköz módosítja a bináris fájl futásidejű végrehajtását, egyes csalás elleni programok, mint például a Ricochet vagy a Vanguard, a játék manipulálására tett kísérletként értelmezhetik azt, és gyanús viselkedésként jelölhetik meg.

Ez azt jelenti, hogy egyelőre, A BOT esetleg nem alkalmas versenyképes online játékokhozahol az ügyfelek integritása a legfontosabb. Amíg az Intel és a csalásgátló rendszerek gyártói között nem születik egyértelmű megállapodás, vagy nincsenek konkrét módszerek annak igazolására, hogy ezek az optimalizálások nem vezetnek tisztességtelen előnyökhöz, a funkció valószínűleg az egyjátékos játékokra vagy az ilyen agresszív csalásgátló rendszerek nélküli élményekre korlátozódik.

A másik fő vitapont a szintetikus benchmarkok területén merült fel. A Geekbench mögött álló Primate Labs cég kijelentette, hogy a botok használata... veszélyezteti az eredmények érvényességétmert alapvetően megváltoztatja a végrehajtható fájl várható viselkedését. Egy benchmarking környezetben, ahol a rendszer „tiszta teljesítményét” kell mérni, egy ilyen külső optimalizáló réteg megváltoztatja a játékszabályokat.

Az átláthatóság fenntartása érdekében a Geekbench explicit módon megjelöli azokat a futtatásokat, ahol Intel BOT beavatkozást észlel. A benchmark 6.7-es verziója hozzáad egy külön jelző a „BOT-tal továbbfejlesztett” eredmények azonosításárahogy könnyen megkülönböztethetők legyenek a hagyományos mérésektől, és megfelelő pontosítás nélkül ne keveredjenek a rangsorokba.

Ez a helyzet érdekes vitát nyit arról, hogyan értelmezzük a benchmarkokat egy olyan korban, amikor az optimalizáló szoftverek képesek... alapvetően átrendezi a CPU munkájátElmosódik a határvonal a hardver "valódi" képessége és a szoftver által nyújtott segítség között, és ez arra kényszerít minket, hogy újragondoljuk, pontosan mit is mérünk, amikor két nagyon eltérő konfigurációjú processzort hasonlítunk össze.

A végfelhasználó szemszögéből azonban a vita kevésbé filozófiai jellegű: ha egy játék vagy alkalmazás észrevehetően gyorsabban fut a számítógépén, mert az Intelnek sikerült javítania a végrehajtási útvonalat a minőség vagy a funkciók feláldozása nélkül, akkor az érzés egyszerűen az lesz, hogy "A processzora jobban teljesít"bár ennek az érdemnek egy része a bináris optimalizáló rétegnek, nem pedig csak a szilíciumnak köszönhető.

Az Intel BOT gyakorlati előnyei és jövője a versenytársakhoz képest

A nagy képet nézve a BOT-ot az Intel egyfajta „titkos fegyvereként” mutatják be, hogy a teljesítménybeli különbség egy részének áthidalása nagyon erős alternatívákkal kell szembenéznie a versenytársak részéről, különösen a játékokban, mielőtt olyan jövőbeli architektúrák érkeznének, mint a Nova Lake és az ígért BLLC.

Az eszköz fő előnye, hogy amikor az eredeti futtatható fájl rosszul van optimalizálva az Intel architektúrára, A nyereség hatalmas lehet. Anélkül, hogy a felhasználónak bármit is módosítania kellene a játékon belül, vagy a fejlesztőnek ki kellene adnia egy adott javítást. Ez egy módja annak, hogy visszaállítsuk az elveszett teljesítményt az eredetileg más platformokra vagy konzolokra tervezett játékokban.

Továbbá a BOT nem rontja a vizuális minőséget, az átvezető jeleneteket vagy a fizikát: a program funkciója ugyanaz marad. Ami változik, az az utasítások felépítése, így a CPU... elfoglaltabb hasznos munkát végez és kevesebbet vár. adatok, gyorsítótárak vagy prediktorok révén. Játékélmény szempontjából ez stabilabb FPS-t és bizonyos esetekben kisebb teljesítménybeli eltérést jelent összetett jelenetekben.

A jövő nagy kihívása az lesz, skálázhatóság és elfogadottság az iparágbanAhhoz, hogy az Intel BOT valóban hatalmas hatást érjen el, a támogatott játékok és alkalmazások listájának jelentősen bővülnie kell, és az ökoszisztéma kulcsszereplőinek (csalásgátló szoftverek, benchmark fejlesztők, fejlesztőstúdiók stb.) alkalmazkodniuk kell ehhez az új köztes réteghez.

Az is érdekes lesz, hogyan reagálnak a versenytársak. Ha ez a bináris optimalizálási stratégia hatékonynak bizonyul, és a piac jól fogadja, nem lenne meglepő, ha más vállalatok is hasonló stratégiákat vizsgálnának. hasonló kód utóoptimalizálási megoldások vagy mélyebben belemerülhet a meghajtóprogramok és a köztes rétegek használatába, hogy a legtöbbet hozhassa ki a hardverből.

Összességében az Intel Binary Optimization Tool nagy potenciált mutat azok számára, akik minden egyes FPS-t vagy extra pontot ki akarnak préselni bizonyos munkaterhelésekből, de jelentős szürke zónái vannak a kompatibilitás, az átláthatóság és a hatókör tekintetében. Ha az Intelnek sikerül bővítenie a támogatását, finomítania a csalás elleni szoftverekkel való integrációját, és normalizálnia kell a jelenlétét a benchmarkokban, akkor válhat belőle. teljesítménystratégiájuk kulcsfontosságú része az elkövetkező években, a pusztán hardveres fejlesztéseken túl.

Kapcsolódó cikk:
Gyorsítsa fel játékát, mint a pokol a Wise Game Booster segítségével