Skip to content

nikwilldoit/Parallel-Programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parallel Programming Course

This repository contains the projects from the Parallel Programming course taught by Andreas Vasilakis.

Exercises on Topics:

CUDA

Experiments include: here

  • Barrier synchronization
  • Thread-per-block configuration
  • Workload distribution
  • GPU memory models (Global vs Shared/Local Memory)
  • Analytic results are included in the pdf report

OpenMP

Numerical integration implementations using OpenMP with different parallelization techniques: here

  • Loop parallelization
  • Reduction operations
  • Task-based recursion
  • Dynamic scheduling strategies
  • Analytic results are included in the pdf report

POSIX Threads (pthreads)

Manual multithreaded implementations focusing on synchronization and workload balancing: here

  • Thread creation and synchronization
  • Mutex-based locking
  • Lock-free execution
  • Dynamic job queues
  • Alternative work distribution strategies
  • Analytic results are included in the pdf report

Toolchain

CUDA

  • NVIDIA CUDA Toolkit (11+)

CPU

  • GCC (9+)
  • OpenMP
  • POSIX Threads

About

Parallel Programming covering POSIX Threads, OpenMP, and CUDA programming for high-performance multicore and GPU computing.

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors