Look back over the last decade, and you will find two distinct paths toward performance in the Intel® Architecture (IA) processor world. The Intel® NetBurst® microarchitecture used in Pentium 4 and early Intel® Xeon™ series processors stressed clock rate. Beginning with the Intel® Core™ microarchitecture and continuing with Nehalem, the focus has been on multi-core designs with the cores running at a lower clock rates than processors from the end of the NetBurst era. Embedded design teams often face a tough challenge in the multi-core world because legacy code may not be threaded and may not fully take advantage of the latest processors. But Intel® Turbo Boost Technology introduced with Nehalem provides a way for design teams to max out clock rate and performance on one core handing a single-threaded task.
Turbo Boost Technology allows the clock rate of one or more cores to increase well beyond the nominal rate. The amount of the boost and the duration in the faster mode depends on factors such as the workload of the other cores and overall power consumption of the processor. Intel has a web page dedicated to Turbo Boost Technology that you might review for additional information.
The operating system can place a processor such as the Intel® Core i7 in turbo mode using the processor performance state P0. I discussed processor states in a prior post related to low-power states, but in this case the processor state is used to command the processor to a maximum-performance mode.
National Instruments* (NI) has a new Core-i7-based embedded controller module – the PXIe-8133 -- that provides a perfect canvas to describe the way an embedded design team might use Turbo Boost Technology. The quad-core processor nominally operates at 1.73 GHz. But in a single-core mode, Turbo Boost Technology can up the clock rate to 3.06 GHz.
Chetan Kapoor, Product Marketing Manager for PXI Controllers at NI, states "There's a huge portion of applications that are currently up and running that could clearly benefit from new processor technologies but are limited by the fact that they just have single or a maximum of two execution threads."
According to Kapoor, design teams have often faced a tough choice of processor module prior to the i7. The company offered the PXIe8108 controller with two 2.53-GHz cores and the PXI-8110 with four 2.26-GHz cores. Kapoor points out that legacy code would likely run faster on the dual-core platform with faster clock rates. Threaded code would run more efficiency on the quad-core platform.
Turbo Boost Technology on the i7 offers the best of both worlds. Kapoor said, "If they are porting their application or using a driver software stack that's a little bit outdated they can again utilize the benefits of the new processor by putting the processor in a dual-core or single-core mode." Under operating system control, the system can dynamically adjust to maximize performance on threaded applications or legacy code.
Kapoor also points out that the i7 offers a number of other features that National Instruments' customers are finding useful in applications ranging from hardware-in-the-loop testing to vision system to industrial control with multiple PID control channels. Specifically, Kappor identifies the DDR3 memory controller and Gen 2 PCI Express (PCIe) capabilities. The PXIe-8133 utilizes PCIe to provide four x4 Gen 2 links to the PXI chassis blackplane thereby maximizing data transfers to and from the processor.
In fact, National Instruments developed a whitepaper entitled "Top eight features of the Intel Core i7 processors for test, measurement, and control." As you might expect, the paper covers Turbo Boost Technology, PCI3, DDR3, along with other features such as virtualization and cache implementation. You might peruse that publication for more ideas on how you might utilize the i7.
Have you faced the tough choice of optimizing a hardware specification for legacy single-threaded applications? What decision did you make in terms of processor choice? And have you deployed Turbo Boost Technology? Please share you experience with fellow followers of the Intel® Embedded Community.
Roving Reporter (Intel Contractor)
Intel® Embedded Alliance
*National Instruments is an Associate Member of the Intel® Embedded Alliance