Lab_06:
Ćwiczenie:
- Proszę uruchomić pierwszy program
$lab_06_a.exe
- Proszę opisać kolejne cykle rozkazowe, jakie wykonuje procesor.
- Należy zamieścić wynik działania programu w sprawozdaniu.
|
|
- Proszę uruchomić drugi program
$lab_06_b.exe
- Należy zamieścić wynik działania programu w sprawozdaniu.
|
|
Lab_07
- Bez włączonej predykcji
Proszę uruchomić każdy z programów.
|
|
Na przykład:
$ lab_07.exe 4 false 1 -> Uruchomienie programu testowego nr 1, bez predyktora, z 4 potokami
W sprawozdaniu:
- Ile cykli wykonywał się każdy program?
- Dlaczego wystąpił pierwszy stall w każdym z programów?
Kolejno należy zmieniać ilość dostępnych potoków, od 1 do 5. Proszę opisać jak zmieniał się czas wykonania (ilość cykli). Z czego to może wynikać. Dla każdego przypadku proszę podać końcową zawartość pamięci. Na przykład:
|
|
- Z włączoną predykcją
Na przykład:
$ lab_07.exe 4 true 1 -> Uruchomienie programu testowego nr 1, bez predyktora, z 4 potokami
W sprawozdaniu:
- Ile cykli wykonywał się każdy program?
- Dlaczego wystąpił pierwszy stall w każdym z programów?
Kolejno należy zmieniać ilość dostępnych potoków, od 1 do 5. Proszę opisać jak zmieniał się czas wykonania (ilość cykli). Z czego to może wynikać.
Proszę wypisać wystapienia komunikatu: Instruction under this address can generate branch. Z czego wynika ten komunikat?
Instruction reordering
Proszę uruchomić program, opisać w sprawozdaniu jego wynik. Z czego wynika takie działanie programu? Należy przerwać wykonywanie zaraz po pojawieniu się pierwszych wyników.
$lab_10.exe
Lab_15
W poniższym programie przetestujemy dwa różne sposoby dostępu do pamięci: sekwencyjny i losowy. Porównamy czas wykonania obu podejść, które mogą wpływać na wykorzystanie pamięci cache.
Proszę uruchomić program, opisać w sprawozdaniu jego wynik.
|
|
Należy modyfikować ilość iteracji: 50 75 100, uruchamiając dla dostępu sekwencyjnego i losowego.
Lab_17
Proszę uruchomić program, opisać w sprawozdaniu jego wynik. Należy kilka razy zmodyfikować parametry:
-c 1024 -b 32 -n 10000 -m 2048
-c 1024 -b 64 -n 10000 -m 2048
-c 2048 -b 32 -n 10000 -m 4096
-c 2048 -b 64 -n 10000 -m 4096
- inna konfiguracja wg uznania z taką samą liczbą iteracji
- inna konfiguracja wg uznania z taką samą liczbą iteracji
|
|
Lab_18 - Prefetch
Proszę uruchomić program, opisać w sprawozdaniu jego wynik. Należy kilka razy zmodyfikować parametry:
-c 1024 -b 32 -n 10000 -m 2048 -d 1
-c 1024 -b 64 -n 10000 -m 2048 -d 2
-c 2048 -b 32 -n 10000 -m 4096 -d 4
-c 2048 -b 64 -n 10000 -m 4096 -d 8
- inna konfiguracja wg uznania z taką samą liczbą iteracji
- inna konfiguracja wg uznania z taką samą liczbą iteracji
$lab_18.exe -c 1024 -b 32 -n 10000 -m 1024 -d 8
-c, –cache size -b, –block size -n, –iteration -m, –memory size -d, –prefetch distance
|
|