• Stars
    star
    106
  • Rank 325,871 (Top 7 %)
  • Language
    CSS
  • License
    MIT License
  • Created over 8 years ago
  • Updated about 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

No sane compiler would optimize atomics: the presentation

No Sane Compiler Would Optimize Atomics

Abstract

False.

Compilers do optimize atomics, memory accesses around atomics, and utilize architecture-specific knowledge. My hobby is to encourage compilers to do more of this, programmers to rely on it, and hardware vendors to give us new atomic toys to optimize with. Oh, and standardize yet more close-to-the-metal concurrency and parallelism tools.

But, you say, surely volatile always means volatile, there’s nothing wrong with my benign races, nothing could even go wrong with non-temporal accesses, and who needs 6 memory orderings anyways‽ I’m glad you asked, let me tell you about my hobby…

Talk Details

This talk is based on a paper I wrote for the C++ standards committee, no sane compiler would optimize atomics (abstract: false). The title and abstract are such perfectly flippant clickbait, yet you won't believe how there's actual content hiding behind the snark!

View the presentation: jfbastien.github.io/no-sane-compiler (press S for speaker notes, use and to navigate backward / forward).

Video

The talk was given at CppCon 2016 and is available on YouTube.

It was previously given at C++Now 2016, is also on YouTube but the recording isn't great.

References

A (non-comprehensive) list of references that went into creating this talk.

Meta

Built using reveal.js.