Introduction to the linux systems in the computer room

Cuda SDK components (libraries, nvcc, nsight)

Cuda architecture (SIMT principle + memory design)

Basic cuda language extensions

Basic programming examples (vector addition in parallel etc)

Principle of random number generation in parallel (Skip ahead vs batch
approach)

Linear congruential random number generators

CURAND library and XORShift generators

Vector summation in parallel (reduction principle)

Concurrency and atomic operations

Monte-Carlo simulation for pricing derivates

Stochastic gradient algorithm for GPUs (HOGWILD)

Parallel design for word2vec algorithm with negative sampling

Introduction to cuDNN