Challenges in concurrent computing
Download
1 / 16

Challenges in Concurrent Computing - PowerPoint PPT Presentation


  • 120 Views
  • Uploaded on

Challenges in Concurrent Computing. Danny Hendler. Moore’s law Exponential growth in computing power. The Future of Computing. Speeding up uni-processors is harder and harder Intel, Sun (RIP), AMD, IBM now focusing on “multi-core” architectures Already, multiprocessors are everywhere:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Challenges in Concurrent Computing' - tale


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript


Moore s law exponential growth in computing power
Moore’s lawExponential growth in computing power

סמינר מצטיינים, 20 למאי 2012


The Future of Computing

  • Speeding up uni-processors is harder and harder

  • Intel, Sun (RIP), AMD, IBM now focusing on “multi-core” architectures

  • Already, multiprocessors are everywhere:

    • Desktops

    • Laptop

    • Smart phones

    • Smart TVs

    • ...?

How can programmers write correct, efficient and scalable algorithms for multiprocessors?

סמינר מצטיינים, 20 למאי 2012



Synchronization alternatives: coarse-grained locks

  • Pros

  • Easy to program

  • Cons

  • Sequential

סמינר מצטיינים, 20 למאי 2012


Synchronization alternatives: fine-grained locks

  • Pros

  • Potentially scalable

  • Cons

  • Difficult to program correctly

    • Deadlock

    • Priority inversion

    • Convoying

  • Locks do not compose

סמינר מצטיינים, 20 למאי 2012


Synchronization alternatives: nonblocking synchronization

  • Various progress guarantees

    • Wait-freedom,

    • Lock-freedom

    • Obstruction-freedom

  • Generally requires strong synchronization

compare-and-swap

Load-link/store-conditional

Swap, fetch-and-add

  • Pros

  • Potentially scalable

  • Avoids lock-based hazards

  • Cons

  • Extremely difficult to program

סמינר מצטיינים, 20 למאי 2012


Synchronization alternatives: Transactional Memory

  • A (memory) transaction is a sequence of memory reads and writes executed by a single thread that either commits or aborts

  • If a transaction commits, all the reads and writes appear to have executed atomically

  • If a transaction aborts, none of its operations take effect

  • Transaction operations aren't visible until they commit (if they do)

To be supported soon in hardware by Intel and IBM processors

סמינר מצטיינים, 20 למאי 2012



Talk outline

  • Introduction

  • Non-blocking algorithms (separate presentation)

  • Randomized mutual exclusion (separate presentation)

  • Research directions

סמינר מצטיינים, 20 למאי 2012


Talk outline

  • Introduction

  • Non-blocking algorithms (separate presentation)

  • Randomized mutual exclusion (separate presentation)

  • Research directions

סמינר מצטיינים, 20 למאי 2012


Talk outline

  • Introduction

  • Non-blocking algorithms (separate presentation)

  • Randomized mutual exclusion (separate presentation)

  • Research directions

סמינר מצטיינים, 20 למאי 2012


Research directions: practical

  • Devising efficient implementations of transactional memory

    • Includes incorporating OS kernel support

  • Devising efficient and scalable lock-based and non-blocking data structures

    • Some find their way to Java libraries

  • Devising algorithms that use few barrier instructions

  • ...

סמינר מצטיינים, 20 למאי 2012


Research directions: theoretical

  • Lower bounds and impossibility results on deterministic and randomized mutual exclusion

  • Lower bounds and impossibility results on concurrent data-structures' (counters, stacks, queues, ...) complexity according to various metrics.

  • Formulating novel realistic metrics for concurrent algorithms and corresponding upper/lower bounds

סמינר מצטיינים, 20 למאי 2012



ad