Instruktion schemaläggning och register tilldelning är två mycket viktiga optimeringar i moderna kompilatorer för avancerade processorer. Dessa två optimeringar måste utföras samtidigt för att maximera parallellismen på undervisningsnivå och för att fullt ut utnyttja registren 11]. I detta papper löser vi register allokering och instruktion schemaläggning samtidigt med heltal linjär programmering (ILP). Vi har framgångsrikt utarbetat ILP-formuleringarna för problemet med och utan registerspill. Två typer av optimeringar beaktas: (1) Bestäm antalet fria register och lös sedan för det minsta antalet cykler för att utföra instruktionerna, eller (2) x de maximala körcyklerna för instruktionerna och lös för det minsta antal register som behövs. Förutom att vår lösning är teoretiskt intressant fungerar den som referenspunkt för andra heuristiska lösningar. Formuleringarna är också tillämpliga på syntes på hög nivå av ASIC och konstruktioner för inbäddade processorer. Inom dessa tillämpningsområden är kodkvaliteten viktigare än sammanställningstiden.
ILP-baserade samtidiga undervisning schemaläggning och register tilldelning för multiissue maskiner föreslås i REF.
Using Integer Linear Programming for Instruction Scheduling and Register Allocation in Multi-issue Processors
{'venue': 'in Multi-Issue Processors. Computers and Mathematics with Applications', 'journal': None, 'mag_field_of_study': ['Computer Science']}