Home / Disciplinas / Mestrado em Informática / PCP 2011-2012

PCP 2011-2012


At the end of the course, students should be able to design parallel applications that can efficiently run on a wide range of parallel computing platforms, this includes:

  • Identify/develop parallel applications using well-known parallelism patterns
  • Identify limitations of current parallel programming paradigms and languages
  • Identify limitations and workarounds to performance scalability


Programming models and languages

  • Communicating processes and distributed objects
  • Component distribution among available resources
  • Mechanisms to express concurrency/parallelism

Design of parallel applications

  • Typical parallel algorithms: pipelining, farming, heartbeat e divide & conquer
  • Measurement, analysis and optimization of performance on parallel applications
  • Scalability analysis: cost / benefit of parallelism and its quantification (metrics)
  • Granularity control: computation versus communication
  • Load distribution techniques