Predicated Execution

 
 
By Jim Turley  |  Posted 2002-02-11 Print this article Print
 
 
 
 
 
 
 


Predication is cool--it avoids short branches that inject bubbles into the pipeline. Rather than skip over short sections of code, predicated processors can plow straight ahead, either committing or discarding the results based on the predicate test. It effectively permits execution of both branch code paths at the same time. Predicated instruction sets have a mixed effect on code density. They improve code density slightly by eliminating branch instructions, but then hand back much of that improvement by usurping several bits (in IA-64s case, six bits per instruction specifying one of 64 predicate registers) from every instruction for the predicate field. Predicated execution sacrifices execution units on the altar of branch latency. In other words, predicated instructions make it most of the way though the pipeline whether theyre supposed to execute or not. In Itaniums case, all conditional instructions are predicated so everything executes nearly to completion. Its only in the next-to-last DET (exception detection) stage of the pipeline that their effects are canceled if the predicate turns out to be false. By that time, the instruction has already commandeered one of Itaniums nine execution units for nothing, possibly preventing some other instruction from using it. Well, not entirely for nothing; it has served the greater good by avoiding a potential bubble in the pipeline. Better to waste a little work than to spin your wheels waiting for a branch to resolve.
Its small comfort, but predicated instructions that would stall waiting for an operand are killed early, because Itanium resolves the predicate (true/false) about the same time that it detects the dependency. It wont stall instructions waiting for data thats irrelevant. Thats the beauty of predicate bits set well ahead of time instead of flags that are updated every cycle.


 
 
 
 
Jim Turley is a semiconductor industry analyst, editor, and presenter working in Silicon Valley. Focus technologies are 32-bit microprocessors and semiconductor intellectual property (SIP).

Most recently Jim was the Senior Vice President of Strategy & Technology at ARC International plc (LSE:ARK), where he set the Company's strategic direction and guided its technical developments at five locations worldwide. With headquarters in London (UK) and development centers in New Hampshire, Canada, and California, ARC International is an innovative leader in the semiconductor IP (intellectual property) industry.

Previously, Jim was senior analyst for MicroDesign Resources (a unit of Cahners/Reed Elsevier) as well as the Senior Editor of the prestigious industry journal Microprocessor Report (a three-time winner of the Computer Press Award), and Editor-in-Chief of Embedded Processor Watch. He also hosted and directed the yearly Embedded Processor Forum conference, the industry's annual showcase for new microprocessors. As an analyst and editor, Turley consulting with leading semiconductor firms, providing informed advice on technology trends and market requirements, and was often called on to participate in new product reviews, strategy sessions, and technology development for large semiconductor companies.

Turley is the author of six popular books including Advanced 80386 Programming Techniques, the best-selling PCs Made Easy and others published by McGraw-Hill and Academic Press. He's served as technical editor for several of McGraw-Hill's computer and programming books. In addition, he was a regular technology columnist for Embedded System Programming, Computer Design, and Supermicro magazines, and contributed articles to dozens more. Earlier in his career, Turley held engineering or marketing positions at Adept Technology, Force Computers, TeleVideo, and other high-technology firms in Europe and the United States.

Turley has created and presented numerous seminars and training sessions around the world covering technology trends and the competitive microprocessor market. He is also a well-known speaker at industry events such as the Embedded Systems Conference and Microprocessor Forum, is frequently quoted in the Wall Street Journal, New York Times, USA Today, San Francisco Chronicle, and San Jose Mercury News, and has appeared frequently on television, radio, and Internet broadcasts. Jim volunteers for Recording for the Blind and recently earned his amateur auto-racing license. He has a talented and stunningly attractive wife, two overachieving children, an apparently brain-damaged dog, and an opossum living under the house.

Jim can be contacted at info@jimturley.com or by calling (408) 226-8086.

For additional information, visit http://www.jimturley.com.

 
 
 
 
 
 
 

Submit a Comment

Loading Comments...
 
Manage your Newsletters: Login   Register My Newsletters























 
 
 
 
 
 
 
 
 
 
 
Rocket Fuel