Wydział Informatyki - Informatyka (S1)
specjalność: Inżynieria oprogramowania
Sylabus przedmiotu Programowanie komputerów heterogenicznych:
Informacje podstawowe
Kierunek studiów | Informatyka | ||
---|---|---|---|
Forma studiów | studia stacjonarne | Poziom | pierwszego stopnia |
Tytuł zawodowy absolwenta | inżynier | ||
Obszary studiów | charakterystyki PRK, kompetencje inżynierskie PRK | ||
Profil | ogólnoakademicki | ||
Moduł | — | ||
Przedmiot | Programowanie komputerów heterogenicznych | ||
Specjalność | Inżynieria oprogramowania | ||
Jednostka prowadząca | Katedra Inżynierii Oprogramowania | ||
Nauczyciel odpowiedzialny | Włodzimierz Bielecki <Wlodzimierz.Bielecki@zut.edu.pl> | ||
Inni nauczyciele | Sławomir Wernikowski <Slawomir.Wernikowski@zut.edu.pl> | ||
ECTS (planowane) | 3,0 | ECTS (formy) | 3,0 |
Forma zaliczenia | zaliczenie | Język | polski |
Blok obieralny | 6 | Grupa obieralna | 1 |
Formy dydaktyczne
Wymagania wstępne
KOD | Wymaganie wstępne |
---|---|
W-1 | Architektura systemów komputerowych |
W-2 | Programowanie 2 |
W-3 | Programowanie równoległe i współbieżne |
Cele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | Zapoznanie słuchaczy z heterogenicznymi środowiskami sprzętowymi. |
C-2 | Wykształcenie umiejętności tworzenia oprogramowania przeznaczonego do pracy w różnorodnych platformach heterogenicznych. |
Treści programowe z podziałem na formy zajęć
KOD | Treść programowa | Godziny |
---|---|---|
laboratoria | ||
T-L-1 | Implementacja wybranego problemu obliczeniowego w środowisku OpenM | 8 |
T-L-2 | Implementacja wybranego problemu obliczeniowego w środowisku OpenACC | 8 |
T-L-3 | Implementacja programu do renderingu obrazu wykorzystującego shadery GLSL do obliczenia koloru powierzchni | 4 |
T-L-4 | Implementacja programu przetwarzającego teksturę OpenGL w środowisku OpenCLa | 2 |
T-L-5 | Implementacja wybranego problemu obliczeniowego w środowisku Nvidia CUDA | 8 |
30 | ||
wykłady | ||
T-W-1 | Wprowadzenie do programowania w środowiskach heterogenicznych: podstawowe pojęcia, tło historyczne, taksonomie, problemy i rozwiązania | 2 |
T-W-2 | Charakterystyka wybranych środowisk heterogenicznych | 2 |
T-W-3 | Zastosowanie API OpenMP 4.0 do programowanie akceleratorów | 4 |
T-W-4 | Programowanie w środowisku OpenACC: wprowadzenie, aparat pojęciowy, prezentacja rozwiązań przykładowych | 4 |
T-W-5 | Programowanie w C/C++ z użyciem OpenACC | 4 |
T-W-6 | Programowanie w języku GLSL: Wprowadzenie do języka GLSL (kompilacja, uruchamianie w środowisku programu graficznego, narzędzia programistyczne) | 2 |
T-W-7 | Programowanie w języku GLSL: Podstawowe składniki języka na przykładzie programu obliczającego równanie oświetlenia | 2 |
T-W-8 | Przetwarzanie obrazów w środowisku OpenCL: Techniki reprezentacji i przetwarzania obrazów w środowisku OpenCL | 2 |
T-W-9 | Programowanie w języku C/C++ w środowisku Nvidia CUDA | 8 |
30 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | Uczestnictwo w zajęciach | 30 |
A-L-2 | Przygotowanie się do zajęć oraz rozwiązywanie zadań off-site | 8 |
38 | ||
wykłady | ||
A-W-1 | Uczestnictwo w zajęciach | 30 |
A-W-2 | Samodzielne studiowanie treści omawianych na wykładach | 4 |
A-W-3 | Przygotowanie do zaliczenia i udział w zaliczeniu | 2 |
A-W-4 | Udział w konsultacjach | 2 |
38 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | Wykład informacyjno-konwersatoryjny |
M-2 | Ćwiczenia laboratoryjne |
Sposoby oceny
KOD | Sposób oceny |
---|---|
S-1 | Ocena formująca: Ocena na podstawie stopnia wykonania scenariuszy konspektów laboratoryjnych, wymagań projektowych i/lub sprawozdania z zajec |
S-2 | Ocena podsumowująca: Egzamin (pytania zamknięte oraz otwarte) |
Zamierzone efekty uczenia się - wiedza
Zamierzone efekty uczenia się | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
I_1A_D02.10.2_W01 Student rozumie techniki konstrukcji, specyfikę i charakterystykę środowisk heterogenicznych | I_1A_W03 | — | — | C-1 | T-W-1, T-W-2 | M-1 | S-2 |
I_1A_D02.10.2_W02 Student zna wybrane języki programowania stosowane w środowiskach heterogenicznych | I_1A_W04 | — | — | C-2 | T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-W-8, T-W-9 | M-1 | S-2 |
Zamierzone efekty uczenia się - umiejętności
Zamierzone efekty uczenia się | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
I_1A_D02.10.2_U01 potrafi pisać, uruchamiać i profilować programy przeznaczone do pracy w środowiskach heterogenicznych | I_1A_U09 | — | — | C-2 | T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-W-8, T-W-9 | M-2 | S-1 |
Zamierzone efekty uczenia się - inne kompetencje społeczne i personalne
Zamierzone efekty uczenia się | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Odniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżyniera | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|---|
I_1A_D02.10.2_K01 Student jest kreatywny i przygotowany do wykorzystywania różnorodnych źródeł wiedzy | I_1A_K02 | — | — | C-2 | T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-W-1, T-W-2, T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-W-8, T-W-9 | M-2 | S-1 |
Kryterium oceny - wiedza
Efekt uczenia się | Ocena | Kryterium oceny |
---|---|---|
I_1A_D02.10.2_W01 Student rozumie techniki konstrukcji, specyfikę i charakterystykę środowisk heterogenicznych | 2,0 | |
3,0 | potrafi wymienić podstawowe charakterystyki środowisk heterogenicznych | |
3,5 | ||
4,0 | potrafi wymienić dowolne charakterystyki środowisk heterogenicznych | |
4,5 | ||
5,0 | zna wybrane konkretne środowiska heterogeniczne | |
I_1A_D02.10.2_W02 Student zna wybrane języki programowania stosowane w środowiskach heterogenicznych | 2,0 | |
3,0 | rozumie techniki programowania heterogenicznego i potrafi czytać kod zapisany w wybranych językach programowania heterogenicznego | |
3,5 | ||
4,0 | zna techniki programowania heterogenicznego i potrafi pisać kod zapisany w wybranych językach programowania heterogenicznego | |
4,5 | ||
5,0 | biegle zna techniki programowania heterogenicznego i potrafi pisać kod zapisany we wszystkich omówionych językach programowania heterogenicznego |
Kryterium oceny - umiejętności
Efekt uczenia się | Ocena | Kryterium oceny |
---|---|---|
I_1A_D02.10.2_U01 potrafi pisać, uruchamiać i profilować programy przeznaczone do pracy w środowiskach heterogenicznych | 2,0 | |
3,0 | potrafi czytać oraz pisać proste programy przeznaczone do pracy w środowiskach heterogenicznych | |
3,5 | ||
4,0 | potrafi czytać oraz pisać dowolne programy przeznaczone do pracy w środowiskach heterogenicznych | |
4,5 | ||
5,0 | biegle potrafi czytać oraz pisać dowolne programy przeznaczone do pracy w środowiskach heterogenicznych |
Kryterium oceny - inne kompetencje społeczne i personalne
Efekt uczenia się | Ocena | Kryterium oceny |
---|---|---|
I_1A_D02.10.2_K01 Student jest kreatywny i przygotowany do wykorzystywania różnorodnych źródeł wiedzy | 2,0 | |
3,0 | dostateczna umiejętność samodzielnego szukania i wykorzystania informacji, wymaga bardzo częstej pomocy nauczyciela | |
3,5 | ||
4,0 | dobra umiejętność samodzielnego szukania i wykorzystania informacji, wymaga rzadkiej pomocy nauczyciela | |
4,5 | ||
5,0 | wyróżniająca umiejętność samodzielnego szukania i wykorzystania informacji, potrafi bez pomocy nauczyciela wykonać wszystkie ćwiczenia laboratoryjne zgodnie z otrzymanymi konspektami |
Literatura podstawowa
- R. Gerber, Getting Started with OpenMP, Intel, https://software.intel.com/en-us/articles/getting-started-with-openmp
- R.J. Rost, OpenGL Shading Language, Addison-Wesley
- NVidia, CUDA C Programming Guide, http://docs.nvidia.com/cuda/pdf/CUDA_C_Programming_Guide.pd
Literatura dodatkowa
- OpenMP Architecture Review Board, OpenMP Application Programming Interface, http://www.openmp.org/wp-content/uploads/openmp-4.5.pdf
- Khronos OpenCL Working Group, The OpenCL Specification, https://www.khronos.org/registry/OpenCL/specs/opencl-1.1.pdf