OWW_L05_pomiar_wydaj..
Transkrypt
OWW_L05_pomiar_wydaj..
Obliczenia wysokiej wydajności Laboratorium: Pomiar wydajności procesora i układu pamięćprocesor Cel: ● wykonanie pomiaru wydajności procesora i układu pamięćprocesor za pomocą testów LINPACK i STREAM Zadania: 1. Utworzenie katalogu roboczego (np. lab_pom_wyd). 2. Skopiowanie do katalogu roboczego plików: linpack.tgz, stream.tgz 3. Rozpakowanie plików (najlepiej w dwóch różnych podkatalogach) 4. Uzyskanie informacji o teoretycznej wydajności procesora (MFLOPS – częstotliwość x drożność) i układu pamięć procesor (MB/s – magistrala, pamięć – częstotliwość x szerokość x drożność ) (np. z pliku /proc/cpuinfo, na jego podstawie z Internetu) 5. Uruchomienie testu STREAM i przeprowadzenie pomiaru wydajności – uwaga na obliczenie wyniku w teście STREAM, tzn. obliczenie liczby bajtów przesyłanych z pamięci do procesora a) wersja podstawowa – pomiar dla rozmiaru tablicy 10000000 – wynik liczbowy b) wersja rozszerzona – pomiary dla różnych rozmiarów w zakresie 1000010000000, wyniki na wykresie (oś x – rozmiar (skala może być logarytmiczna), oś y – czas) 6. Porównanie osiągniętych rezultatów z oszacowaniami teoretycznymi – czasem dostępu do pamięci przeliczonym na przepustowość i przepustowością układu pamięćprocesor (magistrala) 7. Uruchomienie testu LINPACK – uwaga na całość wydruku z LINPACKA: metodologię pomiaru (powtarzanie obliczeń, użycie dwóch rozmiarów tablicy – array padding, dokładność rozwiązania układu równań), obliczanie wyniku w MFLOPS 8. Przeprowadzenie pomiaru wydajności dla rozmiaru 1000 (z opcjami DP i SP, oraz UNROLL i ROLL) a) wersja rozszerzona – rozważenie różnych kompilatorów (gcc, icc) i różnych opcji kompilatora (O2, O3, fast, funrollallloops, wektoryzacja itp) 9. Przeprowadzenie pomiaru wydajności dla rozmiaru 100 (z opcjami DP i SP, oraz UNROLL i ROLL) a) wersja rozszerzona – rozważenie różnych kompilatorów (gcc, icc) i różnych opcji kompilatora (O2, O3, fast, funrollallloops, wektoryzacja itp) 10.Utworzenie tabel z wynikami – wydajność w GFLOPS dla różnych przypadków 11.Porównanie wyników testów i oszacowań teoretycznych 12.Wersja rozszerzona: a) przeprowadzenie serii kilkunastu pomiarów dla rozmiarów od 100 do 5000 b) zaznaczenie wyników pomiaru na wykresie (MFLOPS w zależności od rozmiaru zadania) 13. Przeprowadzenie testu dołączonym programem wykorzystującym zoptymalizowaną bibliotekę algebry liniowej – porównanie wydajności z osiągniętymi wcześniej i z teoretycznymi Warunki zaliczenia: 1. Obecność na zajęciach i wykonanie co najmniej wersji podstawowej zadań 2. Oddanie sprawozdania z krótkim odręcznym opisem zadania i wynikami. Prezentacja wyników powinna zawierać: 1. Dane o sprzęcie i oprogramowaniu użytym do testowania (procesor, zegar, chipset/płyta główna (taktowanie magistrali), pamięć podręczna, pamięć (typ, rozmiar), system operacyjny, kompilator, opcje kompilatora). Wzorem dla prezentacji mogą być raporty SPEC (www.spec.org/cpu2000/results) 2. Wyniki testów 3. Analizę wyników i własne wnioski (co i w jaki sposób wpływa na wydajność – np. na podstawie opcji LINPACKA, opcji kompilatora użytych do testów, wpływu rozmiaru danych na wydajność itp.)