SlideShare a Scribd company logo
Task partitioning for the scheduling on partially dynamically reconfigurable FPGAs Prof. Donatella Sciuto Prof. Fabrizio Ferrandi Ing. Marco Santambrogio Anno Accademico 2005/2006 Politecnico di Milano Massimo Redaelli
Sommario Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Obiettivi Sviluppo di un modello che descriva: un’architettura riconfigurabile il problema dello scheduling su di essa Sviluppo di un algoritmo di partizionamento che Riduca la complessità del problema Senza perdere troppo in ottimalità Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
FPGA Software troppo lento? Hardware troppo costoso? Hardware riconfigurabile Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
FPGA Vantaggi Piattaforma di test per soluzioni hardware Più veloce di una soluzione software Riutilizzabile “ Virtual hardware” Svantaggi Più lento dell’hardware Più difficile da progettare del puro software Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Scheduling Quando (e dove) eseguire le operazioni che implementano la specifica? Se la specifica è troppo “grande” per l’FPGA, come “spezzarla”? Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Temporal Partitioning Non sfrutta la capacità di essere riconfigurata  parzialmente N  configurazioni dell’intera FPGA, eseguite in serie Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Time-space partitioning Unità di esecuzione riconfigurabili indipendentemente Packing 3D Molto difficile Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Esempio di scheduling Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Architettura Generica ma non irreale Obiettivi Il problema Il modello ..Architettura ..Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri 1 CLB …
Problema Input: Data Flow Graph (aciclico) Output: quando? dove? Stima di Occupazione Logica Comunicazione Tempi di Esecuzione Riconfigurazione Obiettivi Il problema Il modello ..Architettura .. Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Gradi di libertà Il riuso e la condivisione delle risorse possono aiutare: Le operazioni sono schedulate  a gruppi , e non singolarmente Tradeoff tra occupazione e velocità di esecuzione: Non c’è un solo modo di implementare un’operazione Obiettivi Il problema Il modello ..Architettura ..Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Attenzione Partizionando il DFG possono nascere alcuni problemi Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Come partizionare? Riconfigurazione VS esecuzione Attualmente Obiettivi Il problema Il modello ..Architettura ..Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Approcci Nascondere  la riconfigurazione Avere sempre operazioni in esecuzione mentre si riconfigura OK per data intensive, ma non sempre ci sono loop... Riconfigurare  il meno possibile ->  Partizionare e schedulare in modo da poter sfruttare la logica già configurata ->  Trovare  parti ripetute  nella specifica Obiettivi Il problema Il modello Stato dell’arte ..Approcci ..Riuso ..Formulazione Algoritmi Risultati Conclusioni Sviluppi futuri
Come? Ricerca testuale nel sorgente Rapida Sensibile a nomi delle variabili ordinamento Ricerca su AST Meglio, ma ancora ordinamento istruzioni… Obiettivi Il problema Il modello Stato dell’arte ..Approcci ..Riuso ..Formulazione Algoritmi Risultati Conclusioni Sviluppi futuri
Formulazione Ricerca di sottografi isomorfi connessi e distinti nella specifica iniziale Obiettivi Il problema Il modello Stato dell’arte ..Approcci ..Riuso ..Formulazione Algoritmi Risultati Conclusioni Sviluppi futuri
1 - Alberi Convertire l’albero in una stringa Trovare la più lunga coppia di sottostringhe identiche well-nested non sovrapposte (lineare) ((()(()))( (()()) ))  ↔ Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
2 - Euristica generica Parti da due sottografi isomorfi Costruiscine gli intorni Fai un matching tra i nodi degli intorni Pesi basati su quanto “simili” sono i nodi Controlla se coi nuovi nodi rimangono isomorfi. Se sì, aggiungili Ritorna a 1 Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
Caso specifico I nostri grafi hanno più struttura Colorati (tipo di azione) Diretti (input VS output) Input ordinati  (se l’azione non  è commutativa) + – Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
2 - Euristico Semplice ed efficace calcolo dei pesi del matching No a diverso colore No se input da diverso colore No se output a diverso colore Semplice costruzione dei sottografi di partenza Tutti i sottografi connessi isomorfi con due nodi  Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
1- Alberi Estraiamo un albero (radice nel pozzo) Colore: parentesi diverse Ordine: se il lato verso il nodo n è l’input k, usa la sottostringa kn…nk ER1SS1RG1YCCY12YGGY2GE Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
Risultati Circuiti di benchmark standard: ISCAS 1989 (cXXX) e 1995 (sXXX) XXX è il numero dei lati Pentium M 1.73 GHz, Debian Linux (512 MB RAM) su CoLinux su WinXP (2 GB RAM). Funzione  Time  di Linux (include Panda) Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
Tempo di esecuzione Più veloce di un ordine di grandezza rispetto a quello originale Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
Tempo di esecuzione Dipendenza più forte dal numero di lati che dalla densità Il collo di bottiglia è nel numero di grafi iniziali da esplorare, e non nell’esplorazione degli intorni Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
# e dim Trova un buon numero di istanze isomorfe Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
# e dim I sottografi hanno dimensioni ragionevoli Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
Conclusioni Sviluppo di un modello che descrive un’architettura riconfigurabile generica il problema dello scheduling con Riuso Diverse possibili implementazioni per ogni azione Sviluppo di un’euristica per l’identificazione di sotto-programmi ripetuti Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Lavori futuri Metriche per la scelta dei sotto-programmi da utilizzare (copertura della specifica originaria) Algoritmo di scheduling ottimizzato per il riuso Confronto con soluzione ILP del modello Feedback con fase di placing (comunicazione…) Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
Bibliografia Donato, Ferrandi, Redaelli, Santambrogio, Sciuto.  Caronte: a complete methodology for the implementation of partially dynamically self-reconguring systems on FPGA platforms . In FCCM, 2005. Donato, Ferrandi, Redaelli, Santambrogio, Sciuto.  Exploiting partial dynamic reconfiguration for SoC design of complex application on FPGA platforms . In VLSI-SOC, 2005. Ferrandi, Redaelli, Santambrogio, Sciuto.  Solving The Coloring Problem to Schedule on Partially Dynamically Reconfigurable Hardware . In VLSI-SOC, 2005.

More Related Content

PPT
Thesis Maggioni Slide it
PPT
3DD 1e Salomone
PPT
3DD 1e Reconfig
PPT
3DD 1e 1 Agosto Def Roadmap
PPT
Thesis Amicucci Slides IT
PPT
Thesis Montone Piazzi Slide IT
PPT
Thesis Ardemagni Sangalli Slide It
PPT
3DD 1e Chiara F
Thesis Maggioni Slide it
3DD 1e Salomone
3DD 1e Reconfig
3DD 1e 1 Agosto Def Roadmap
Thesis Amicucci Slides IT
Thesis Montone Piazzi Slide IT
Thesis Ardemagni Sangalli Slide It
3DD 1e Chiara F

What's hot (17)

PPT
Thesis Sandionigi Slide IT
PPT
3DD 1e BiRf
PPT
Thesis Vecchio Slides iT
PPT
Thesis Magnone Slides IT
PPT
Thesis Morandi Novati Slide IT
PPT
Thesis Redaelli Sacchi Slide IT
PPT
3DD 1e IPGen
PPT
Thesis Murgida Panella Slide it
PDF
Monitoraggio di applicazioni software mediante modelli di Markov - slides
PPT
Thesis Bosisio Beretta Slide IT
PDF
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
PPT
Thesis Corbetta Slide IT
PDF
Master Thesis
PDF
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-Fuzzy
PPT
Detailed Model Capture
PPTX
L'algoritmo
PPT
Semi-Active Replication Protocol
Thesis Sandionigi Slide IT
3DD 1e BiRf
Thesis Vecchio Slides iT
Thesis Magnone Slides IT
Thesis Morandi Novati Slide IT
Thesis Redaelli Sacchi Slide IT
3DD 1e IPGen
Thesis Murgida Panella Slide it
Monitoraggio di applicazioni software mediante modelli di Markov - slides
Thesis Bosisio Beretta Slide IT
Progetto e Sviluppo di un Sistema per il Gioco degli Scacchi Tridimensionali
Thesis Corbetta Slide IT
Master Thesis
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-Fuzzy
Detailed Model Capture
L'algoritmo
Semi-Active Replication Protocol
Ad

Viewers also liked (20)

PDF
PoliBrain Service - Ruggero Motta's Master Thesis
PDF
PPSX
MSc Thesis PowerPoint
PDF
Graduation Thesis Presentation
PPTX
Bachelor Thesis Presentation (Italian)
PPT
Slide Tesi informatica
PDF
Supervising a thesis by publication. Workshop: Macquarie University
PPT
My master thesis
PPT
My M Sc Thesis
PDF
Slideshow of the Master's thesis
PPTX
Thesis Defense - Tommy May
PDF
Thesis, WordPress e fantasia: tre ingredienti per migliorare il tuo blog
PDF
EXOR - Corporate Strategy - 2009-2013
PDF
Thesis presentation
PDF
Thesis
PPTX
Dry Eye and Ocular surface diseases in diabetes mellitus
PPTX
Writing your thesis chapter by chapter
PPTX
Cryotherapy in Ophthalmology
PPTX
Neuro ophthalmology 2016
PPTX
Cystoid macular oedema
PoliBrain Service - Ruggero Motta's Master Thesis
MSc Thesis PowerPoint
Graduation Thesis Presentation
Bachelor Thesis Presentation (Italian)
Slide Tesi informatica
Supervising a thesis by publication. Workshop: Macquarie University
My master thesis
My M Sc Thesis
Slideshow of the Master's thesis
Thesis Defense - Tommy May
Thesis, WordPress e fantasia: tre ingredienti per migliorare il tuo blog
EXOR - Corporate Strategy - 2009-2013
Thesis presentation
Thesis
Dry Eye and Ocular surface diseases in diabetes mellitus
Writing your thesis chapter by chapter
Cryotherapy in Ophthalmology
Neuro ophthalmology 2016
Cystoid macular oedema
Ad

Similar to Thesis M. Redaelli Slides EN (20)

PPTX
Diagrammi di Sequenza
PDF
Progetto e realizzazione di uno strumento per la modifica sistematica di codi...
PDF
Java Symbolic Regression - Machine Learining
PDF
Ecdl modulo 1 -Fondamenti
PDF
DotNetToscana - Sessione TypeScript
PPT
PPTX
Sviluppo e realizzazione di un sistema per la manipolazione di superfici trid...
PDF
Lezione 1 (27 febbraio 2012)
PDF
Lezione 1 (27 febbraio 2012)
PDF
Design patterns - parte 1
PPTX
Terza prova2
PDF
Sift - Scale Invariant Feature Transform
PPTX
Introduzione a TypeScript
PDF
BisPy: un pacchetto Python per il calcolo della massima bisimulazione di graf...
PDF
BisPy: un pacchetto Python per il calcolo della massima bisimulazione di graf...
PDF
Analisi delle differenze strutturali nelle espressioni regolari costruite da ...
PPT
Calcolo Parallelo
PPTX
What is new in C# 2018
PDF
Relazione Modellazione e Simulazioni Numeriche: Percolazione
PDF
Corso GOF Design Pattern
Diagrammi di Sequenza
Progetto e realizzazione di uno strumento per la modifica sistematica di codi...
Java Symbolic Regression - Machine Learining
Ecdl modulo 1 -Fondamenti
DotNetToscana - Sessione TypeScript
Sviluppo e realizzazione di un sistema per la manipolazione di superfici trid...
Lezione 1 (27 febbraio 2012)
Lezione 1 (27 febbraio 2012)
Design patterns - parte 1
Terza prova2
Sift - Scale Invariant Feature Transform
Introduzione a TypeScript
BisPy: un pacchetto Python per il calcolo della massima bisimulazione di graf...
BisPy: un pacchetto Python per il calcolo della massima bisimulazione di graf...
Analisi delle differenze strutturali nelle espressioni regolari costruite da ...
Calcolo Parallelo
What is new in C# 2018
Relazione Modellazione e Simulazioni Numeriche: Percolazione
Corso GOF Design Pattern

More from Marco Santambrogio (20)

PPT
RCIM 2008 - - hArtes Atmel
PDF
RCIM 2008 - - UniCal
PDF
RCIM 2008 - - ALTERA
PDF
DHow2 - L6 VHDL
PDF
DHow2 - L6 Ant
PDF
DHow2 - L5
PDF
RCIM 2008 - - ALaRI
PDF
RCIM 2008 - Modello Scheduling
PDF
RCIM 2008 - HLR
PDF
RCIM 2008 -- EHW
PDF
RCIM 2008 - Modello Generale
PDF
RCIM 2008 - Allocation Relocation
PPT
RCIM 2008 - - hArtes_Ferrara
PDF
RCIM 2008 - Janus
PDF
RCIM 2008 - Intro
PPT
DHow2 - L2
PPT
DHow2 - L4
PPT
DHow2 - L1
PPT
RCW@DEI - Treasure hunt
PDF
RCW@DEI - ADL
RCIM 2008 - - hArtes Atmel
RCIM 2008 - - UniCal
RCIM 2008 - - ALTERA
DHow2 - L6 VHDL
DHow2 - L6 Ant
DHow2 - L5
RCIM 2008 - - ALaRI
RCIM 2008 - Modello Scheduling
RCIM 2008 - HLR
RCIM 2008 -- EHW
RCIM 2008 - Modello Generale
RCIM 2008 - Allocation Relocation
RCIM 2008 - - hArtes_Ferrara
RCIM 2008 - Janus
RCIM 2008 - Intro
DHow2 - L2
DHow2 - L4
DHow2 - L1
RCW@DEI - Treasure hunt
RCW@DEI - ADL

Thesis M. Redaelli Slides EN

  • 1. Task partitioning for the scheduling on partially dynamically reconfigurable FPGAs Prof. Donatella Sciuto Prof. Fabrizio Ferrandi Ing. Marco Santambrogio Anno Accademico 2005/2006 Politecnico di Milano Massimo Redaelli
  • 2. Sommario Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 3. Obiettivi Sviluppo di un modello che descriva: un’architettura riconfigurabile il problema dello scheduling su di essa Sviluppo di un algoritmo di partizionamento che Riduca la complessità del problema Senza perdere troppo in ottimalità Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 4. FPGA Software troppo lento? Hardware troppo costoso? Hardware riconfigurabile Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 5. FPGA Vantaggi Piattaforma di test per soluzioni hardware Più veloce di una soluzione software Riutilizzabile “ Virtual hardware” Svantaggi Più lento dell’hardware Più difficile da progettare del puro software Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 6. Scheduling Quando (e dove) eseguire le operazioni che implementano la specifica? Se la specifica è troppo “grande” per l’FPGA, come “spezzarla”? Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 7. Temporal Partitioning Non sfrutta la capacità di essere riconfigurata parzialmente N configurazioni dell’intera FPGA, eseguite in serie Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 8. Time-space partitioning Unità di esecuzione riconfigurabili indipendentemente Packing 3D Molto difficile Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 9. Esempio di scheduling Obiettivi Il problema ..Architettura ..Scheduliing ..Temporal ..Time-space ..Esempio Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 10. Architettura Generica ma non irreale Obiettivi Il problema Il modello ..Architettura ..Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri 1 CLB …
  • 11. Problema Input: Data Flow Graph (aciclico) Output: quando? dove? Stima di Occupazione Logica Comunicazione Tempi di Esecuzione Riconfigurazione Obiettivi Il problema Il modello ..Architettura .. Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 12. Gradi di libertà Il riuso e la condivisione delle risorse possono aiutare: Le operazioni sono schedulate a gruppi , e non singolarmente Tradeoff tra occupazione e velocità di esecuzione: Non c’è un solo modo di implementare un’operazione Obiettivi Il problema Il modello ..Architettura ..Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 13. Attenzione Partizionando il DFG possono nascere alcuni problemi Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 14. Come partizionare? Riconfigurazione VS esecuzione Attualmente Obiettivi Il problema Il modello ..Architettura ..Problema ..Partitioning Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 15. Approcci Nascondere la riconfigurazione Avere sempre operazioni in esecuzione mentre si riconfigura OK per data intensive, ma non sempre ci sono loop... Riconfigurare il meno possibile -> Partizionare e schedulare in modo da poter sfruttare la logica già configurata -> Trovare parti ripetute nella specifica Obiettivi Il problema Il modello Stato dell’arte ..Approcci ..Riuso ..Formulazione Algoritmi Risultati Conclusioni Sviluppi futuri
  • 16. Come? Ricerca testuale nel sorgente Rapida Sensibile a nomi delle variabili ordinamento Ricerca su AST Meglio, ma ancora ordinamento istruzioni… Obiettivi Il problema Il modello Stato dell’arte ..Approcci ..Riuso ..Formulazione Algoritmi Risultati Conclusioni Sviluppi futuri
  • 17. Formulazione Ricerca di sottografi isomorfi connessi e distinti nella specifica iniziale Obiettivi Il problema Il modello Stato dell’arte ..Approcci ..Riuso ..Formulazione Algoritmi Risultati Conclusioni Sviluppi futuri
  • 18. 1 - Alberi Convertire l’albero in una stringa Trovare la più lunga coppia di sottostringhe identiche well-nested non sovrapposte (lineare) ((()(()))( (()()) )) ↔ Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
  • 19. 2 - Euristica generica Parti da due sottografi isomorfi Costruiscine gli intorni Fai un matching tra i nodi degli intorni Pesi basati su quanto “simili” sono i nodi Controlla se coi nuovi nodi rimangono isomorfi. Se sì, aggiungili Ritorna a 1 Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
  • 20. Caso specifico I nostri grafi hanno più struttura Colorati (tipo di azione) Diretti (input VS output) Input ordinati (se l’azione non è commutativa) + – Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
  • 21. 2 - Euristico Semplice ed efficace calcolo dei pesi del matching No a diverso colore No se input da diverso colore No se output a diverso colore Semplice costruzione dei sottografi di partenza Tutti i sottografi connessi isomorfi con due nodi Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
  • 22. 1- Alberi Estraiamo un albero (radice nel pozzo) Colore: parentesi diverse Ordine: se il lato verso il nodo n è l’input k, usa la sottostringa kn…nk ER1SS1RG1YCCY12YGGY2GE Obiettivi Il problema Il modello Stato dell’arte Algoritmi .Grafi generici ..Alberi ..Euristico .DAG ..Peculiarità ..Euristico ..Alberi Risultati Conclusioni Sviluppi futuri
  • 23. Risultati Circuiti di benchmark standard: ISCAS 1989 (cXXX) e 1995 (sXXX) XXX è il numero dei lati Pentium M 1.73 GHz, Debian Linux (512 MB RAM) su CoLinux su WinXP (2 GB RAM). Funzione Time di Linux (include Panda) Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
  • 24. Tempo di esecuzione Più veloce di un ordine di grandezza rispetto a quello originale Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
  • 25. Tempo di esecuzione Dipendenza più forte dal numero di lati che dalla densità Il collo di bottiglia è nel numero di grafi iniziali da esplorare, e non nell’esplorazione degli intorni Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
  • 26. # e dim Trova un buon numero di istanze isomorfe Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
  • 27. # e dim I sottografi hanno dimensioni ragionevoli Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati ..Tempi ..Analisi tempi ..# Istanze ..Dim istanze Conclusioni Sviluppi futuri
  • 28. Conclusioni Sviluppo di un modello che descrive un’architettura riconfigurabile generica il problema dello scheduling con Riuso Diverse possibili implementazioni per ogni azione Sviluppo di un’euristica per l’identificazione di sotto-programmi ripetuti Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 29. Lavori futuri Metriche per la scelta dei sotto-programmi da utilizzare (copertura della specifica originaria) Algoritmo di scheduling ottimizzato per il riuso Confronto con soluzione ILP del modello Feedback con fase di placing (comunicazione…) Obiettivi Il problema Il modello Stato dell’arte Algoritmi Risultati Conclusioni Sviluppi futuri
  • 30. Bibliografia Donato, Ferrandi, Redaelli, Santambrogio, Sciuto. Caronte: a complete methodology for the implementation of partially dynamically self-reconguring systems on FPGA platforms . In FCCM, 2005. Donato, Ferrandi, Redaelli, Santambrogio, Sciuto. Exploiting partial dynamic reconfiguration for SoC design of complex application on FPGA platforms . In VLSI-SOC, 2005. Ferrandi, Redaelli, Santambrogio, Sciuto. Solving The Coloring Problem to Schedule on Partially Dynamically Reconfigurable Hardware . In VLSI-SOC, 2005.