I recently stumbled across this quote1 by Doron Rajwan of Intel: “For the past 30 years, computer performance has been driven by Moore’s Law; from now on, it will be driven by Amdahl’s Law. Writing code that effectively exploits multiple processors can be very challenging.” I could not agree more. Writing correct and efficient multi-threaded code is at once necessary and extremely difficult. The challenge can be met, I believe, by adopting solutions that rest on two legs: languages (or at the very least – programming idioms) designed for concurrency, and appropriate transactional concurrent data-structures.
Oct 18, 13