Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Podobne dokumenty
Systemy wbudowane. Cel syntezy systemowej. Wykład 12: Przykłady kosyntezy systemów wbudowanych

Architektura potokowa RISC

Programowanie współbieżne Wykład 2. Iwona Kochańska

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności.

Projektowanie systemów wbudowanych: kosynteza metodą programowania genetycznego oraz przydział nieprzewidzianych zadań

Architektura komputerów

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1

Nowoczesne technologie przetwarzania informacji

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012

Metody optymalizacji soft-procesorów NIOS

Wykorzystanie układów FPGA w implementacji systemów bezpieczeństwa sieciowego typu Firewall

Projektowanie. Projektowanie mikroprocesorów

Architektura komputerów, Informatyka, sem.iii. Rozwiązywanie konfliktów danych i sterowania w architekturze potokowej

Obliczenia Wysokiej Wydajności

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Wstęp. Historia i przykłady przetwarzania współbieżnego, równoległego i rozproszonego. Przetwarzanie współbieżne, równoległe i rozproszone

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Architektura komputerów

Kosynteza dynamicznie samorekonfigurowalnych systemów wbudowanych

Obliczenia Wysokiej Wydajności

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Wybrane metodologie wspierające sprzętową akcelerację obliczeń wielkiej skali

Architektura komputerów

Programowalne Układy Logiczne Konfiguracja/Rekonfiguracja

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

Systemy na Chipie. Robert Czerwiński

Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego

KOSYNTEZA SYSTEMÓW SOC METODĄ ROZWOJOWEGO PROGRAMOWANIA GENETYCZNEGO

KOSYNTEZA SAMOREKONFIGUROWALNYCH SYSTEMÓW SOPC CO-SYNTHESIS OF SELF-RECONFIGURABLE SOPC SYSTEMS

Problemy rozwoju Internetu kwantowego

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Numeryczna algebra liniowa

Architektura systemów komputerowych. Przetwarzanie potokowe I

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Architektura komputerów

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

Katedra Mikroelektroniki i Technik Informatycznych

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Programowanie procesorów graficznych GPGPU

Systemy wbudowane - wykład 9. Systemy czasu rzeczywistego Notes. Systemy czasu rzeczywistego Notes. Systemy czasu rzeczywistego Notes.

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Literatura. 11/16/2016 Przetwarzanie równoległe - wstęp 1

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności.

Analiza efektywności przetwarzania współbieżnego

Budowa i zasada działania komputera. dr Artur Bartoszewski

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Szeregowanie zadań. Wykład nr 3. dr Hanna Furmańczyk

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Programowalne Układy Logiczne. Wykład I dr inż. Paweł Russek

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Internet kwantowy. (z krótkim wstępem do informatyki kwantowej) Jarosław Miszczak. Instytut Informatyki Teoretycznej i Stosowanej PAN

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Literatura. 3/26/2018 Przetwarzanie równoległe - wstęp 1

Przetwarzanie Rozproszone i Równoległe

Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system.

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

10/14/2013 Przetwarzanie równoległe - wstęp 1. Zakres przedmiotu

Modelowanie procesów współbieżnych

Podstawy Informatyki Systemy sterowane przepływem argumentów

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

PRZEWODNIK PO PRZEDMIOCIE

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji

Algorytmy i Struktury Danych

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Przetwarzanie Równoległe i Rozproszone

Heurystyki. Strategie poszukiwań

IMPLEMENTACJA I PORÓWNANIE WYDAJNOŚCI WYBRANYCH ALGORYTMÓW GRAFOWYCH W WARUNKACH OBLICZEŃ RÓWNOLEGŁYCH

Energooszczędne programowanie

Podstawowe zagadnienia

Zadania jednorodne 5.A.Modele przetwarzania równoległego. Rafał Walkowiak Przetwarzanie równoległe Politechnika Poznańska 2010/2011

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

Wstęp. Przetwarzanie równoległe. Krzysztof Banaś Obliczenia równoległe 1

Podstawy Informatyki DMA - Układ bezpośredniego dostępu do pamięci

5. Model komunikujących się procesów, komunikaty

i3: internet - infrastruktury - innowacje

Budowa Mikrokomputera

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Algorytmy wyznaczania centralności w sieci Szymon Szylko

Architektura komputerów

Algorytm Chaitin a. Problem kolorowania grafu. Krzysztof Lewandowski Mirosław Jedynak

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

Dr inż. hab. Siergiej Fialko, IF-PK,

Laboratorium przedmiotu Technika Cyfrowa

Architektury akceleratorów kryptograficznych opartych o układy programowalne. Marcin Rogawski

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Zarządzanie projektami. Tadeusz Trzaskalik

Wstęp do Sztucznej Inteligencji

Transkrypt:

Systemy wbudowane Wykład 11: Metody kosyntezy systemów wbudowanych Uproszczone metody kosyntezy Założenia: Jeden procesor o znanych parametrach Znane parametry akceleratora sprzętowego Vulcan Początkowo zakłada się implementację sprzętową całego systemu Redukcja kosztu poprzez przenoszenie obliczeń do CPU COSYMA Implementacja w formie programu Przenoszenie obliczeń do akceleratora sprzętowego 1/2/2012 S.Deniziak:Systemy wbudowane 2 1

Vulcan Specyfikacja w HardwareC Architektura: CPU + ASIC Podział specyfikacji na wątki obliczeniowe o znanym czasie wykonania Wątki komunikują się poprzez kolejki komunikatów Oszacowania kosztu i wydajności dla każdego wątku Rozwiązanie początkowe: wszystkie wątki bez ograniczeń czasowych w CPU, pozostałe w sprzęcie Przenoszenie kolejnych wątków ze sprzętu do CPU: Jeśli przeniesienie nie naruszy ograniczeń czasowych to zmiana jest akceptowana Krok jest powtarzany dla następników przeniesionego wątku 1/2/2012 S.Deniziak:Systemy wbudowane 3 COSYMA Specyfikacja w C* Specyfikacja podzielona na bloki Bloki są przenoszone do sprzętu wg największego przyspieszenia Algorytm simulated anealing Komunikacja poprzez współdzieloną pamięć 1/2/2012 S.Deniziak:Systemy wbudowane 4 2

COSYMA design flow C* ES graph Gnu C partitioning CDFG Run time analysis Cost estimation High-level synthesis 1/2/2012 S.Deniziak:Systemy wbudowane 5 CoWare Specyfikacja w formie komunikujących się procesów Stopniowa rafinacja specyfikacji Co-synteza implementuje procesy Biblioteki zawierające charakterystyki procesorów, magistral, itp.. 1/2/2012 S.Deniziak:Systemy wbudowane 6 3

LYCOS Jednorodny model dla specyfikacji w różnych językach: Quenya oparta o kolorowane sieci Petri Podział specyfikacji na bloki BSB Sekwencje BSB są prznoszone do sprzętu Poszukiwanie najszybszej kombinacji nie nakładających się w czasie sekwencji BSB nie przekraczającej danego kosztu 1/2/2012 S.Deniziak:Systemy wbudowane 7 Metody kosyntezy dla systemów wieloprocesorowych Alokacja a szeregowanie: Aby wykonać optymalną alokację należy mieć informacje uzyskane po uszeregowaniu Aby wykonać uszeregowanie zadań należy alokować procesory Należy przyjąć pewne założenia aby problem dało się rozwikłać 1/2/2012 S.Deniziak:Systemy wbudowane 8 4

Metoda ILP Szeregowanie zadań w systemie wieloprocesorowym Zależności pomiędzy zadaniami, komunikacją i ograniczeniami są wyrażone jako zbiór równań i nierówności liniowych najlepsze rozwiązanie zostaje znalezione metodą programowania liniowego całkowitoliczbowego (ILP) Duża złożoność obliczeniowa 1/2/2012 S.Deniziak:Systemy wbudowane 9 Metoda GCLP Specyfikacja: graf zadań Kryterium globalne: Stopień w jakim implementacja zadania wpływa na wydajność całego systemu Kryterium lokalne: Ocenia czy funkcje danego zadania lepiej zaimplementować w HW czy SW Synteza: Obliczenie krytycznej ścieżki w systemie Zmiana alokacji wybranego zadania na ścieżce w celu max. polepszenia parametrów systemu Extremity: blokuje pewne nieopłacalne alokacje Repeller: preferuje pewne alokacje 2 fazy: Pętla wewnętrzna: szybkie i ogólne, przeszukiwanie przestrzeni rozwiązań Pętla wewnętrzna: dokładne obliczenie parametrów rozwiązania (wykorzystywane w następnych wykonaniach pętli wewnętrznej) 1/2/2012 S.Deniziak:Systemy wbudowane 10 5

SpecSyn Specyfikacja-eksploracja-rafinacja Specyfikacja w formie Statechart. Model SLIF 1/2/2012 S.Deniziak:Systemy wbudowane 11 Rafinacja w SpecSyn Rafinacja sterowania: Dodanie synchronizacji do funkcji rozdzielonych pomiędzy różne moduły Rafinacja danych: Dodanie transmisji pomiędzy modułami operującymi na tych samych danych Rafinacja architektury: Dodanie arbitrażu w przypadku konfliktu dostępu do wspólnych zasobów 1/2/2012 S.Deniziak:Systemy wbudowane 12 6

Metoda rafinacyjna Architektura początkowa: Każde zadanie wykonywane przez inny zasób (najszybciej wykonujący dane zadanie) Rafinacja: Przenoszenie zadań wg kryterium najlepszego zysku Miara zysku: Musi uwzględniać nie tylko lokalny ale i globalne polepszenie paramatrów systemu 1/2/2012 S.Deniziak:Systemy wbudowane 13 COSYN Podział grafu zadań na klastry (redukcja dużych grafów zadań) Metoda konstrukcyjna: stopniowe budowanie architektury Uwzględnia wielokrotne wykonywanie zadań 1/2/2012 S.Deniziak:Systemy wbudowane 14 7

Synteza przetwarzania potokowego Wymaga odpowiedniej alokacji (każde zadanie przyporządkowane do innego zasobu) Efektywne przy wielokrotnym wykonywaniu zadań 1/2/2012 S.Deniziak:Systemy wbudowane 15 Kosynteza hierarchiczna Węzłem w grafie zadań jest inny graf Moduł sprzętowy składa się z kilku mniejszych modułów. Kosynteza poprzez klasteryzację, alokację i szeregowanie 1/2/2012 S.Deniziak:Systemy wbudowane 16 8

Kosynteza wielokryterialna Jednoczesna optymalizacja wg kilku kryteriów (koszt, szybkość, pobór mocy, itp.) Poprawa jednego parametru często pogarsza inne (optymalizacja Pareto) 1/2/2012 S.Deniziak:Systemy wbudowane 17 MOGAC algorytm genetyczny 1/2/2012 S.Deniziak:Systemy wbudowane 18 9

Synteza systemów zorientowanych na przepływ sterowania Specyfikacja: CFSM Model sterowany zdarzeniami Ograniczenia: czas reakcji systemu Implementacja: Sprzętowa: rejestry (aktualny stan) + logika kombinacyjna Programowa: CFSM s-graph program C 1/2/2012 S.Deniziak:Systemy wbudowane 19 Synteza pamięci podręcznych Szybkość wykonywania zależy od efektywności pamięci podręcznej Rozmieszczenie procesów w pamięci powinno zależeć od organizacji cache Minimalizacja pamięci cache 1/2/2012 S.Deniziak:Systemy wbudowane 20 10

Kosynteza systemów rekonfigurowalnych FPGA częściowo reprogramowalne Ten sam fragment sprzętu może implementować kilka funkcji Należy uwzględnić rozmieszczenie modułów Szeregowanie musi uwzględnić czas reprogramowania 1/2/2012 S.Deniziak:Systemy wbudowane 21 Algorytmy syntezy systemów DRSOPC CORDS (wersja algorytmu MOGAC) Nimble: Równoległość na poziomie instrukcji Reprezentacja CFG Przyspieszanie pętli 1/2/2012 S.Deniziak:Systemy wbudowane 22 11

Koniec 1/2/2012 S.Deniziak:Systemy wbudowane 23 12