Going Parallel with C++11
This is a joint meeting with HPC/GPU (High=Performance Computing / Graphics Processing Unit)
As hardware designers turn to multi-core CPUs and GPUs, software developers must embrace parallel programming to increase performance. No single approach has yet established itself as the “right way” to develop parallel software. However, C++ has long been used for performance-oriented work, and it’s a safe bet that any viable approach involves C++.
This position has been strengthened by ratification of the new C++0x standard, officially referred to as “C++11”. This talk will introduce the new features of C++11 related to parallel programming, including type inference, lambda expressions, closures, threads, and futures. We'll also discuss the dangers of parallel programming, and how to identify and deal with the most common threat --- race conditions. Throughout the talk, we'll live-code so you can see parallelism in action.
Joe Hummel is a consultant, teacher, writer, and visiting researcher at the U. of CA, Irvine. He earned a PhD in the field of high-performance computing in 1998, and professionally has been specializing in Microsoft technologies since 1992. This includes the days of VB, then .NET, and most recently Microsoft's parallel and high-performance computing initiatives: Windows HPC Server, cluster programming (MPI, SOA, LINQ to HPC, Excel), and many-core programming (TPL, PPL, OpenMP, CUDA, and VC++ 11). Joe has co-authored two books on Windows development, hosted more than 60 MSDN webcasts, and taught courses worldwide. He works for Pluralsight LLC, the U. of California, Irvine, and as a private consultant.
When he’s not working, Joe is an avid sailor, residing in the Chicago area with his wife and daughter.