**Uwaga: bieżąca edycja przedmiotu zawiera 15 godzin wykładu i dodatkowo 15
godzin typu ćwiczeniowego, które będą miały formę seminarium. Wykład i
seminarium będą odbywały się w tych samych godzinach, w pierwszej połowie
semestru wykład, potem seminarium.**
Wspołczesne karty graficzne zawierają coraz większą moc obliczeniową w postaci
wielu rownoległych jednostek obliczeniowych, ktore do niedawna były
wykorzystywane tylko do generowania grafiki. Obecnie dostępne biblioteki
umożliwiają programowanie kart graficznych przy pomocy rozszerzeń języka C jak
np. biblioteka CUDA firmy NVIDIA. W ten sposob możemy dokonywać dowolnych
obliczeń często szybciej niż programując standartowo na CPU. Głownym celem
kursu jest nabycie umiejętności efektywnego programowania rownoległego w
technologii CUDA zagadnień nie tylko związanych z grafiką komputerową. W tym
celu konieczne jest poznanie architektury wspołczesnych kart graficznych i
ograniczeń ktore wpływają na wybor algorytmu i sposob implementacji na karcie
graficznej. Poza bibiloteką CUDA w ramach kursu omowione będą także
rozwiązania takie jak np. OpenCL, OptiX.
biegłe programowanie w języku C/C++ znajomość zagadnień grafiki komputerowej
David Kirk, Wen-mei Hwu - "Programming Massively Parallel Processors: A Hands-
on Approach" Morgan Kaufmann 2010. WWW:[NVIDIA
CUDA](http://www.nvidia.pl/object/cuda_home_new_pl.html) WWW:[NVIDIA CUDA
downloads](http://developer.nvidia.com/object/cuda_download.html)