What is Multi-threading


When symmetric multiprocessing (SMP) first became cheap enough to come within reach of the average PC user, many hardware enthusiasts eager to get in on the SMP craze were asking what exactly (besides winning them the admiration and envy of their peers) a dual-processing rig could do for them.

It was in this context that the PC crowd started seriously talking about the advantages of multi threading. Years later when Apple brought dual-processing to its PowerMac line, SMP was officially mainstream, and with it multi threading became a concern for the mainstream user as the ensuing round of benchmarks brought out the fact you really needed multi threaded applications to get the full benefits of two processors.

Even though the PC enthusiast SMP craze has long since died down and, in an odd twist of fate, Mac users are now many times more likely to be sporting an SMP rig than their x86-using peers, multi threading is once again about to increase in importance for PC users. Intel’s next major IA-32 processor release, codenamed Prescott, will include a feature called simultaneous multi threading (SMT), also known as hyper-threading. To take full advantage of SMT, applications will need to be multi threaded; and just like with SMP, the higher the degree of multi threading the more performance an application can wring out of Prescott’s hardware.

Intel actually already uses SMT in a shipping design: the Pentium 4 Xeon. Near the end of this article we’ll take a look at the way the Xeon implements hyper-threading; this analysis should give us a pretty good idea of what’s in store for Prescott. Also, it’s rumored that the current crop of Pentium 4’s actually has SMT hardware built-in, it’s just disabled. (If you add this to the rumor about x86-64 support being present but disabled as well, then you can get some idea of just how cautious Intel is when it comes to introducing new features. I’d kill to get my hands on a 2.8 GHz P4 with both SMT and x86-64 support turned on.)

SMT, in a nutshell, allows the CPU to do what most users think it’s doing anyway: run more than one program at the same time. This might sound odd, so in order to understand how it works this article will first look at how the current crop of CPUs handles multitasking. Then, we’ll discuss a technique called super threading before finally moving on to explain hyper-threading in the last section. So if you’re looking to understand more about multi threading, symmetric multiprocessing systems, and hyper-threading then this article is for you.

As always, if you’ve read some of my previous tech articles you’ll be well equipped to understand the discussion that follows. From here on out, I’ll assume you know the basics of pipelined execution and are familiar with the general architectural division between a processor’s front end and its execution core.



About the Author

Leif Cage writes about Dedicated Servers, UK Dedicated Servers and SEO.


Previous Article - Next Article





Add Your Picture
Add Your Picture


Article Submitted By: LeifCage
Subscribe To: LeifCage Rss Feed
This Article Has Been Read 42 Times







Publish/Share this article

Remember: The article body, title, author bio and links may not be changed or removed. By publishing this article, you agree to all the terms in our Terms of Service.





Rating: Not yet rated




More articles in this Category

How to choose Dedicated Servers

Web Hosting - An Insight

Unlimited Hosting Plan Is Really a Good Deal

Taking the Next Step with VPS Hosting

Dedicated Servers or Virtual Hosting: Which One Is The Best For You?

VPS Hosting vs Shared Web Hosting

Linux Dedicated Servers

Dedicated Servers Applications

A good Web Hosting Service will Help to Increase Business

Use Application hosting services to increase productivity

Selecting a Best Website Hosting Service Provider

Should Australian Entrepreneurs Take Advantage of Free Web Hosting?

Dedicated Server Hosting The main Benefits and Features

Hosted Exchange Services

Is Cloud Computing anything new?

Success With Your Linux Hosting Package

What is Multi-threading

Qualities of a Good Web Hosting Company

The Main Differences Between Unix And Windows Web Hosting?

Web Hosting Features Explained

How to choose a right host?

Features of Load Balacing Dedicated servers

Difference Between Plesk and cPanel Dedicated Server

Business Email Hosting Services

How Windows Hosting Can Change Your Business

Advanced Web Hosting Which Is Kinder To The Environment

Using Dedicated Servers for Robust Web Hosting

How To Setup A Blog With Ease

Searching for a domain to host your website?

Dedicated Web Hosting: A Great Server Option