Concurrency

Study of concurrent systems and parallel computing

Concurrency#

Concurrency focuses on the design and implementation of systems that can execute multiple tasks simultaneously.

Topics#

  • Transition Systems
  • Parallelism
  • Channel Systems
  • Handshaking
  • NanoPromela
  • ILP
  • DLP
  • TLP
  • Data Coherence
  • Synchronization Primitives
  • Processes and Threads

Resources#

Books#

  • The Art of Multiprocessor Programming by Maurice Herlihy, Nir Shavit
  • Concurrent Programming in Java by Doug Lea
  • Principles of Concurrent and Distributed Programming by M. Ben-Ari

Online Resources#

Practice Problems#