odp na pytania

Transkrypt

odp na pytania
1. Co to jest lista top 500. OK
2. Omów mikrotechnologię Core. 1/2 OK
3. Reguła Amdahl'a. OK
4. Porównaj CISC, RISC, OK EPIC.
5. Taksonomia Flynn'a. OK
6. Omów MIMD, SIMD, SISD. OK to jest do Taksonomi
7. Omów metody poprawy wydajności procesora. OK
8. Omów SMP oraz MPP. OK
9.Opisz benchmark Linpack. OK
10. Opisz benchmark SPEC. OK
11.Omów sposoby określania wydajności komputerów. OK
- Podaj sposoby organizacji pamięci dla maszyn wieloprocesorowych.
- Wymień sposoby klasyfikacji maszyn wieloprocesorowych.
1. TOP500 jest listą 500 najwydajniejszych systemów komputerowych na świecie, których moc mierzona jest za
pomocą benchmarka LINPACK. Pierwsza lista została opublikowana w czerwcu 1993 roku i od tamtej pory jest
aktualizowana dwa razy rocznie - w czerwcu i w listopadzie. Zestawienie w formie tabeli zawiera następujące pola:
Pozycja - pozycja osiągnięta w rankingu TOP500,
Rdzenie - liczba rdzeni, typy rdzeni
Rok - rok produkcji lub ostatniej większej zmiany,
Rmax - maksymalna wydajność osiągnięta w teście LINPACK
Rpeak - teoretyczna wydajność szczytowa
Moc - moc całego systemu mierzona w kilowatach
2. Core Duo to rodzina procesorów 32 bitowych. Procesory te zawierają 151 milionów tranzystorów, wliczając w
to 2 MB cache L2. W Core Duo zastosowano 12-fazowy potok wykonawczy, co pozwoliło na osiągnięcie
maksymalnej częstotliwości taktowania 2,33-2,5 GHz. Dostęp do pamięci cache L2 za pomocą wspólnego
kontrolera przyspiesza procedury zachowania spójności pamięci cache, jednak wydłuŜa opóźnienia w dostępie do
niej (z 10 cykli w Pentium M do 14 w Core). Core, pomimo tego, iŜ uŜywał podstawki Socket M, tej samej, której
uŜywały procesory Pentium M, nie był obsługiwany przez starsze chipsety. Chipsety, które obsługiwały procesory
Intel Core: 945GM, 945PM, 945GT, 965GM, 965PM, oraz 965GT. Szyna systemowa taktowana była standardowo
częstotliwością 667 MHz (166 MHz Quad Pumped Bus)
3.Prawo Amdahla, znany równieŜ jako argument Amdahla, nosi nazwę komputera architekta Gene Amdahl i jest
uŜywany do znajdowania maksymalnego oczekiwać poprawy całego systemu, gdy tylko część systemu jest lepsza.
Jest często uŜywany w równoległego do przewidywania teoretyczne maksymalne przyspieszenie korzystania z
wielu procesorów. Przyspieszenie programu wykorzystaniem wielu procesorów przetwarzania równoległego jest
ograniczony przez czas potrzebny do kolejnych części programu. Na przykład, jeśli program wymaga 20 godzin
przy uŜyciu jednego rdzenia procesora, a zwłaszcza część 1 godziny nie moŜe odbywać się równolegle, natomiast
pozostałe obiecujących część 19 godzin (95%) moŜe odbywać się równolegle, to bez względu na liczbę
procesorów poświęcamy do realizacji tego programu, minimalny czas wykonania nie moŜe być mniejsza niŜ 1
godzina krytycznych. Stąd przyspieszenie jest ograniczona do 20
4. Architektura CISC, Complex Instruction Set Computing processor, architektura konwencjonalnych
procesorów, charakteryzująca się znaczną liczbą elementarnych rozkazów i trybów adresowania przy niewielkiej
liczbie rejestrów uniwersalnych.
Architektura RISC, Reduced Instruction Set Computing/Computer, wywodząca się z Berkeley (1985)
koncepcja architektury procesora o ograniczonej liczbie krótkich (najwyŜej dwusłowowych) rozkazów mających
niewiele formatów i trybów adresowania, rozporządzającego znaczną liczbą rejestrów uniwersalnych (nawet
powyŜej 100). Operacje kontaktu z pamięcią są sprowadzone do czytania i pisania, działanie procesora
przyśpieszają dodatkowe ulepszenia w postaci przetwarzania potokowego i pamięci podręcznej. RISC jest
popularną architekturą procesorów 32- i 64-bitowych. Przykładem architektury RISC jest mikroprocesor PowerPC.
Architektura EPIC Very Long Instruction Word; Cechy: przeglądanie instrukcji przed wykonaniem - technika
predykcji wykorzystanie długich rozkazów stałej długości (nowy format 128b zawierający 3 instrukcje) moŜliwość
eliminacji rozgałęzień kodu - technika predykcji procesor ITANIUM.
5. Taksonomia Flynna (angielskie Flynn's taxonomy), schemat klasyfikacji systemów komputerowych
zaproponowany przez M. J. Flynna w 1972, stosowany do dzisiaj, choć juŜ niewystarczający.
Stosownie do liczby strumieni instrukcji i danych taksonomia Flynna wyróŜnia następujące klasy komputerów:
6.— SISD – komputer z jednym strumieniem instrukcji i jednym strumieniem danych, tradycyjny system
jednoprocesorowy;
— SIMD – jeden strumień instrukcji, wiele strumieni danych (taką architekturę mają procesory macierzowe);
— MISD – zwielokrotniony strumień instrukcji i jeden strumień danych (brak reprezentantów);
— MIMD – wiele strumieni instrukcji i danych, czyli kaŜda grupa niezaleŜnych komputerów. Kategoria MIMD dzieli
się współcześnie na kilka dalszych podkategorii.
7.Omów metody poprawy wydajności procesor - Naturalny pomysł zwiekszania wydajnosci obliczeniowej
procesora polegajacy na zwiekszaniu częstotliwości taktowania jest ograniczony przez róznego rodzaju bariery
technologiczne:
• wydzielanie ciepła;
• czas propagacji sygnałów w układach cyfrowych.
Zwiekszenie wydajnosci uzyskuje sie, stosujac nastepujace rozwiazania:
• pobieranie instrukcji na zakładke;
• kolejka (bufor) instrukcji;
• przetwarzanie potokowe;
• zrównoleglanie wykonywania instrukcji.
Kolejny istotny problem hamujacy wzrost wydajnosci systemów komputerowych jest spowodowany
nienadąŜaniem wzrostu szybkosc pracy pamieci za wzrostem szybkosci pracy procesorów. Uwidacznia sie to w
postaci róznych czestotliwosci taktowania i róznych napiec zasilajacych układy wewnetrzne procesora i jego układy
współpracy z szynami. Mozliwe rozwiazania tego problemu to:
• stosowanie wielopoziomowych pamieci podrecznych, poczatkowo zewnetrznych, a obecnie wykonywanych w
jednym układzie scalonym z procesorem;
• zwiekszanie szerokosci szyny danych;
• konstrukcja pamieci umozliwiajacych pobieranie danych co jeden cykl zegara, a nawet dwa razy w jednym cyklu
zegara.
8 .SMP (ang. Symmetric Multiprocessing, przetwarzanie symetryczne) - architektura komputerowa która pozwala
na znaczne zwiększenie mocy obliczeniowej systemu komputerowego poprzez wykorzystanie 2 lub więcej
procesorów do jednoczesnego wykonywania zadań. W architekturze SMP kaŜdy procesor moŜe zostać przypisany
do wykonywania kaŜdego zadania, tak aby wyrównać obciąŜenie ("obowiązki" są dzielone "po równo"). W
architekturze SMP procesory te współdzielą zasoby pamięci oraz wejścia/wyjścia przy pomocy magistrali. WaŜną
rzeczą jest wykorzystanie wielowątkowości przez programy komputerowe (oraz obsługa wielowątkowości przez
system operacyjny) - upraszcza to moŜliwość "podzielenia" procesu dla kilku procesorów. Szczególną korzyść z
przetwarzania równoległego czerpią aplikacje do renderingu i edycji wideo oraz nowoczesne gry, małą natomiast
pakiety biurowe.
Systemami obsługującymi SMP jest większość Uniksów, Windows NT, BeOS.
Alternatywną architekturą do SMP jest MPP - przetwarzanie równoległe.
8. MMP (Massively Parallel Processors, Komputery masowo równoległe) – rodzaj architektury komputerowej.
Jej zadaniem jest umoŜliwienie przetwarzania współbieŜnego (jednoczesnego) na wielu procesorach.
Do najistotniejszych realizowanych funkcji naleŜą:
• zarządzanie przydziałem zasobów komputera równoległego do procesów i organizacja komunikacji między
procesami
• szeregowanie zadań (procesów) w czasie i przestrzeni
• zarządzanie pamięcią wirtualną
• rekonfiguracja systemu i redystrybucja zasobów między procesami w przypadku awarii jednego z węzłów.
9. BENCHMARK LINPACK - Benchmark został wprowadzony przez Jack’a Dongarra w 1979 roku. Początkowym
przeznaczeniem była pomoc uzytkownikom w oszacowaniu czasu niezbednego do wykonania obliczen. Ten zestaw
testów wydajnosci polega na obliczeniu
rzadkiego układu równan, czyli takiego, który po zapisaniu w postaci macierzy bedzie posiadał wiele zer. Mozliwe
jest modyfikowanie rozmiaru macierzy oraz kompilacja benchmarku w sposób zoptymalizowany pod dana
architekture systemu. Proces optymalizacji nie wpływa na całosciowa wydajnosc systemu, z wyłaczeniem
systemów dedykowanych do rozwiazywania tego typu układów równan. Jesli problem jest regularny uzyskana
wydajnosc jest bardzo wysoka, i otrzymany wynik daje dobre przyblizenie maksymalnej wydajnosci. Mierzac
wydajnosc dla problemów o róznym rozmiarze n (rozmiar uzywanej macierzy)
otrzymuje sie wyłacznie maksymalna wydajnosc dla problemu o rozmiarze n oraz dla problemu o rozmiarz 1/2 n,
gdzie bierze sie pod uwage połowe otrzymanej maksymalnej wydajnosci. W raportach z testów podaje sie
maksymalna teoretyczna wydajnosc, maksymalna rzeczywista wydajnosc dla problemu o rozmiarze n i dla
problemu o rozmiarze 1/2 n. Wszystkie algorytmy wykonuja operacje na licznach zmiennoprzecinkowych
podwójnej precyzji. Takie wymogi wykluczaja mozliwosc stosowania bardzo szybkich algorytmów mnozenia
macierzy, metod działajacy z precyzja mniejsza niz maksymalna mozliwa (zakłada sie 64-bitowa arytemtyke) oraz
stosowanie przyblizen. Benchmark jest złozony z 3 testów opisanych ponizej.
10. BENCHMARK SPEC
Nazwa SPEC pochodzi od nazwy organizacji ”The Standard Performance
Evaluation Corporation”, która zajmuje sie tworzenie, rozwojem, akceptacja i
standardyzacja zestawów benchamarków, które moga byc wykorzystywane w
wysoko wydajnych komputerach i serwerach najnowszej generacji. Benchmarki
sa pisane w jezykach niezaleznych od stosowanej platformy (naczesciej C i Fortran).
Organizacja SPEC powstała w 1988 roku. Składa sie z najwazniejszych
producentów sprzetu i oprogramowania na rynku.
Benchmark SPEC składa sie z czesci mierzacych wydajnosc w nastepujacych
kategoriach:
1. CPU
2. Grafika/Aplikacje graficzne
3. MPI/OPM
4. Java Klient/Serwer
5. Serwery poczty
6. Sieciowe systemy plików
7. Zasilanie
8. SIP
9. Wirtualizacja
10. Serwery stron WWW
11. Klasyczne miary wydajności komputerów - W celu określenia wydajności systemów komputerowych
posługujemy się dwiema jednostkami: FLOPS, MIPS.
Miara MIPS - Milion Instruction Per Second, brak sprecyzowania co do rodzajów instrukcji oraz języka zapisu
algorytmów. Producenci podają osiągnięcia maksymalne (peak) - otrzymane w oparciu o czas realizacji
najszybszych, czyli najprostszych instrukcji.
Redefinicja pojęcia MIPS: przyjmuje się, Ŝe szybkość 1 MIPS ma komputer DEC VAX 11/780.
Najpopularniejsze zastosowanie: ocena wydajności komputerów typu centralnego (mainframes), superserwerów
IBM (firma podaje wyniki swoich komputerów tylko za pomocą tej miary, dlatego inni producenci takŜe starają się
szacować osiągi swoich produktó w jednostkach IBM MIPS).
Miara MFLOPS (Mflops-s) - milion operacji zmiennoprzecinkowych na sekundę, tradycyjna jednostka szybkości
komputerów w zakresie obliczeń numerycznych. Producenci podają zazwyczaj wartość maksymalną (peak
Mflop/s), lub teoretyczną (Rpeak) - czyli iloczyn droŜności (ilość operacji zmiennoprzecinkowych realizowanych w
jednym cyklu procesora) i częstotliości zegara taktującego.
Cechy miar wydajności
•
•
•
•
•
•
•
reprezentacja rzeczywistych zastosowań,
dobra metryka: liniowa, monotoniczna, ortogonalna,
zapis w językach wysokiego poziomu (przenośność),
łatwość modyfikacji, dostosowania do zmian wynikających z postępu technologicznego,
objęcie moŜliwie najszerszego zakresu testowanych elementów komputera (nie tylko procesora i pamięci),
łatwość wykonania pomiaru,
akceptacja przez uŜytkowników i producentów.
Tendencje rozwojowe procesorów• Rozpowszechnienie się technologii innej niŜ RISC, ze szczególnie
znaczącym udziałem technologii EPIC.
• Rozwój metod kompilacji dla potrzeb technologii EPIC. UmoŜliwi to wykorzystanie w pełni nowej technologii
EPIC, poprzez utworzenie kodu wykorzystującego zmiany kolejności obliczeń (ang. out-of-order) oraz obsługę
instrukcji warunkowych juŜ na etapie kompilacji, a nie podczas realizacji obliczeń.
• Technologia EPIC, w szczególności VLIW znajduje zastosowanie takŜe u producentów innych niŜ Intel.
• Optymalizacja procesorów pod kątem dwóch typów systemów operacyjnych (Unix i WindowsNT) oraz
integracja tych środowisk. • Dalszy rozwój technologii miedzianej oraz wprowadzenie technologii Silikon on
Insulate
LINEPACK - został zaprojektowany w latach 70. i na poczatku lat 80. jako zestaw
procedur jezyka Fortran, które analizuja i rozwiazuja równania liniowe oraz liniowe
problemy o złozonosci przynajmniej kwadratowej. Ponadto w pakiecie
zaimplementowano rozwiazywanie układów równan w postaci róznych macierzy
(m.in. trójkatnych, o nieokreslonej symetrii). Sam Linpack został oparty na
innym pakiecie (BLAS poziom 1), który zawiera podstawowe operacje na wektorach.
Obecnie Linpack jest wypierany przez Lapack, który został zaprojektowany
tak by wydajniej pracowac w systemach z pamiecia współdzielona.