VSB-TUO

poli homepage



Do not adjust to the system. Adjust the system!

Architektury počítačů a paralelních systémů (APPS)

Verze Covid Online, letní semestr 2020/21

  1. Zkouška
  2. Odkazy, informace, požadavky
  3. Cvičení
  4. Přednášky

Zkouška

Požadavky pro zkoušku

Vedení fakulty nechce testovat studenty a zkouška tak proběhne ústní formou online.

Nepodceňujte přípravu na zkoušku. Poslední týden června už nemusí být dostatek místa na zkouškách pro opravné termíny. Přidělení místa na zkoušce losem by se určitě mnohým nelíbilo, stejně jako způsob: "kdo dřív přijde, ten dřív mele". Způsob přípravy na zkoušku: "já to nějak okecám" není dobrý nápad. Pokud se někdo bude opakovaně vymlouvat, že si ze cvičení nic nepamatuje, nebo že "to vždycky jen kopíroval", tak není nic jednoduššího, než zrušit zápočet a cvičení si za rok zopakovat. Na dlouhé přemýšlení u zkoušky není časový prostor, takže opakované výmluvy "nevím jak to říci", nedovolí zvládnout zkoušku v časovém termínu 45 minut. O dobré přípravě na zkoušku také nesvědčí podesáté zopakované "nevím", případně "nevím, na co jsem tázán".

  • Na zkoušku se studenti přihlašují prostřednictvím e-mailu, termíny jsou vypsány v IS Edison.
  • Ke zkoušce budou přihlašování jen studenti s platným zápočtem.
  • Pro online spojení během zkoušky bude použit meet, pro připojení k meet-u využijí studenti školní google účet, během zkoušky budou studenti mít zapnutou kameru a tuto budou mít umístěnu před sebou nad monitorem a aktivují si i sdílení desktopu. Odkaz na meet bude k dispozici před zkouškou,
  • v IS Edison budou mít studenti po dobu zkoušky povoleno zobrazení své fotografie,
  • během zkoušky nebudou studenti používat sluchátka a budou v místnosti sami,
  • pokud budou studenti během zkoušky vyzváni, aby něco napsali či nakreslili, bude k tomu účelu využit program "draw io" a bude použit sdílený dokument uložený na gdrive. Pro testovací účely byl vytvořen APPS-test. Studenti si ověří dostupnost dokumentu jeho otevřením. Vyzkouší si vykreslení primitivního obrázku z obdélníků, koleček a čar. Vyzkouší si také kreslení rukou (nahoře pod ikonou +). Odkaz na dokument pro zkoušku bude k dispozici společně s odkazem na meet před zkouškou.
  • Pokud se ukáže kvalita spojení přes meet jako nedostatečná a nebude možno si rozumět, bude při první zkoušce výsledek anulován. Při dalších termínech už ale bude v takovýchto případech zkouška hodnocena jako "nevyhověl".
  • Pořadí zkoušení bude určeno programem "losovani" a program bude spuštěn na serveru linedu.vsb.cz v adresáři /tmp, kde je uložen i se zdrojovým kódem.
  • Pro komunikaci během zkoušky bude sloužit v Matrixu místnost "APPS-Exam". Do místnosti vstoupí zkoušení studenti ráno před zkouškou a po zkoušce místnost opustí.

Témata ke zkoušce jsou dána osnovu předmětu v IS Edison, podrobnější osnova i se studijními materiály je k dispozici na stránkách předmětu. Osnova obsahuje 10 základních tématických okruhů, jak teoretických, tak i praktických. Ke každému okruhu by měli být student schopni samostatně věcně hovořit cca 15 minut. Zkouška však nemůže trvat 150 minut, takže ke každému tématu bude položena upřesňující otázka. Maximální délka zkoušení bude 45 minut.

Důležité odkazy, informace a požadavky

  • Informace k organizaci předmětu APPS pro online výuku Covid online
  • Studijní materiály.
  • Úkoly budou zadávány a řešení úkolů budou odevzdávána do systému Kelvin.
  • Pro vzájemnou komunikaci je možno kromě e-mailu (využívejte přednostně školní e-mail) používat Matrix. Zde je možno se spojit i dalšími vyučujícími tohoto předmětu. Mohou si vytvořit i vlastní místnost a budou Vás o tom informovat.
  • Image připraveného virtuální počítače s OS Ubuntu 20.04 pro VirtualBox naleznete na GDrive.
    Verze s ovladačem VBoxSVGA.
    Když nebude první verze fungovat, můžete zkusit verzi s VMSVGA.
    Image importujte do VirtualBoxu přes menu File. Uživatel i heslo je apps.
    Pokud budete mít vlastní verzi OS Linux, budete si muset případné odlišnosti, instalace, konfigurace a problémy řešit sami.
    Seznam balíčků, které bude potřeba doinstalovat:
    • sudo apt install gcc g++ nasm make cmake git
    • Kdo chce Eclipse-C++: Packages
    • Java pro Eclipse: sudo apt install openjdk-14-jdk
    • A později pro CUDU: sudo apt install libopencv-dev nvidia-nsight nvidia-cuda-toolkit

  • Pro práci je možno a později i bude nutno (cca od 4.-5. týdne semestru) využívat školní počítače. Pro přístup do školy bude potřeba mít aktivní VPN připojení. Pokud se Vám stránka zobrazí anglicky, přepněte si vpravo nahoře češtinu.
    Počítače, na které se můžete hlásit do školy a pracovat na nich vzdáleně:
    • linedu.vsb.cz
    • pcfeib430-022-187.vsb.cz
    • .... až ....
    • pcfeib430-022-202.vsb.cz
    Později pro práci s GPU budou přidány ještě další.
    Není-li ve virtuálním počítači funkční DNS, změňte si nastavení VPN na vsb_localinet, viz: další možnosti nastaveni.
  • Pro vzdálené přihlašování dozajista snazší práci zajistí přihlašování bez hesla pomocí vygenerované dvojice privátního a veřejného klíče. Krátký návod využívající pouze dva příkazy najdete např. v dokumentaci ssh. Na internetu je i řadu dalších návodů, ale mnoho z nich nabízí složitější řešení plynoucí z neznalosti příkazů ssh.
  • Aktivujte si školní Google účet, pokud už ho aktivovaný nemáte. Počáteční heslo školního Google účtu naleznete na http://uzivatel.vsb.cz, kde po přihlášení v záložce Uživatelský účet je stránka LDAP účet a mezi informacemi ... G Suite.
  • Odkaz na Meet pro online komunikaci, např. pro konzultace, dotazy i během cvičení. Připojení proběhne automaticky, když budete přihlášení školním účtem. Cizí účty budou zamítány.
  • Pro online připojení přes Meet nebo jiné platformy mějte prosím kameru a v Edisonu povolené zobrazení fotografie. Kamera bude samozřejmě potřeba jen krátce. Pokud se připojujete pro dotazy a konzultaci, bude potřeba hlavně sdílení desktopu.

Cvičení

  • Online cvičení budou probíhat v čase přednášky, t.j. v úterý od 10:45 do 13:00. Na vypracování úkolů tak budou mít všichni o 45 minut více času. Přednášky jsou a další budou připraveny jako videa, viz dále.
  • Všechna témata cvičení budou v OS Linux. Kdo nemá instalován OS Linux na svém počítači, může využít připravený virtuální počítač, viz výše. Nebo je možno pracovat vzdáleně na počítačích v učebně, viz seznam počítačů výše.
  • Předběžný plán online cvičení bude složen ze třech bloků:
    1. Assembler, 5 cvičení, 18 bodů, minimum 9 bodů.
    2. Programování s vlákny, 3 cvičení, 9 bodů, minimum 5.
    3. CUDA, 5 cvičení, 18 bodů, minimum 9 bodů.
    Bude-li povolena laboratorní výuka, bude program upraven.
  • Úkoly budou zadány v systému Kelvin, viz výše, a výsledky se do tohoto systému budou i odevzdávat.
  • Opravy cvičení budou možné vždy 2 týdny po skončení tématu a budou online. Neopravuje se konkrétní cvičení, každý si odpracuje tolik práce, kolik bodů mu chybí a témata budou za celý blok.
  • Snažte se v daném bloku získat co nejvíce bodů hned od začátku, složitost témat bude postupně narůstat.
  • Mějte na paměti, že předmět za 6 kreditů odpovídá dle ECTS požadavku na 180 hodin (1 hodina je 60 minut) práce. Během semestru to odpovídá požadavku cca 6 hodin na jedno cvičení. Očekává se tedy odpovídající příprava na cvičení.
  • Případy opisování, odevzdávání cizích programů, či jiné podvádění, bude klasifikováno jako vážné porušení studijního řádu s odpovídajícími důsledky.

Program cvičení

  1. CUDA: Jednoduché manipulace s daty.
    • Přenos pole mezi GPU/CPU a jednoduché algoritmy, např. součet dvou vektorů.
    • Rozšíření struktury CudaImg (cuda_img.h) o metodu type at( int y, int x ) pro snadnější přístup k prvkům pole pomocí dvou indexů, podobně jako u cv::Mat. Možné také vytvoření operátoru [].
    • Načtení obrázku a jednoduchá úprava, např, odstranění požadované barvy, prohození barev a pod. Využití metody at().
  2. CUDA: Manipulace s obrázky, výstupem bude nový obrázek:
    • zvětšení či zmenšení obrázku,
    • rotace obrázku,
    • vložení či výřez z obrázku.
  3. CUDA: Manipulace s obrázky, použití alfa kanálu a vykreslení fontu:
    • vložení obrázku s alfa kanálem do dalšího obrázku,
    • vypsání textu do obrázku zadaným fontem, vložení textu do obrázku s alfa kanálem.
  4. CUDA: Manipulace s obrázky, opakování jednoduché operace z předchozích cvičení pro vytvoření jednoduché animace/sekvence snímků.
  5. CUDA: Pokračování v předchozích tématech. Antialiasing?

Přednášky

Osnova předmětu je uvedena v IS Edison a podrobněji i na stránkách předmětu. Pro teoretickou část předmětu jsou k dispozici přehledné studijní materiály a nebudou k těmto studijním textům přidány další audio či video nahrávky. Jde zejména o témata: procesory, mikropočítače, paměti a displeje.

Obsahem následujích videopřednášek jsou zejména témata praktická, která je nutno zvládnou během semestru pro získání zápočtu. Kromě praktických ukázek obsahují i teoretické části nutné pro zvládnutí dané problematiky. Videopřednášky mají svou formou nahradit praktickou výuku v laboratořích, kdy je možno se studenty přímo komunikovat, radit, upozorňovat je na chyby a zodpovídat rychlé dotazy. Při online výuce musí studenti pracovat mnohem samostatněji.

Přednášky k praktické části předmětu jsou částečně připraveny ve formě videí a některé chybějící budou postupně doplněny.

  1. Pár slov úvodem pro letní semestr 2020/21.
  2. Přednáška:
    1. Způsoby práce
    2. Popis registrů, adresování a spojování C a Assembleru
    3. Praktické ukázky
  3. Přednáška:
    1. Paměťové přesuny v C a ladění aplikace
    2. Bitové a aritmetické operace
    3. Podmíněné skoky
  4. Přednáška:
    1. Volání funkcí - úvod
    2. Příklady volání funkcí s parametry a návratovými hodnotami
  5. Přednáška: násobení, dělení
    1. Instrukce násobení a dělení
  6. Přednáška: volání funkcí, práce s lokálními proměnnými.
    1. Podmíněný přesun CMOVcc, zásobník a volání funkce
  7. Přednáška pro první dva týdny cvičení zaměřených na programování ve vláknech: APPS-Vlákna-Pr-0b0000.
  8. Přednáška: vlákna, opět malý oslí můstek mezi tématy. Vlákna budou využita pro vykreslování maticového/rastrového fontu pomocí knihovny OpenCV - APPS-Vlákna-Pr-0b0001.
  9. Přednáška CUDA
    Úvodní videopřednáška pro první dva týdny cvičení: APPS-CUDA-Pr-0b0000.
  10. Přednáška CUDA
    Přednáška pro třetí a čtvrtý týden cvičení: APPS-CUDA-Pr-0b000.
  11. Teorie: Arcitektura počítače.


Design by poli 2021