This document summarizes a presentation given by Paul McKenney titled "Is Parallel Programming Hard, And If So, What Can You Do About It?" at the 2011 Android System Developer Forum.
Paul McKenney has been doing parallel programming for over 20 years. He grew up in rural Oregon and has worked at SRI International, Sequent Computer Systems, and IBM, where he is currently a Distinguished Engineer and CTO of the Linux Technology Center.
Historically, parallel programming has been difficult due to parallel systems being rare and expensive, a lack of publicly available parallel code, and technological obstacles like synchronization overhead, deadlock, and data races. However, these challenges have lessened as parallel systems have become much