A dual core processor is an integrated circuit with two central processing units. This allows an operating system to multitask, or perform different functions simultaneously, at the hardware level as opposed to the software level. This uses less energy and generates less heat than multitasking on one or even two single-core processors of similar performance. Additionally, CPU-intensive operations will not overload dual core processors as they can be assigned one core in the background and the other core can handle foreground operations. In order for a computer to utilize both processor cores, the operating system must support thread-level parallelism, that is, the ability to send new instructions to the CPU before receiving the results of previous instructions. Most modern operating systems, such as Linux and Microsoft Windows, support TLP.
While dual core processors are essentially two processors on a single chip, the advantages of having both processors in such close proximity go far beyond the obvious space savings. As signals between the processors do not leave the chip, there is no need of amplification which not only degrades the signal but also requires energy and creates heat. Less signals are lost as a result, and thus more data can be moved reliably between the processors per unit of time. Although some early dual core processors had one cache serving both CPU's, newer models dedicate an L2 cache to each processor, improving latency and saving energy. Many dual core processors use legacy motherboard sockets, enabling their use on older motherboards that would otherwise not accommodate two CPU's. Additionally, controlling airflow and cooling a single dual core processor is simpler from an engineering viewpoint than cooling two separate processors, thus simplifying internal case configurations, lowering cost and increasing reliability. An interesting advantage of dual core processors, from a manufacturing standpoint, is the ability of manufactures to sell chips with one faulty core as a single core processor by disconnecting the circuitry of the faulty core. This is especially important in the silicon chip manufacturing business, where as much as ten percent of a given batch of processors may be faulty.
The first commercial dual core processor was IBM's Power 4 processor for it's RISC servers in 2001. Although not for home use, the Power 4 had had catalyzed the integration of TLP into the Linux kernel, and eventually to Windows Server. The first dual core processor for home use was Intel's Pentium Processor Extreme Edition 840, released in early April 2005. Less than two weeks later AMD brought their Opteron 800 Series and Athlon 64 X2 processors to market. The early Intel dual core CPU ran at a 3.2 GHz clock speed, which produced a staggering amount of heat that was difficult to control. The first AMD dual core models were throttled at 2.4 GHz. Despite the lower clock speeds and lower prices, the AMD models generally outperformed comparable Intel models in daily computing tasks. Thus, Intel abandoned the Pentium line and hastened the development of the Core Duo line. Running at about half the clock speed of the Pentiums, the Core Duo features larger caches and higher front side bus bandwidths. A development of the Core Duo, the Centrino Duo was the first dual core processor designed specifically for laptop computers. As with the Core Duo, the Centrino Duo utilizes a relatively low clock speed and a large cache to enhance performance while drawing less energy and producing less heat.
Hardware Technology Terminology Questions