Adaptív optimalizálás - Adaptive optimization
Az adaptív optimalizálás az informatika olyan technikája, amely a program egyes részeinek dinamikus újrafordítását hajtja végre az aktuális végrehajtási profil alapján. Egyszerű megvalósítással az adaptív optimalizáló egyszerűen kompromisszumot hozhat az éppen időben történő fordítási és értelmezési utasítások között . Egy másik szinten az adaptív optimalizálás kihasználhatja a helyi adatkörülmények előnyeit a távoli elágazások optimalizálására, és az inline bővítés használatával csökkentheti az eljáráshívások költségeit.
Vegyünk egy hipotetikus banki alkalmazást, amely egymás után kezeli a tranzakciókat. Ezek a tranzakciók lehetnek csekkek, betétek és nagyszámú homályosabb tranzakció. Amikor a program végrehajtódik, a tényleges adatok abból állhatnak, hogy több tízezer csekket törölnek egyetlen betét feldolgozása nélkül, és csalárd számlaszámmal egyetlen csekket nem dolgoznak fel. Az adaptív optimalizáló összeállítási kódot állít össze, hogy optimalizálja ezt a gyakori esetet. Ha a rendszer ezután több tízezer betét feldolgozását kezdte volna el, az adaptív optimalizáló újrafordítaná az összeszerelési kódot az új általános eset optimalizálása érdekében. Ez az optimalizálás tartalmazhat beillesztõ kódot.
Az adaptív optimalizálás példái közé tartozik a HotSpot és a HP Dynamo rendszere .
Bizonyos rendszerekben, nevezetesen a Java virtuális gépben , a bájtkód-utasítások végrehajtása bizonyíthatóan megfordítható. Ez lehetővé teszi az adaptív optimalizáló számára, hogy kockázatos feltételezéseket tegyen a kóddal kapcsolatban. A fenti példában az optimalizáló feltételezheti, hogy minden tranzakció csekk, és minden számlaszám érvényes. Amikor ezek a feltételezések helytelennek bizonyulnak, az adaptív optimalizáló „kikapcsolódhat” egy érvényes állapotba, majd helyesen értelmezi a bájtkód utasításokat.
Lásd még
Hivatkozások
Külső linkek
- CiteSeer Matthew Arnold, Stephen Fink, David Grove, Michael Hind, Peter F. Sweeney "Adaptív optimalizálás a Jalapeño JVM-ben (2000)" című munkájához . Linkeket tartalmaz a teljes papírhoz, különböző formátumokban.