General overview of why reads and writes can get re-ordered:

  Memory Barriers: a Hardware View for Software Hackers                                                                                                                                                                             
  http://www.puppetmastertrading.com/images/hwViewForSwHackers.pdf                                                                                                                    

Intel specific model:

  Intel(R) 64 Architecture Memory Ordering White Paper                                                                                                                                
  http://www.cs.cmu.edu/~410/doc/Intel_Reordering_318147.pdf                                                                                                                          

Longer read on memory consistency:

    A Primer on Memory Consistency and Cache Coherence                                                                                                                                
    Synthesis Lectures on Computer Architecture                                                                                                                                       
    http://www.morganclaypool.com/doi/abs/10.2200/S00346ED1V01Y201104CAC016