Abstract-A nonlinear optimering ram föreslås i detta papper för att automatisera prospektering av designutrymme som består av data-återanvändning (buffring) beslut och loop-nivå parallellisering, i samband med fält-programmerbar-gate-array-riktad hårdvara sammanställning. Buffring ofta nås data i on-chip minnen kan minska off-chip minnesåtkomster och öppna vägar för parallellisering. Utnyttjandet av både dataåteranvändning och parallellisering begränsas dock av de minnesresurser som finns tillgängliga på chip. Som ett resultat, med tanke på dessa två problem separat, t.ex., först utforska data återanvändning och sedan utforska data-nivå parallellisering, baserat på de data-återanvändningsalternativ som fastställts i det första steget, kanske inte ger prestanda-optimal design för begränsade minnesresurser på chip. Vi betraktar båda problemen samtidigt och avslöjar beroendet mellan de två. Vi visar att detta kombinerade problem kan formuleras som ett icke-linjärt program och ytterligare visa att effektiva lösningstekniker finns för detta problem, baserat på senaste tidens framsteg i optimering av så kallade geometriska programmeringsproblem. Resultaten från tillämpningen av detta ramverk på flera verkliga riktmärken som implementerats på en Xilinx-enhet visar att motsvarande prestandaoptimala konstruktioner automatiskt bestäms av ramverket med tanke på olika begränsningar för användning på chip. Vi har också implementerat konstruktioner som bestäms av en tvåstegsoptimeringsmetod som först utforskar dataåteranvändning och sedan undersöker parallellisering på samma plattform, och som jämförelse är de prestandaoptimala konstruktioner som föreslås av vårt ramverk snabbare än de konstruktioner som bestäms av tvåstegsmetoden med upp till 5,7 gånger.
Genom arbetet i Ref införs ett geometriskt programmeringsramverk som kombinerar återanvändning av data med parallellism på datanivå.
Combining Data Reuse With Data-Level Parallelization for FPGA-Targeted Hardware Compilation: A Geometric Programming Framework
{'venue': 'IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems', 'journal': 'IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems', 'mag_field_of_study': ['Computer Science']}