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.

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

Wstęp. Przetwarzanie współbieżne, równoległe i rozproszone

Architektura mikroprocesorów TEO 2009/2010

16. Taksonomia Flynn'a.

Programowanie współbieżne i rozproszone

Nowoczesne technologie przetwarzania informacji

Architektura komputerów

Podstawy Informatyki Systemy sterowane przepływem argumentów

Algorytmy dla maszyny PRAM

PODSTAWY PRZETWARZANIA RÓWNOLEGŁEGO INFORMACJI

Architektura komputerów

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

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

Projektowanie. Projektowanie mikroprocesorów

PRZEWODNIK PO PRZEDMIOCIE

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

Klasyfikacje systemów komputerowych, modele złożoności algorytmów obliczeniowych

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

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

Programowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1

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

Larrabee GPGPU. Zastosowanie, wydajność i porównanie z innymi układami

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

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

Obliczenia Wysokiej Wydajności

Obliczenia Wysokiej Wydajności

Analiza i Synteza Układów Cyfrowych

Budowa Mikrokomputera

KARTA KURSU. Systemy operacyjne

Czujniki obiektowe Sterowniki przemysłowe

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

Introduction to Computer Science

Wykład Ćwiczenia Laboratorium Projekt Seminarium

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

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

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

Budowa komputera Komputer computer computare

SYSTEMY OPERACYJNE SYLABUS A. Informacje ogólne

Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia

3.Przeglądarchitektur

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

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

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

PRZEWODNIK PO PRZEDMIOCIE

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

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

4. Procesy pojęcia podstawowe

PRZEWODNIK PO PRZEDMIOCIE

4. Procesy pojęcia podstawowe

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

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

Jacek Naruniec. lato 2014, Politechnika Warszawska, Wydział Elektroniki i Technik Informacyjnych

Architektura Komputerów

Systemy operacyjne III

Mikroprocesory rodziny INTEL 80x86

Architektury komputerów Architektury i wydajność. Tomasz Dziubich

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z

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

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) niestacjonarne (stacjonarne / niestacjonarne)

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.

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

i3: internet - infrastruktury - innowacje

Architektura Komputerów

Systemy Informatyki Przemysłowej

Architektura Systemów Komputerowych. Architektura potokowa Klasyfikacja architektur równoległych

3.Przeglądarchitektur

Porównaj CISC, RISC, EPIC.

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2011/2012. Programowanie usług sieciowych

Architektura komputerów

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

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

Podstawy Techniki Mikroprocesorowej

System mikroprocesorowy i peryferia. Dariusz Chaberski

Spis treści. 1 Wprowadzenie. 1.1 Podstawowe pojęcia. 1 Wprowadzenie Podstawowe pojęcia Sieci komunikacyjne... 3

Architektura systemów komputerowych. dr Artur Bartoszewski

dr inż. Jarosław Forenc

Klasyfikacja systemów komputerowych. Architektura von Neumanna Architektura harwardzka Zmodyfikowana architektura harwardzka. dr inż.

Architektura Systemów Komputerowych 2

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

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z

Architektura komputerów

Wydajność obliczeń a architektura procesorów

Algorytmy i Struktury Danych

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

WYBRANE ZAGADNIENIA PRZETWARZANIA RÓWNOLEGŁEGO I ROZPROSZONEGO ORAZ KLASTRÓW KOMPUTEROWYCH

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Wykład 7. Architektura mikroprocesorów powtórka

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

Architektura systemów komputerowych

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

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

Systemy rozproszone System rozproszony

współbieżność - zdolność do przetwarzania wielu zadań jednocześnie

Oprogramowanie komputerów wer. 9

Architektura komputerów II - opis przedmiotu

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

Transkrypt:

Wstęp

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. Przedstawienie architektur sprzętu wykorzystywanych do obliczeń równoległych i współbieżnych. Nauczenie sposobów tworzenia i implementacji programów równoległych i współbieżnych Zapoznanie z technikami analizy programów współbieżnych Przedstawienie wybranych dziedzin zastosowań przetwarzania współbieżnego oraz występujących tam algorytmów

Wykłady Laboratoria Język C/C++ i Java System Linux Zadania -> sprawozdania Kolokwia Egzamin końcowy Zwolnienia -> 5.0 z laboratoriów

realizacja wielu programów (procesów) w taki sposób, że ich trwanie od momentu rozpoczęcia do momentu zakończenia może się na siebie nakładać współbieżność pojawiła się wraz z wielozadaniowymi systemami operacyjnymi (lata 60 te, Multics 1965) i nie wymusza równoległości współbieżność związana jest z szeregiem problemów teoretycznych wynikłych z prób realizacji wielozadaniowych systemów operacyjnych istnieje wiele mechanizmów niskiego poziomu (systemowych) do rozwiązywania problemów współbieżności

dwa lub więcej procesów (lub wątków) jednocześnie współpracuje (komunikując się wzajemnie) w celu rozwiązania pojedynczego zadania (najczęściej z określonej dziedziny zastosowań) rozwój związany z powstaniem w latach siedemdziesiątych komputerów równoległych problemy obliczeń równoległych (poza klasycznymi zagadnieniami współbieżności) są najczęściej związane z konkretną dziedziną zastosowań obliczenia równoległe były silnie związane z dziedziną obliczeń wysokiej wydajności (i obliczeniami naukowo technicznymi)

realizacja programów na systemach (najczęściej odrębnych komputerach) połączonych siecią, z zasobami lokalnymi rozwój związany z popularyzacją sieci komputerowych i Internetu w latach osiemdziesiątych i dziewięćdziesiątych XX wieku problem wspólnego korzystania z rozproszonych zasobów luźniejsze powiązanie współpracujących procesów niż w przypadku obliczeń równoległych (niekonieczna synchronizacja czasowa, zastępowana przez przyczynowo skutkową) wykorzystanie infrastruktury sieciowej (protokoły, bezpieczeństwo)

SISD (single instruction, single data) - przetwarzany jest jeden strumień danych przez jeden program. SIMD (single instruction, multiple data) - przetwarzanych jest wiele strumieni danych przez jeden wykonywany program (wektorowość). MISD (multiple instruction, single data) - wiele równolegle wykonywanych programów przetwarza jednocześnie jeden wspólny strumień danych (redundantność). MIMD (multiple instruction, multiple data) - równolegle wykonywane wiele programów, każdy przetwarza własne strumienie danych przetwarzanie współbieżne

CPU GPU Klastry Architektura klient-serwer

CISC (Complex Instruction Set Computing) występowanie złożonych, specjalistycznych rozkazów (instrukcji), które do wykonania wymagają od kilku do kilkunastu cykli zegara, szeroka gama trybów adresowania, rozkazy mogą operować bezpośrednio na pamięci (zamiast przesłania wartości do rejestrów i operowania na nich), skomplikowany dekoder rozkazów. mniejszy rozmiar programu i mniej odwołań do pamięci

RISC (Reduced Instruction Set Computing) Liczba rozkazów zredukowana do niezbędnego minimum (kilkadziesiąt CISC setki). Upraszczony dekoder rozkazów. Redukcja trybów adresowania (prostsze kody rozkazów) Ograniczenie komunikacji pomiędzy pamięcią a procesorem (dedykowane instrukcje load/store) Zwiększenie liczby rejestrów (CISC x86-8 rejestrów).

Na poziomie rdzenia Superskalarność Potokowość Wykonanie poza kolejnością (Out of order) Wielordzeniowość Wielowątkowość Multiprocesorowość Klaster obliczeniowy Na poziomie specjalizacji: GPU

Źródło: http://zstzbaszynek.pl/blog/2021,era-systemow-klient-serwer/

Żródło: http://www.nvidia.com/object/what-is-gpu-computing.html

Dziękuję za uwagę