Halide bildbehandlingsspråket har visat sig vara ett effektivt system för att skapa högpresterande bildbehandlingskod. Halide programmerare behöver bara tillhandahålla en hög nivå strategi för att kartlägga en bildbehandling pipeline till en parallell maskin (ett schema), och Halide kompilatorn utför den mekaniska uppgiften att generera plattformsspecifika kod som implementerar schemat. Tyvärr kräver design av högpresterande scheman för komplexa bildbehandling pipelines omfattande kunskap om modern hårdvara arkitektur och kodoptimering tekniker. I detta papper tillhandahåller vi en algoritm för att automatiskt generera högpresterande scheman för Halide-program. Vår lösning utökar den funktionsgränser analys som redan finns i Halide kompilatorn för att automatiskt utföra lokalitet och parallellism-främjande globala program transformationer typiska för dem som används av expert Halide utvecklare. Algoritmen kräver inte kostsam (och ofta opraktisk) automatisk inställning, och på några sekunder genererar scheman för en bred uppsättning av riktmärken för bildbehandling som är prestanda-konkurrenskraft med, och ofta bättre än, scheman manuellt författare av expert Halide utvecklare på server och mobila processorer, samt GPU:er.
En fördefinierad kostnadsmodell används för att automatiskt schemalägga bildbehandling pipelines i Halide REF.
Automatically scheduling halide image processing pipelines
{'venue': 'TOGS', 'journal': None, 'mag_field_of_study': ['Computer Science']}