Thursday, January 29, 2004 11:00:35 PM
http://www.slcentral.com/articles/01/6/multithreading/page11.php
Applications Of Multithreading: Dynamic Multithreading
While programmers can write code to be multithreaded, it is time consuming to do so. Considering that time to market is rather important, many programs may forgo the whole multithreading phase (multithreaded in the sense that they are CPU intensive, and would benefit from the addition of another logical processor).
Yet, not all CPU intensive tasks are multithreaded. For these, the ability for the hardware to be responsible for creating threads instead of the programmer would be a great boon in performance. In fact, such processing paradigms do exist, and some don't even require compiler support! (so much for the RISC approach of simplifying everything on the hardware side…). One approach to this is found in the Dynamic Multithreading Architecture (DMT), inspired by Haitham Akkary, now at Intel Corp.
DMT makes use of a traditional SMT pipeline and adds onto it. Increasing the size of the classic reorder buffers and register files (beyond that of a traditional SMT processor) does not make sense, because for it to be effective, the temporal locality of the instructions must be fairly close. Rather than increase them to disproportionate sizes and massively increase latencies, another level outside the pipeline called Trace Buffers are included for every thread that is supported. The optimal size for the Trace Buffers is 200 instructions per thread, where 300 resulted in a relatively minor boost in IPC over 200.[14]
One way (among four) in which Dynamic Multithreading will break a sequential program into multiple threads is to search through a program for a loop, and when found, to go beyond the loop looking for an additional thread. If there is sufficient work to do that is beyond the loop boundary that is not dependent upon the work done in the loop, it will create another thread, and speculatively execute this one. Generally, the idea is to look ahead through the program, and run as many portions of it as possible by speculatively creating new ones.
The last little trick that the MAJC architecture reveals is the same general idea as the above form of spawning new threads from a single thread. They've chosen to call it "Space Time Computing," [6] but the effect is the same - it spawns a new thread from an older one. The difference is that, because MAJC is not based on an SMT architecture (rather a hybrid between CMT and CMP), the newly created thread will instead be executed on another processor on the die.
What about Jackson Technology? Could it too be a form of Dynamic Multithreading? By using a Trace Cache, the Pentium 4 architecture, in a sense, makes quasi-threads where they are simply the path of execution the last time they were run. If different areas of the trace cache could be scanned for "threads," then a DMT processor might make use of the trace cache for the formation of threads.
Akkaray's thesis didn't come out until 1998, and who knows if the P4 was so far along in its design that they couldn't reorganize it so as to include DMT. SMT, on the other hand, was out around about 1995, perhaps earlier (my earliest SMT related source is 1995), which is just after the introduction of the Pentium Pro - the P6 core still found in the Pentium III.
On the other hand, as Jackson Technology has still not appeared, perhaps Intel incorporated DMT in an unfinished state and disabled it so that they could finish it for later revisions. Either way, it seems that the timing works out in favor of SMT, or perhaps even DMT over CMP, which would be extremely expensive to produce (though not beyond Intel's abilities).
Despite the fact that DMT takes a base SMT processor, which is already lengthened by 2 pipeline stages (pipelined register read, and register write), the possibility is still open that an additional stage might have to be added so as not to significantly impact cycle time. However, even if this is the case, the additional stage showed only ~5% performance loss over a DMT architecture that lacked the additional stage.[15]
Overall, DMT was shown to increase performance of SPECInt 95 programs by 15% without changing the number of fetch ports or functional units, and by 30% with one additional fetch port. DMT, like SMT, shows more potential for speeding up integer applications than floating point applications. This is because integer programs tend to have more branches, and thus more times when having multiple threads is beneficial in hiding long latencies.
The DMT architecture described in Akkary's thesis is a form of speculative multithreading that operates on a single threaded program. It reaches far into a program, and achieves higher performance by running later parts of a program on a base SMT pipeline. More recent research has shown that running multiple programs (or preexisting threads from a multithreaded program) using a traditional SMT approach with the additional support of a DMT architecture (called Dynamic Simultaneous Multithreading, or DSMT) improves performance over a completely SMT processor by 5-15% depending upon the amount and type of applications. This works by spawning new threads via DMT protocols when there are fewer threads than the processor has support for. [12]
Recent AMD News
- AMD to Report Fiscal Third Quarter 2024 Financial Results • GlobeNewswire Inc. • 10/16/2024 01:00:00 PM
- Intel and AMD Form x86 Ecosystem Advisory Group to Accelerate Innovation for Developers and Customers • Business Wire • 10/15/2024 05:00:00 PM
- AMD Expands Alveo Portfolio with Launch of World's Fastest Electronic Trading Accelerator in Slim Form Factor for Broad, Cost-Effective Server Deployments • GlobeNewswire Inc. • 10/14/2024 01:00:00 PM
- BP Signals Rising Net Debt; Tesla Slumps; Stellantis CEO Announces Retirement; Berkshire Trims BofA Stake, and More • IH Market News • 10/11/2024 10:31:49 AM
- AMD Launches New Ryzen™ AI PRO 300 Series Processors to Power Next Generation of Commercial PCs • GlobeNewswire Inc. • 10/10/2024 06:01:00 PM
- AMD Delivers Leadership AI Performance with AMD Instinct MI325X Accelerators • GlobeNewswire Inc. • 10/10/2024 06:00:00 PM
- AMD Launches 5th Gen AMD EPYC CPUs, Maintaining Leadership Performance and Features for the Modern Data Center • GlobeNewswire Inc. • 10/10/2024 05:59:00 PM
- AMD Unveils Leadership AI Solutions at Advancing AI 2024 • GlobeNewswire Inc. • 10/10/2024 05:58:00 PM
- AMD Instinct MI300X Accelerators Available on Oracle Cloud Infrastructure for Demanding AI Applications • GlobeNewswire Inc. • 09/26/2024 01:00:00 PM
- Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 09/17/2024 08:21:52 PM
- Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 09/13/2024 08:15:04 PM
- Form 144 - Report of proposed sale of securities • Edgar (US Regulatory) • 09/11/2024 08:19:11 PM
- AMD Advancing AI 2024 Event to Highlight Next-gen Instinct and EPYC Processors and Expanding Solutions Ecosystem • GlobeNewswire Inc. • 09/10/2024 01:00:00 PM
- AMD to Present at the Goldman Sachs Communacopia and Technology Conference • GlobeNewswire Inc. • 09/04/2024 01:00:00 PM
- AMD Appoints AI Industry Veteran Keith Strier to Expand Global AI Capabilities and Engagements • GlobeNewswire Inc. • 09/03/2024 08:15:00 PM
- Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 08/22/2024 08:13:14 PM
- AMD 2023-24 Corporate Responsibility Report: Advancing Sustainability, Collaboration and Inclusion • GlobeNewswire Inc. • 08/21/2024 01:00:00 PM
- Form 144 - Report of proposed sale of securities • Edgar (US Regulatory) • 08/20/2024 08:26:54 PM
- AMD to Present at the Deutsche Bank Technology Conference • GlobeNewswire Inc. • 08/20/2024 08:15:00 PM
- Berkshire Reduces Stake in BofA, Hawaiian Airlines Soars 10%, Paramount Receives $4.3B Offer, and More • IH Market News • 08/20/2024 09:56:02 AM
- Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 08/19/2024 08:26:24 PM
- Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 08/19/2024 08:24:17 PM
- Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 08/19/2024 08:22:02 PM
- Form 4 - Statement of changes in beneficial ownership of securities • Edgar (US Regulatory) • 08/19/2024 08:19:38 PM
- Futures Pointing To Roughly Flat Open On Wall Street • IH Market News • 08/19/2024 01:13:22 PM
Mass Megawatts Commences Solar Energy Sales Efforts • MMMW • Oct 16, 2024 7:45 AM
SANUWAVE Health Announces 1-For-375 Reverse Stock Split • SNWV • Oct 16, 2024 7:40 AM
Future Hospitality Ventures Unveils Bold, New AI-Driven Initiative to Revolutionize the $300 Billion Hospitality Market • NGTF • Oct 16, 2024 7:07 AM
Kona Gold Beverages, Inc. Announces Strategic Progress and Corporate Evolution • KGKG • Oct 15, 2024 9:00 AM
One World Products Secures First Order for Hemp-Based Reusable Containers, Pioneers Renewable Materials for the Automotive Industry • OWPC • Oct 15, 2024 8:35 AM
ZenaTech, Inc. (NASDAQ: ZENA) First US Trial of IQ Nano Drone for Inventory Management • BURU • Oct 15, 2024 8:21 AM