This document discusses memory order consume semantics in C++11. It begins with a recap of acquire and release semantics, then explains that consume semantics are designed to exploit data dependency ordering on weakly-ordered CPUs. However, current compilers like GCC and Clang do not efficiently implement consume, instead using memory barriers. The document ends by discussing proposals to narrow the definition of consume dependencies to guide compiler implementations.