dcsimg

Cooking with Multicore

Welcome the multicore age! As with any new technology, you could spend a great deal of time searching, reading, testing, and looking for answers to questions before you can start producing effective code. We want to help you get up …

Welcome the multicore age! As with any new technology, you could spend a great deal of time searching, reading, testing, and looking for answers to questions before you can start producing effective code. We want to help you get up to speed more quickly by providing the basics and background to get you up and running in as little as 30 minutes.

That’s why we decided to call this section of the Linux Magazine site the Multicore Cookbook, because we have some quick and easy recipes that will get you “cooking” with multicore in no time. Be sure to check back regularly for new articles and tips.

We’ve organized the Multicore Cookbook (or as we like to call it the MCCB) as follows:

  • Background: The basics, no theory, just the background you need to get started. Take a look at “The Core Of The Issue: Multicore and You” and “The Multicore Programming Challenge.”

  • Mainstream Methods: Tried and true programing techniques that are in widespread use today. Very effective, but a bit low-level for some.

    • Threads: The thread model has been available for many years. It is perhaps the first standard way to program multiple processors and multicore processors. Thread programming can be tedious, but highly effective.

    • OpenMP: The OpenMP standard was developed to make thread programming easier. OpenMP requires an open MPI aware compiler that can interpret user inserted OpenMP directives. Take a look at the 30-minute OpenMP Quick Start to learn more.

    • Message Passing Interface (MPI): The High Performance Computing (HPC) community has been dealing with parallel computing for many years, which gives it a bit of a leg up on dealing with multicore computers. The MPI standard was developed to provide a consistent way for processors to communicate.

  • Up-and-Coming: The multicore story is far from over. Indeed, it has bumped into one of the biggest challenges of computer science faces today — parallel programming. We will be surveying and introducing many of these new methods in the weeks to come.

  • Benchmarks: Theory is great, but practice is where reality takes hold. Benchmarking helps measure progress and find problem areas. It’s important because your goal should be faster code, right? For instance, take a look at our “MPI vs OpenMP: A First Look” benchmarks to help get feel for the multicore landscape

  • Doug’s Multicore Anxiety Closet: This section will provide links to existing and new features found else where within the Linux Magazine site. It also include commentary and insights an anxieties of Linux Magazine Senior HPC Editor Douglas Eadline.

  • Resources: Check this page for additional information and resources.

So there you have it! Roll up your sleeves, get your editors and compilers ready because were going to get cookin’ with multicore.

Leave a Reply