Obliczenia wysokiej wydajności Laboratorium: Mnożenie macierzy

Transkrypt

Obliczenia wysokiej wydajności Laboratorium: Mnożenie macierzy
Obliczenia wysokiej wydajności
Laboratorium:
Mnożenie macierzy rzadkich
Cel: ●
●
implementacja mnożenia macierz­wektor dla macierzy rzadkich
testowanie poprawności i wydajności implementacji
Zadania:
1. Utworzenie katalogu roboczego (np. lab_mac_wekt).
2. Rozwinięcie opracowanego wcześniej programu generującego macierze rzadkie o wywoływane procedury mnożenia macierz­wektor 3. Utworzenie kilku macierzy o rozmiarach poniżej 1000x1000 i liczbie wyrazów niezerowych poniżej 100 000 i dokonanie sprawdzenia poprawności procedury mnożenia macierz­wektor dla macierzy rzadkich poprzez porównanie wyniku z wynikiem mnożenia zwykłym algorytmem iloczynu macierz­wektor dla macierzy zapisanej w standardowym formacie 4. Utworzenie macierzy o milionie wierszy i ok. stu wyrazach niezerowych w każdym wierszu czyli o 108 wyrazach niezerowych, wykonanie mnożenia macierz­wektor napisana procedurą, zmierzenie czasu działania i wyliczenie na podstawie pomiarów: wydajności uzyskanej przez procedurę, przepustowości układu w czasie wykonywania procedury oraz średniego czasu dostępu do pojedynczej danej (podwójnej precyzji). Warunki zaliczenia:
1. Obecność na zajęciach i wykonanie co najmniej kroków 1­4 dla macierzy rzadkiej w formacie CRS
2. Oddanie jednostronicowego sprawozdania z krótkim odręcznym opisem zadania (cel, realizacja – napotkane problemy i ich rozwiązanie, wnioski) oraz kodem źródłowym procedur mnożenia macierz­wektor w C