Today at Intel's IDF 2010 was the official launch of the 2011 version of Intel Parallel Studio. Parallel Studio is a set of tools that enhance Visual Studio to support full parallel programming.
This is more than just a simple plug-in for Visual Studio. It's an entire set of tools covering the entire development workflow. In terms of parallel development, these steps are design, build and debug, verify, and tune.
For designing, you have the Intel Parallel Advisor, which sismplifies the process of adding parallelism to your application. For the build and debug phase, you have the Parallel Composer. Together those two tools help you create software that runs in parallel. But what exactly do we mean by parallel? The individual cores of, for example, a quad-core processor are essentially separate processors all on a single chip. A well-designed program, then, can take advantage of these multiple cores. For instance, a computationally-intensive loop can run its separate iterations in separate cores simultaneously, completing the task in a shorter time. Of course, if you're doing computations in a loop, it's probably not just a simple matter of running the iterations concurrently in separate cores, as each iteration might rely on the results of earlier iterations. But that's not a problem with the help of tools shipping with the new 2011 version of Parallel Studio. There's an entire library available called the Parallel Building Blocks that makes such computations easy. Combine that with the help of three new custom keywords Intel added to their C++ compiler (called Cilk+, pronounced Silk Plus), and parallel programming becomes much easier.
But there are two more phases Parallel Studio can help you with. These are the Verify phase and the Tune phase. For these phases Parallel Studio includes the Parallel Inspector tool and the Parallel Amplifier tool. Consider this: Your code might have a bug in it, but since you're talking multiple cores running, the bug might only turn up very rarely. As such, you might not actually encounter it during your own testing. But you don't want your customers to find it. That's where these last two tools come in. They analyze your code and find out exactly where the problems are. And they also help you find places where you can add additional parallel processing to make the code even more efficient.
Parallel Studio is a great tool for doing parallel development, and with the new additions to the 2011 version, the coding has gotten even easier. I'll be reporting more on it while I'm here, so watch for more details. (And to answer a question you might have: What if your program runs on a machine with a multi-core AMD processor intead of an Intel? I asked them just that question and they said it'll still work.)
You can learn more about it at http://software.intel.com/en-us/intel-parallel-studio-home/ .