Dynamisk optimering har potential att anpassa programmets beteende vid körtid för att leverera prestandaförbättringar över statisk optimering. Dynamiska optimeringssystem utför vanligtvis sin optimering i serie med programmets utförande. Detta medför overhead vilket minskar nyttan av dynamisk optimering, och förhindrar vissa aggressiva optimeringar från att utföras. I detta dokument föreslår vi en ny dynamisk optimeringsram kallad Trident. Parallellt med programmets utförande använder ramen maskinvarustöd för att identifiera optimeringsmöjligheter, och använder extra trådar på en flertrådig processor för att utföra dynamiska optimeringar för dessa optimeringshändelser. Vi utvärderar nyttan med att använda Trident för att styra kodlayout, grundläggande kompilatoroptimeringar och värdespecialisering. Våra resultat visar att genom att använda Trident med dessa optimeringar uppnås en genomsnittlig hastighetsökning på 20%, och kompletterar med andra minneslatenstoleranta tekniker, såsom prefetching.
Zhang m.fl. al REF föreslår en dynamisk optimeringsram där hjälptrådarna dynamiskt optimerar koden för applikationstråden när den körs.
An event-driven multithreaded dynamic optimization framework
{'venue': "14th International Conference on Parallel Architectures and Compilation Techniques (PACT'05)", 'journal': "14th International Conference on Parallel Architectures and Compilation Techniques (PACT'05)", 'mag_field_of_study': ['Computer Science']}