Repository containing my Assignments and Projects done for course ECEN-5313 Concurrent Programming at CU Boulder
Course focuses the theory and practice of multicore programming. The first part of the course presents foundations of concurrent programming: mutual exclusion, wait-free and lock-free synchronization, spin locks, monitors, memory consistency models. The second part presents a sequence of concurrent data structures and techniques used in their implementations (coarse-grained, fine-grained, optimistic and lock-free synchronization).
- Open MP
- GDB
- Valgrind
- perf
- C
- C++
- Concurrency Primitives
- Memory Consistency & Coherence
- Threading Models
- Concurrent Data Structures
- Performance Phenomena
- Transactional Memory