OMG, Multi-Threading is Easier Than Networking

How threading is easy and similar to network code

Prior to working at Intel, I worked on PlayStation* 3 games at Insomniac Games. Most of the work I did at Insomniac dealt with multiplayer network code. When I came to Intel, I was able to focus on threading, eventually realizing that threading and network programming are similar in several ways. 

It can be a challenge to understand threading. Using network programming as a comparison, this article intends to give you an introduction to threading so that by the end you will understand the basics of threading in a Microsoft Windows* environment.

Why Thread?

Why thread? That’s a good question. Why put up with all the challenges that come with threading an application?

In the past, CPUs saw consistent performance gains because of the increases in frequency. In modern microprocessors, however, this frequency gain is marginal, and most performance benefits come from an increased number of cores. Having more cores means the CPU can do more things at the same time. To maximize performance and features, an application needs to fully utilize the CPU-and that means threading!

Read the rest of the article by downloading the PDF below.

Download Complete Article

OMG, Multi-Threading is Easier Than Networking
[PDF 588kb]

PDF icon omg-wp-021609.pdf587.84 KB
For more complete information about compiler optimizations, see our Optimization Notice.