WHAT'S IN THIS CHAPTER?
Understanding why parallel processing can improve your applications
Defining the requirements for parallel processing
Creating your own application with parallel processing
Most systems today come with multi-core processors. Each of those cores is treated as a separate processor by Windows. (It doesn't matter whether you have an Intel or AMD processor — multiple cores work the same with both vendors from a Windows perspective.) If you have four core processors, what Windows sees are four processors. Unfortunately, most applications today use just a single processor. The system has more to offer, but the application works with just one of the processors because it's not designed to do anything more. Consequently, even though the user and developer both want improved speed, and there's additional speed to be had, the application simply can't provide it. Using more than one processor has a number of other advantages, and this chapter explores them.
Before you can write a parallel-processing application, you need to define the requirements for such an application. For example, you need some technique for synchronizing the efforts of multiple processors. Otherwise, the application will end up scrambled and won't produce the desired result. In fact, it's the need to synchronize things in some way that has prevented many developers from even attempting to create a parallel-processing application in the first place. ...