document highlights all the things you should now, with the examples, that makes it easier to understand and get familiar with. if you though caches were the only thing that makes multi-core processing funny - try compile and run time instructions rescheduling (what won't we do for optimization - right?) working with atomic variables in action. :)