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

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

Zrównoleglenie i przetwarzanie potokowe

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

Architektura komputerów

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

Architektura komputerów

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Obliczenia Wysokiej Wydajności

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Architektura komputerów

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

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

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Algorytmy i Struktury Danych

Wydajność programów sekwencyjnych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Obliczenia Wysokiej Wydajności

Numeryczna algebra liniowa. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

METODY ELIMINACJI STUDENTÓW INFORMATYKI. Czyli co student INF-EKA powinien wiedzieć o MESI...

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

Budowa Mikrokomputera

Numeryczna algebra liniowa

Budowa komputera Komputer computer computare

16. Taksonomia Flynn'a.

Organizacja pamięci współczesnych systemów komputerowych : pojedynczy procesor wielopoziomowa pamięć podręczna pamięć wirtualna

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

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

Programowanie Rozproszone i Równoległe

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Ograniczenia efektywności systemu pamięci

Metody numeryczne w przykładach

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

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

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

Nowoczesne technologie przetwarzania informacji

ROZKŁAD MATERIAŁU NAUCZANIA KLASA 2, ZAKRES PODSTAWOWY

Ograniczenia efektywności systemu pamięci

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

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

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

Struktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski

Stronicowanie w systemie pamięci wirtualnej

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa i multimedia

Architektura komputerów wer. 3

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

zakładane efekty kształcenia

Kierunek Informatyka stosowana Studia stacjonarne Studia pierwszego stopnia

Podstawy Informatyki Systemy sterowane przepływem argumentów

Zadania badawcze prowadzone przez Zakład Technik Programowania:

5. Rozwiązywanie układów równań liniowych

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

Wykład 2 Podstawowe pojęcia systemów równoległych, modele równoległości, wydajność obliczeniowa, prawo Amdahla/Gustafsona

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

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa i multimedia

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Wykład 8 Systemy komputerowe ze współdzieloną pamięcią operacyjną, struktury i cechy funkcjonalne.

Poziom kwalifikacji: I stopnia. Liczba godzin/tydzień: 2W E, 2L PRZEWODNIK PO PRZEDMIOCIE

Magistrala systemowa (System Bus)

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

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu

Metody numeryczne Wykład 4

PRZEWODNIK PO PRZEDMIOCIE

Projektowanie. Projektowanie mikroprocesorów

Zarządzanie pamięcią operacyjną

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

Architektura komputerów egzamin końcowy

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

KARTA MODUŁU KSZTAŁCENIA

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.

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

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

Budowa i zasada działania komputera. dr Artur Bartoszewski

System komputerowy. System komputerowy

6. Algorytmy ochrony przed zagłodzeniem dla systemów Linux i Windows NT.

System pamięci. Pamięć wirtualna

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

ZAGADNIENIA DO EGZAMINU DYPLOMOWEGO NA STUDIACH INŻYNIERSKICH. Matematyka dyskretna, algorytmy i struktury danych, sztuczna inteligencja

Architektura mikroprocesorów z rdzeniem ColdFire

Systemy operacyjne. wykład 1- System operacyjny i jego zadania. dr Marcin Ziółkowski

Architektura komputerów wer. 7

Wykorzystanie architektury Intel MIC w obliczeniach typu stencil

Wprowadzenie do systemów operacyjnych

Budowa systemów komputerowych

Kierunek: Informatyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Podstawy Techniki Mikroprocesorowej wykład 13: MIMD. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

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

Metody uporządkowania

Architektura Systemów Komputerowych

ECTS (Część 2. Metody numeryczne) Nazwa w języku angielskim: Algorithms and data structures.

3.Przeglądarchitektur

rozwiązuje - często przy pomocy nauczyciela - zadania typowe, o niewielkim stopniu trudności

ROZKŁAD MATERIAŁU NAUCZANIA KLASA 1, ZAKRES PODSTAWOWY

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)

Modelowanie procesów współbieżnych

Architektura komputerów II - opis przedmiotu

WYKAZ PRZEDMIOTÓW I PLAN REALIZACJI

Rozproszona pamiêæ dzielona - 1

Wykład Ćwiczenia Laboratorium Projekt Seminarium Liczba godzin zajęć zorganizowanych w Uczelni ,5 1

Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/

Transkrypt:

Dr inż. hab. Siergiej Fialko, IF-PK, http://torus.uck.pk.edu.pl/~fialko sfialko@riad.pk.edu.pl 1

Osobliwości przedmiotu W podanym kursie główna uwaga będzie przydzielona osobliwościom symulacji komputerowych zagadnień technicznych, czyli aspektom informatycznym, który powstają przy tworzeniu systemów obliczeniowych w zagadnieniach technicznych. Celą tego kursu będzie zapoznanie z technikami i metodami opracowania algorytmów, często spotykanych przy modelowaniu zagadnień technicznych, przy czym główna uwaga będzie przydzielona podstawom tworzenia takich metod na wielordzeniowych biurowych komputerach. 2

Kurs obejmuje: Osiągnięcie wysokiej wydajności typowych algorytmów obliczeniowych przy oprogramowaniu sekwencyjnym, a również wielowątkowym dla komputerów wielordzeniowych (SMP). Typowe techniki oprogramowania wielowątkowego dla algorytmów obliczeniowych. Macierzy rzadkie. Metody bezpośrednie i iteracyjne rozwiązywania układów równań liniowych algebraicznych z macierzami rzadkimi. Wyznaczenie dolnych wartości własnych i form własnych dla zadań technicznych o dużym rozmiarze. 1. Kurs zawiera elementy matematyki algebry liniowej, algebry macierzy, teorii grafów, metod numerycznych, a również wymaga wiedzy z podstaw oprogramowania w języku C, C++, systemów operacyjnych i oprogramowania wielowątkowego. 3

2. Brak podręczników. Źródła literaturowe są rozrzucane po wielu książkach (podręcznikach z matematyki, metod numerycznych, podręcznikach z informatyki), artykułach w czasopismach naukowych, stronach www. Ten kurs leży na przecięciu metod numerycznych i informatyki. Często zadania symulacji komputerowej doprowadzają do rozwiązywania zadań numerycznych o dużym rozmiarze powstają układy równań liniowych i nieliniowych algebraicznych, zagadnienia wartości własnych, obliczenia numeryczne całek, całkowanie zagadnień Cauchy i t. d. Rozmiar współczesnych modeli różnych obiektów technicznych może wynosić od kilkaset tysięcy do kilka milionów równań. To jest jedną s osobliwości takich zadań. Drugą osobliwością jest to że najczęściej użytkownik pragnie rozwiązywać te zadania na komputerach biurowych i bardzo nie chętnie przechodzi na techniką obliczeniową wysokiej wydajności. 4

To są przykłady modeli obliczeniowych konstrukcji budowlanych 5

Model obliczeniowy stadionu 62 298 równań nieliniowych algebraicznych 6

Model obliczeniowy budynku terminala lotniska w Wilno 315 397 równań nieliniowych algebraicznych 7

Wielo-funkcjonalny kompleks Aquamarine we Władywostoku 8

Modele obliczeniowe budynków kompleksu 9

Model obliczeniowy budynku wielopiętrowego wieża 1 (881 908 równań ) 10

Model obliczeniowy cerkwi 316 509 równań liniowych algebraicznych 11

Model obliczeniowy budynku reaktora atomowego 1 807 218 równań liniowych algebraicznych 12

Model obliczeniowy budynku reaktora atomowego 1 807 218 równań liniowych algebraicznych 13

Konstrukcja powłokowa - 228 486 równań liniowych algebraicznych 14

Problem interakcji budynek grunt 2 763 181 równań liniowych algebraicznych 15

Model budynku wielopiętrowego z bloków betonowych w Mińsku 3 198 609 równań liniowych algebraicznych 16

Fragment konstrukcji inżynierskiej całkowanie równań ruchu (sejsmika) 17

3 najbardziej odpowiadające składowe: zastosowanie niezawodnych i optymalnych metod i algorytmów matematycznych. skuteczna praca ze wszystkimi poziomami hierarchii pamięci (pamięć główna, pamięć cache (podręczną), rejestry procesora). zrównoleglenie operacji na różnych etapach realizacji algorytmów. 18

FLOPS = (ilość operacji zmiennoprzecinkowych)/(czas wykonania) Jest naturalną miarą dla algorytmów, które powstają z zagadnień naukowotechnicznych (dominantowymi są operacji arytmetyczne zmiennoprzecinkowe), przecież nie jest przydatna do oceny wydajności innych rodzajów algorytmów (kompilatory, bazy danych, itp.) Operacje zmiennoprzecinkowe mogą być szybkimi i wolnymi. Stosunek trwałości różnych operacji zmiennoprzecinkowych: Operacje zmiennoprzecinkowe dodawanie, odejmowanie, porównanie, mnożenie 1 dzielenie, obliczenie pierwiastka kwadratowego 4 eksponenta, sinus,... 8 Stosunkowa trwałość 19

Pamięć główna systemu równoległego może być wspólną (shared memory) lub rozproszoną (distributed memory). Charakterystyki pamięci: Objętość (MB) wielopoziomowa pamięć podręczna (cache memory) szybka pamięć dla przechowywania tymczasowych danych bufory rozkazów i danych Wspólna pamięć procesory mają równoprawny dostęp (każdy z procesorów nie ma żadnej przewagi nad innymi) i równoznaczny (czas dostępu do dowolnej części pamięci jest taki samy). Zalety: związek między procesami i synchronizacja są proste, oprogramowanie mniej skomplikowane, niż w wypadku architektury z pamięcią rozproszoną. Wady: mają podstawowe ograniczenie na ilość procesorów krytycznym jest przepustowość magistrali. 20

Wieloprocesorowe systemy z jednorodnym dostępem do pamięci - UMA (Uniform Memory Access) Systema symetryczna wieloprocesorowa SMP (Symmetrical Multiprocessing) UMA Wielu procesorów są łączone jedną magistralą z tą samą pamięcią główną. Stan pamięci podręcznej każdego procesora ma spełnić warunku spójności danych. Przy odczycie danych procesor najpierw szuka te dane w pamięci podręcznej. Jeśli pamięć podręczna zawiera te dane (trafienie przy odczycie read-hit), dane pozostają pobrane z linii pamięci podręcznej. Jeśli tych danych nie ma w pamięci podręcznej (chybienie przy odczycie read miss), pozostaje przeładowywana cala linia pamięci podręcznej. Te same dane mogą być jednocześnie w pamięci podręcznej wielu procesorów. 21

W trakcie zapisu słowa dane są przechowywane w pamięci głównej i w pamięci podręcznej lokalnej (danego procesora). Inne pamięci podręczne wykonują snooping: jeśli to słowo jest zawarte w pamięci podręcznej jakiegoś innego procesora, zawartość całej linii cache tego procesora zgłasza się niepoprawnej (invalid). Po zakończeni zapisu pamięć główna będzie zmodyfikowana, a słowo będzie zawarte tylko w pamięci podręcznej tego procesora, który dokonał jego zmianę. Technika oprogramowania dla SMP systemów zwykłe polega na wielowątkowości 22

W przypadku architektury z rozproszoną pamięcią każdy z procesorów ma bezpośredni (szybki) dostęp do swoją własną pamięci, a dostęp do pamięci innego procesora jest wykonany przez specjalny mechanizm dostępu (na przykład, przez sieć) i dla tego jest wolny. Ta architektura nadaje możliwość zastosowania dużej ilości procesorów, przecież wymaga bardziej skomplikowanego oprogramowania, wydajność istotnie zależy od szybkości i intensywności użycia sieci. Technika oprogramowania MPI (Message Passing Interface) 23

Żeby połączyć przewagi architektury z pamięcią wspólną i architektury z pamięcią rozproszoną, powstała architektura mieszana z pamięcią wspólnie-rozproszoną (distributed shared memory) NUMA (Non-Uniform Memory Access): 24

Wielu procesorów, każdy ma własną fizyczną pamięć, dostęp do której jest szybki, i wspólną wirtualną pamięć. Jeśli procesor adresuje się do pamięci innego procesora, generuje się page fault, i jak obsługa sytuacji wyjątkowej, załadowuje się strona pamięci odległej. Dostęp do pamięci odległej jest wolny. 25