Challenges in concurrent computing
This presentation is the property of its rightful owner.
Sponsored Links
1 / 16

Challenges in Concurrent Computing PowerPoint PPT Presentation


  • 99 Views
  • Uploaded on
  • Presentation posted in: General

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:

Download Presentation

Challenges in Concurrent Computing

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


Challenges in concurrent computing

Challenges in Concurrent Computing

Danny Hendler


Challenges in concurrent computing

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


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

סמינר מצטיינים, 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

סמינר מצטיינים, 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


Challenges in concurrent computing

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


  • Login