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


Challenges in concurrent computing

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



Challenges in concurrent computing

Synchronization alternatives: coarse-grained locks

  • Pros

  • Easy to program

  • Cons

  • Sequential

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


Challenges in concurrent computing

Synchronization alternatives: fine-grained locks

  • Pros

  • Potentially scalable

  • Cons

  • Difficult to program correctly

    • Deadlock

    • Priority inversion

    • Convoying

  • Locks do not compose

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


Challenges in concurrent computing

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


Challenges in concurrent computing

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



Challenges in concurrent computing

Talk outline

  • Introduction

  • Non-blocking algorithms (separate presentation)

  • Randomized mutual exclusion (separate presentation)

  • Research directions

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


Challenges in concurrent computing

Talk outline

  • Introduction

  • Non-blocking algorithms (separate presentation)

  • Randomized mutual exclusion (separate presentation)

  • Research directions

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


Challenges in concurrent computing

Talk outline

  • Introduction

  • Non-blocking algorithms (separate presentation)

  • Randomized mutual exclusion (separate presentation)

  • Research directions

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


Challenges in concurrent computing

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


Challenges in concurrent computing

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