25
Hardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Hardware Transactional

Memory and Beyond

USC

December 2016

Maurice Herlihy

Page 2: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

public void LeftEnq(item x)

atomic {

Qnode q = new Qnode(x);

q.left = left;

left.right = q;

left = q;

}

}

code in block executed “atomically”

Page 3: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Apps, Apps, Apps

Page 4: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

High-Level Languages

4(actual Haskell code)

Page 5: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

A tale of injustice

and long-deferred

revenge?

Not Exactly.

Page 6: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Just a Passing Fad?

Page 7: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Privatization & Publication?

Page 8: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Basic Language Support

Page 9: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Isolation Levels

Page 10: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Does STM have a Future?

Page 11: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Hybrid TM?

Page 12: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Escape Actions?

Page 13: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Progress?

Page 14: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Too Big

Page 15: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Too Slow

Page 16: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Just Not in the Mood

Page 17: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Distributed TM?

Page 18: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

New Architectures?

Page 19: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Accelerators?

Page 20: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Locks!Transactions!

Page 21: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Locks!Transactions!

Page 22: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

The Takeaway?

Page 23: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

293,000 Google

109,000 Bing

106,000 Yahoo!

Page 24: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Correctness Properties

Page 25: Hardware Transactional Memory and Beyondalchem.usc.edu/ceng-seminar/slides/2016/Herlihy-2016-12.pdfHardware Transactional Memory and Beyond USC December 2016 Maurice Herlihy

Impossibility Results