Knowledge

Hyper-threading

Source đź“ť

170:
processors to work with each other more efficiently, and allows a logical processor to borrow resources from a stalled logical core (assuming both logical cores are associated with the same physical core). A processor stalls when it must wait for data it has requested, in order to finish processing the present thread. The degree of benefit seen when using a hyper-threaded, or multi-core, processor depends on the needs of the software, and how well it and the operating system are written to manage the processor efficiently.
151: 4625: 185:" processor to the host operating system (HTT-unaware operating systems see two "physical" processors), allowing the operating system to schedule two threads or processes simultaneously and appropriately. When execution resources in a hyper-threaded processor are not in use by the current task, and especially when the processor is stalled, those execution resources can be used to execute another scheduled task. (The processor may stall due to a 33: 640:, includes list of Operating Systems that include optimizations for Hyper-Threading Technology; they are Windows XP Professional 64, Windows XP MCE, Windows XP Home, Windows XP Professional, some versions of Linux such as COSIX Linux 4.0, RedHat Linux 9 (Professional and Personal versions), RedFlag Linux Desktop 4.0 and SuSe Linux 8.2 (Professional and Personal versions) 352:
significantly increased due to hyper-threading, with the negative effects becoming smaller as there are more simultaneous threads that can effectively use the additional hardware resource utilization provided by hyper-threading. A similar performance analysis is available for the effects of hyper-threading when used to handle tasks related to managing network traffic, such as for processing
257:. It was also included on the 3.06 GHz Northwood-based Pentium 4 in the same year, and then remained as a feature in every Pentium 4 HT, Pentium 4 Extreme Edition and Pentium Extreme Edition processor since. The Intel Core & Core 2 processor lines (2006) that succeeded the Pentium 4 model line didn't utilize hyper-threading. The processors based on the 213:
share execution resources, while the other processor would remain idle, leading to poorer performance than if the threads were scheduled on different physical processors. This problem can be avoided by improving the scheduler to treat logical processors differently from physical processors, which is, in a sense, a limited form of the scheduler changes required for
308: 9300 launched with eight threads per processor (two threads per core) through enhanced hyper-threading technology. The next model, the Itanium 9500 (Poulson), features a 12-wide issue architecture, with eight CPU cores with support for eight more virtual cores via hyper-threading. The Intel Xeon 5500 server chips also utilize two-way hyper-threading. 166:. Architecturally, a processor with Hyper-Threading Technology consists of two logical processors per core, each of which has its own processor architectural state. Each logical processor can be individually halted, interrupted or directed to execute a specified thread, independently from the other logical processor sharing the same physical core. 239:(HEP) in 1982. The HEP pipeline could not hold multiple instructions from the same process. Only one instruction from a given process was allowed to be present in the pipeline at any point in time. Should an instruction from a given process block the pipe, instructions from other processes would continue after the pipeline drained. 300:(Core i7) in November 2008, in which hyper-threading made a return. The first generation Nehalem processors contained four physical cores and effectively scaled to eight threads. Since then, both two- and six-core models have been released, scaling four and twelve threads respectively. Earlier 212:
is unaware of hyper-threading, it will treat all four logical processors the same. If only two threads are eligible to run, it might choose to schedule those threads on the two logical processors that happen to belong to the same physical processor. That processor would be extremely busy, and would
347:
of the Pentium 4 tying up valuable execution resources, equalizing the processor resources between the two programs, which adds a varying amount of execution time. The Pentium 4 "Prescott" and the Xeon "Nocona" processors received a replay queue that reduces execution time needed for the
337:
applications, but not all. Depending on the cluster configuration and, most importantly, the nature of the application running on the cluster, performance gains can vary or even be negative. The next step is to use performance tools to understand what areas contribute to performance gains and what
447:, as the malicious thread measures the time of only its own execution. Potential solutions to this include the processor changing its cache eviction strategy or the operating system preventing the simultaneous execution, on the same physical core, of threads with different privileges. In 2018 the 169:
Unlike a traditional dual-processor configuration that uses two separate physical processors, the logical processors in a hyper-threaded core share the execution resources. These resources include the execution engine, caches, and system bus interface; the sharing of resources allows two logical
1174:
Per-cpu load can be observed using the mpstat utility, but note that on processors with hyperthreading (HT), each hyperthread is represented as a separate CPU. For interrupt handling, HT has shown no benefit in initial tests, so limit the number of queues to the number of CPU cores in the
351:
According to a November 2009 analysis by Intel, performance impacts of hyper-threading result in increased overall latency in case the execution of threads does not result in significant overall throughput gains, which vary by the application. In other words, overall processing latency is
342:
As a result, performance improvements are very application-dependent; however, when running two programs that require full attention of the processor, it can actually seem like one or both of the programs slows down slightly when Hyper-Threading Technology is turned on. This is due to the
325:
states: "In some cases a P4 running at 3.0 GHz with HT on can even beat a P4 running at 3.6 GHz with HT turned off." Intel also claims significant performance improvements with a hyper-threading-enabled Pentium 4 processor in some artificial-intelligence algorithms.
207:
It is possible to optimize operating system behavior on multi-processor, hyper-threading capable systems. For example, consider an SMP system with two physical processors that are both hyper-threaded (for a total of four logical processors). If the operating system's thread
1595: 770: 320:
than the comparable non-hyperthreaded processor, but the performance was 15–30% better. Intel claims up to a 30% performance improvement compared with an otherwise identical, non-simultaneous multithreading Pentium 4.
125:
addresses two virtual (logical) cores and shares the workload between them when possible. The main function of hyper-threading is to increase the number of independent instructions in the pipeline; it takes advantage of
419:, Intel temporarily moved away from including hyper-threading in mainstream Core i7 desktop processors except for highest-end Core i9 parts or Pentium Gold CPUs. It also began to recommend disabling hyper-threading, as 138:
scheduling of two processes per core. In addition, two or more processes can use the same resources: If resources for one process are not available, then another process can continue if its resources are available.
941: 375:(a specialized, low-power, CPU design company), stated that simultaneous multithreading can use up to 46% more power than ordinary dual-core designs. Furthermore, they claimed that SMT increases 142:
In addition to requiring simultaneous multithreading support in the operating system, hyper-threading can be properly utilized only with an operating system specifically optimized for it.
386:
In 2010, ARM said it might include simultaneous multithreading in its future chips; however, this was rejected in favor of their 2012 64-bit design. ARM produced SMT cores in 2018.
1101: 901: 637: 964:"Summary: In Some Cases The P4 3.0HT Can Even Beat The 3.6 GHz Version : Single CPU in Dual Operation: P4 3.06 GHz with Hyper-Threading Technology" 1443: 225:
The first published paper describing what is now known as hyper-threading in a general purpose computer was written by Edward S. Davidson and Leonard. E. Shar in 1973.
528: 368:
When the first HT processors were released, many operating systems were not optimized for hyper-threading technology (e.g. Windows 2000 and Linux older than 2.4).
949: 3951: 2671: 1395: 329:
Overall the performance history of hyper-threading was a mixed one in the beginning. As one commentary on high-performance computing from November 2002 notes:
1015: 616: 1610: 1233: 1643: 1424: 791: 228: 2782: 1965: 1070: 750:"A multiminiprocessor system implemented through pipelining", by Leonard Shar and Edward Davidson, IEEE Computer, Feb. 1974, pp. 42-51, vol. 7 737: 36:
In this high-level depiction of HTT, instructions are fetched from RAM (differently colored boxes represent the instructions of four different
4041: 2484: 590: 451:
operating system has disabled hyper-threading "in order to avoid data potentially leaking from applications to other software" caused by the
3893: 1762: 204:(SMP) support in the operating system, since the logical processors appear no different to the operating system than physical processors. 2641: 2207: 2024: 3732: 3696: 3586: 2995: 1270: 200:
This technology is transparent to operating systems and programs. The minimum that is required to take advantage of hyper-threading is
3774: 1987: 1109: 2636: 924: 708:,, Bakos, Jason D.,, Colwell, Robert P.,, Bhattacharjee, Abhishek, 1984-, Conte, Thomas M., 1964- (Sixth ed.). Cambridge, MA. 764: 2708: 1040: 835: 397:
processor cores, as they found this gave better performance with better power efficiency than a lower number of cores with SMT.
304:
cores were in-order processors, sometimes with hyper-threading ability, for low power mobile PCs and low-price desktop PCs. The
4022: 3819: 2990: 2461: 527:
Deborah T. Marr; Frank Binns; David L. Hill; Glenn Hinton; David A. Koufaty; J. Alan Miller; Michael Upton (12 December 2006).
232: 159: 1453: 4062: 4289: 3405: 2529: 1792: 1636: 4312: 3415: 2556: 452: 353: 1605: 668: 539: 443:
of another thread with which it shares a cache, allowing the theft of cryptographic information. This is not actually a
4201: 3804: 3762: 1683: 713: 4057: 4307: 4284: 2723: 2551: 2524: 1903: 1616: 1217: 3886: 3625: 3538: 3101: 1994: 1960: 1955: 1874: 1839: 1496: 1370: 1300: 456: 420: 44:), and passed to the execution core capable of executing instructions from two different programs during the same 4279: 4094: 3513: 3410: 2811: 2718: 2519: 1740: 1629: 236: 17: 4386: 4300: 4249: 3789: 3579: 2539: 2258: 1693: 1344: 258: 879: 360:(NICs). Another paper claims no performance improvements when hyper-threading is used for interrupt handling. 4610: 4444: 4295: 3982: 3844: 2713: 2561: 2534: 2395: 2009: 1970: 1827: 1543: 1255: 963: 4650: 3824: 3691: 3150: 2912: 2388: 2349: 2004: 1999: 1933: 1745: 638:
Intel Required Components Interchangeability List for the Intel Pentium 4 Processor with HT Technology
357: 1318: 1188:"Hyper-Threading Technology – Operating systems that include optimizations for Hyper-Threading Technology" 4629: 4575: 4035: 3879: 3779: 2777: 2474: 2172: 1869: 799: 766:
United States Patent: 5361337 - Method and apparatus for rapidly switching processes in a computer system
401: 297: 79: 3630: 1600: 1573: 4554: 4349: 4234: 4196: 4046: 3936: 3635: 3427: 3074: 2491: 1982: 1950: 1720: 1708: 1688: 1579: 1187: 181:. This allows a hyper-threading processor to appear as the usual "physical" processor plus an extra " 4655: 4570: 4549: 4494: 4381: 4371: 4344: 4206: 3572: 3518: 3481: 3471: 1859: 751: 334: 214: 201: 154:
A 3 GHz model of the Intel Pentium 4 processor that incorporates Hyper-Threading Technology
1078: 253:
Intel implemented hyper-threading on an x86 architecture processor in 2002 with the Foster MP-based
4524: 4150: 4089: 4002: 3799: 3533: 2940: 2876: 2853: 2703: 2665: 2501: 2451: 2446: 1923: 1817: 1725: 591:"Intel Pentium 4 3.06GHz CPU with Hyper-Threading Technology: Killing Two Birds with a Stone." 565: 317: 1517: 1157: 594: 4585: 4580: 4439: 4030: 3839: 3829: 3757: 3486: 3269: 3163: 3127: 3044: 3028: 2870: 2659: 2618: 2606: 2469: 2383: 2304: 2069: 1730: 1673: 1589: 95: 4324: 4256: 4160: 4052: 4007: 3860: 3784: 3650: 3292: 3264: 3174: 3139: 2888: 2882: 2864: 2598: 2592: 2496: 2400: 2291: 2230: 2092: 1735: 390: 262: 209: 261:
did not have hyper-threading because the Core microarchitecture was a descendant of the older
4416: 4376: 4329: 4319: 4114: 3977: 3916: 3834: 3686: 3615: 3466: 3375: 3121: 2833: 2651: 2410: 2378: 2336: 2248: 2049: 1864: 1854: 1844: 1834: 1804: 1787: 1652: 813: 499: 473: 440: 265:. The P6 microarchitecture was used in earlier iterations of Pentium processors, namely, the 162:
technology introduced by Intel, while the concept behind the technology has been patented by
127: 1278: 650: 408:
processors had a bug in their implementation of hyper-threading that could cause data loss.
173:
Hyper-threading works by duplicating certain sections of the processor—those that store the
4356: 4244: 4239: 4229: 4216: 4012: 3496: 3432: 3018: 2740: 2630: 2577: 2109: 1822: 1678: 1660: 478: 190: 135: 83: 76: 1617:
The Impact of Hyper-Threading on Processor Resource Utilization in Production Applications
134:. With HTT, one physical core appears as two processors to the operating system, allowing 8: 4519: 4474: 4274: 4140: 3543: 3528: 3348: 3199: 3181: 3145: 3133: 2787: 2734: 2511: 2427: 2309: 2164: 2059: 1918: 1584: 857: 436: 250:
process technology was not advanced enough to allow for a cost-effective implementation.
174: 37: 4544: 4393: 4366: 4191: 4155: 4145: 4104: 3946: 3926: 3921: 3902: 3767: 3400: 3392: 3244: 3219: 3023: 2898: 2422: 2363: 2243: 1975: 1703: 731: 131: 102:
desktop processors in November 2002. Since then, Intel has included this technology in
942:"How to Determine the Effectiveness of Hyper-Threading Technology with an Application" 705: 459:
led to security experts recommending the disabling of hyper-threading on all devices.
4590: 4266: 4224: 4119: 3742: 3701: 3353: 3320: 3236: 3168: 3069: 3059: 3049: 2980: 2975: 2970: 2893: 2822: 2728: 2688: 2321: 2271: 2221: 2197: 2079: 2019: 2014: 1896: 1812: 1448: 1249: 1213: 1048: 916: 719: 709: 322: 4600: 4399: 4334: 4181: 3997: 3992: 3987: 3956: 3752: 3645: 3523: 3456: 3442: 3297: 3204: 3158: 2965: 2960: 2955: 2950: 2945: 2935: 2805: 2772: 2683: 2678: 2587: 2439: 2434: 2417: 2405: 2344: 1908: 1886: 1772: 1750: 1668: 1016:"Maximized performance: Comparing the effects of Hyper-Threading, software updates" 526: 468: 243: 242:
US patent for the technology behind hyper-threading was granted to Kenneth Okin at
163: 122: 4464: 4404: 4339: 4186: 4176: 4109: 4099: 3941: 3931: 3437: 3422: 3370: 3274: 3249: 3086: 3079: 2930: 2925: 2920: 2859: 2767: 2757: 2314: 2266: 2029: 1913: 1881: 1782: 1777: 1698: 984: 376: 194: 1236:. theinquirer.net. 2 August 2006. Archived from the original on 6 September 2009 435:
demonstrated that a malicious thread on a Pentium 4 can use a timing-based
186: 4595: 4411: 4068: 3961: 3548: 3382: 3365: 3358: 3254: 3111: 2848: 2762: 2693: 2276: 2238: 2187: 2182: 2177: 1891: 1715: 1131: 432: 316:
According to Intel, the first hyper-threading implementation used only 5% more
290: 182: 178: 150: 118: 41: 1425:"Intel 9th Gen Core Processors: All the Desktop and Mobile 45W CPUs Announced" 371:
In 2006, hyper-threading was criticised for energy inefficiency. For example,
4644: 4484: 4361: 3655: 3343: 3259: 2299: 2281: 2074: 1767: 1544:"Meltdown Redux: Intel Flaw Lets Hackers Siphon Secrets from Millions of PCs" 920: 723: 675: 444: 344: 2202: 1468: 1212:. Information Resources Management Association. December 2013. p. 666. 4084: 3660: 3553: 3491: 3307: 3284: 3096: 2817: 1755: 1400: 504: 372: 286: 4605: 3665: 3338: 3302: 3013: 2985: 2843: 2698: 1621: 985:
Tau Leng; Rizwan Ali; Jenwei Hsieh; Christopher Stanton (November 2002).
416: 274: 266: 45: 669:"The Architecture of the Nehalem Processor and Nehalem-EP SMP Platforms" 3747: 3706: 3620: 3224: 3214: 3209: 3191: 3091: 3064: 2326: 2159: 2129: 1849: 1396:"Skylake, Kaby Lake Chips Have a Crash Bug with Hyperthreading Enabled" 1161: 986: 394: 301: 270: 111: 107: 1210:
Sustainable Practices: Concepts, Methodologies, Tools and Applications
130:
architecture, in which multiple instructions operate on separate data
4479: 4454: 3871: 3814: 3794: 3670: 3640: 3315: 3312: 3054: 2124: 2102: 1301:"ARM launches first 64bit processor core for servers and smartphones" 569: 409: 405: 380: 99: 32: 4529: 4509: 4434: 3610: 3564: 3330: 2149: 1497:"OpenBSD disables Intel's hyper-threading over CPU data leak fears" 1371:"Intel's Skylake and Kaby Lake CPUs have nasty hyper-threading bug" 1158:"Linux kernel documentation: Scaling in the Linux Networking Stack" 987:"A Study of Hyper-Threading in High-Performance Computing Clusters" 792:"Extreme Gaming with the Intel® Core™ i7 Processor Extreme Edition" 500:"Introduction to Multithreading, Superthreading and Hyperthreading" 752:
https://www.computer.org/csdl/magazine/co/1974/02/4251/13rRUyoyhIt
4534: 4514: 4489: 4124: 2139: 2097: 448: 305: 278: 103: 40:), decoded and reordered by the front end (white boxes represent 1041:"CPU Performance Evaluation - Benchmark - Pentium 4 2.8 and 3.0" 423:
attacks were revealed which could be mitigated by disabling HT.
348:
replay system and completely overcomes the performance penalty.
4504: 4499: 2154: 2119: 2084: 1345:"Deep inside Intel's first viable mobile processor: Silvermont" 566:"The Haswell Front End – Intel's Haswell Architecture Analyzed" 529:"Hyper-Threading Technology Architecture and Microarchitecture" 27:
Proprietary simultaneous multithreading implementation by Intel
1606:
ZDnet: Hyperthreading hurts server performance, say developers
3716: 3711: 3595: 2612: 2144: 2114: 1548: 1444:"Intel's New Spectre-Like Flaw Affects Chips Made Since 2008" 1105: 72: 4539: 4469: 4459: 3737: 3476: 2624: 2544: 2134: 1319:"Arm launches first SMT-capable Cortex core | bit-tech.net" 282: 254: 247: 91: 1102:"Performance Insights to Intel Hyper-Threading Technology" 700:
Hennessy, John L.; Patterson, David A. (7 December 2017).
617:"Intel® Hyper-Threading Technology (Intel® HT Technology)" 4449: 4426: 2064: 2054: 1518:"'Disable SMT/Hyperthreading in all Intel BIOSes' - MARC" 87: 1271:"About MIPS and MIPS | TOP500 Supercomputing Sites" 1071:"Replay: Unknown Features of the NetBurst Core. Page 15" 674:. Texas A&M University. p. 23. Archived from 1009: 1007: 158:
Hyper-Threading Technology is a form of simultaneous
333:
Hyper-Threading can improve the performance of some
1004: 412:updates were later released to address the issue. 699: 4642: 1574:Intel Demonstrates Breakthrough Processor Design 563: 1580:Intel – high level overview of Hyper-threading 836:"Intel Discloses New Itanium Poulson Features" 702:Computer Architecture: A Quantitative Approach 3887: 3580: 1637: 1342: 1075:Replay: Unknown Features of the NetBurst Core 662: 660: 338:areas contribute to performance degradation. 1601:Merom, Conroe, Woodcrest lose HyperThreading 86:(doing multiple tasks at once) performed on 2642:Computer performance by orders of magnitude 1013: 3894: 3880: 3733:Advanced Programmable Interrupt Controller 3697:Intel Communication Streaming Architecture 3587: 3573: 1651: 1644: 1630: 814:"Intel® Atom™ Processor Microarchitecture" 736:: CS1 maint: location missing publisher ( 666: 657: 3775:High-bandwidth Digital Content Protection 1541: 1535: 1466: 1388: 1368: 1268: 667:Thomadakis, Michael E. (17 March 2011). 293:have added support for hyper-threading. 149: 31: 1422: 880:"Intel Xeon Processor 5500 Series" 389:In 2013, Intel dropped SMT in favor of 14: 4643: 3901: 3820:Platform Environment Control Interface 1441: 1099: 497: 400:In 2017, it was revealed that Intel's 90:microprocessors. It was introduced on 3875: 3568: 1625: 643: 311: 82:(SMT) implementation used to improve 3594: 2613:Floating-point operations per second 1613:- Outlines problems of SMT solutions 1100:Valles, Antonio (20 November 2009). 966:. Tomshardware.com. 14 November 2002 762: 651:"Intel Processor Spec Finder: SL6WK" 564:Anand Lal Shimpi (5 October 2012). 24: 3805:Host Embedded Controller Interface 1576:, a press release from August 2001 1469:"Cache Missing for Fun and Profit" 1369:Chirgwin, Richard (25 June 2017). 838:. Tomshardware.com. 24 August 2011 25: 4667: 1567: 1269:Jermoluk, Tom (13 October 2010). 1234:"ARM is no fan of HyperThreading" 763:Okin, Kenneth (1 November 1994), 246:in November 1994. At that time, 4624: 4623: 3539:Semiconductor device fabrication 1585:Hyper-threading on MSDN Magazine 1132:"Network Tuning and Performance" 121:that is physically present, the 4095:Analysis of parallel algorithms 3514:History of general-purpose CPUs 1741:Nondeterministic Turing machine 1611:ARM is no fan of HyperThreading 1542:Greenberg, Andy (14 May 2019). 1510: 1489: 1467:Percival, Colin (14 May 2005). 1460: 1435: 1416: 1362: 1336: 1311: 1293: 1262: 1226: 1202: 1180: 1150: 1124: 1093: 1063: 1033: 978: 956: 948:. 28 April 2011. Archived from 934: 894: 872: 850: 828: 806: 784: 756: 744: 237:Heterogeneous Element Processor 84:parallelization of computations 1694:Deterministic finite automaton 1442:Armasu, Lucian (14 May 2019). 1423:Cutress, Ian (23 April 2019). 1190:. Intel.com. 19 September 2011 693: 631: 609: 583: 557: 520: 498:Stokes, Jon (3 October 2002). 491: 177:—but not duplicating the main 13: 1: 4042:Simultaneous and heterogenous 2485:Simultaneous and heterogenous 858:"Server Processor Index Page" 484: 358:network interface controllers 4630:Category: Parallel computing 3763:Active Management Technology 3692:MultiProcessor Specification 3169:Integrated memory controller 3151:Translation lookaside buffer 2350:Memory dependence prediction 1793:Random-access stored program 1746:Probabilistic Turing machine 1343:Rik Myslewski (8 May 2013). 1014:Joel Hruska (24 July 2012). 902:"Hyper-Threading Technology" 363: 7: 2625:Synaptic updates per second 462: 455:vulnerabilities. In 2019 a 426: 383:results in a 37% decrease. 145: 80:simultaneous multithreading 10: 4672: 3937:High-performance computing 3029:Heterogeneous architecture 1951:Orthogonal instruction set 1721:Alternating Turing machine 1709:Quantum cellular automaton 1596:US Patent Number 4,847,755 1077:. Xbitlabs. Archived from 860:. Intel.com. 18 March 2011 816:. Intel.com. 18 March 2011 593:X-bit labs. Archived from 285:derivatives at the time). 220: 57:Hyper-Threading Technology 4619: 4571:Automatic parallelization 4563: 4425: 4265: 4215: 4207:Application checkpointing 4169: 4133: 4077: 4021: 3970: 3909: 3853: 3725: 3679: 3603: 3519:Microprocessor chronology 3506: 3482:Dynamic frequency scaling 3455: 3391: 3329: 3283: 3235: 3190: 3110: 3037: 3006: 2911: 2832: 2796: 2750: 2650: 2637:Cache performance metrics 2576: 2510: 2460: 2371: 2362: 2335: 2290: 2257: 2229: 2220: 2040: 1943: 1932: 1803: 1659: 1254:: CS1 maint: unfit URL ( 298:Nehalem microarchitecture 202:symmetric multiprocessing 3800:Serial Digital Video Out 3790:Rapid Storage Technology 3534:Hardware security module 2877:Digital signal processor 2854:Graphics processing unit 2666:Graphics processing unit 909:Intel Technology Journal 98:in February 2002 and on 4586:Embarrassingly parallel 4581:Deterministic algorithm 3845:Ultra Path Interconnect 3830:Platform Controller Hub 3758:Intel Management Engine 3487:Dynamic voltage scaling 3270:Memory address register 3164:Branch target predictor 3128:Address generation unit 2871:Physics processing unit 2660:Central processing unit 2619:Transactions per second 2607:Instructions per second 2530:Array processing (SIMT) 1674:Stored-program computer 915:(1). 14 February 2012. 4301:Associative processing 4257:Non-blocking algorithm 4063:Clustered multi-thread 3861:Silicon Photonics Link 3825:QuickPath Interconnect 3293:Hardwired control unit 3175:Memory management unit 3140:Memory management unit 2889:Secure cryptoprocessor 2883:Tensor Processing Unit 2865:Vision processing unit 2599:Cycles per instruction 2593:Instructions per cycle 2540:Associative processing 2231:Instruction pipelining 1653:Processor technologies 457:set of vulnerabilities 441:memory access patterns 391:out-of-order execution 340: 259:Core microarchitecture 155: 49: 4417:Hardware acceleration 4330:Superscalar processor 4320:Dataflow architecture 3917:Distributed computing 3835:System Management Bus 3780:High Definition Audio 3687:Common Building Block 3376:Sum-addressed decoder 3122:Arithmetic logic unit 2249:Classic RISC pipeline 2203:Epiphany architecture 2050:Motorola 68000 series 474:Computer multitasking 421:new CPU vulnerability 331: 153: 35: 4296:Pipelined processing 4245:Explicit parallelism 4240:Implicit parallelism 4230:Dataflow programming 3497:Performance per watt 3075:replacement policies 2741:Package on a package 2631:Performance per watt 2535:Pipelined processing 2305:Tomasulo's algorithm 2110:Clipper architecture 1966:Application-specific 1679:Finite-state machine 1590:introductory article 773:on 21 September 2015 545:on 23 September 2015 479:Multi-core processor 263:P6 microarchitecture 191:branch misprediction 114:CPUs, among others. 4651:Threads (computing) 4520:Parallel Extensions 4325:Pipelined processor 3529:Digital electronics 3182:Instruction decoder 3134:Floating-point unit 2788:Soft microprocessor 2735:System in a package 2310:Reservation station 1840:Transport-triggered 1112:on 17 February 2015 1051:on 24 February 2021 952:on 2 February 2010. 930:on 19 October 2012. 802:on 1 December 2008. 437:side-channel attack 296:Intel released the 179:execution resources 175:architectural state 63:and abbreviated as 55:(officially called 4394:Massively parallel 4372:distributed shared 4192:Cache invalidation 4156:Instruction window 3947:Manycore processor 3927:Massively parallel 3922:Parallel computing 3903:Parallel computing 3401:Integrated circuit 3245:Processor register 2899:Baseband processor 2244:Operand forwarding 1704:Cellular automaton 1307:. 30 October 2012. 1138:. 12 November 2013 946:software.intel.com 354:interrupt requests 312:Performance claims 156: 50: 4638: 4637: 4591:Parallel slowdown 4225:Stream processing 4115:Karp–Flatt metric 3869: 3868: 3743:Intel Turbo Boost 3702:Intel Inboard 386 3562: 3561: 3451: 3450: 3070:Instruction cache 3060:Scratchpad memory 2907: 2906: 2894:Network processor 2823:Network on a chip 2778:Ultra-low-voltage 2729:Multi-chip module 2572: 2571: 2358: 2357: 2345:Branch prediction 2322:Register renaming 2216: 2215: 2198:VISC architecture 2020:Quantum computing 2015:VISC architecture 1897:Secondary storage 1813:Microarchitecture 1773:Register machines 1592:from Ars Technica 1456:on 4 August 2019. 1305:Tech Design Forum 1164:. 1 December 2014 992:. Dell. p. 4 681:on 11 August 2014 16:(Redirected from 4663: 4656:X86 architecture 4627: 4626: 4601:Software lockout 4400:Computer cluster 4335:Vector processor 4290:Array processing 4275:Flynn's taxonomy 4182:Memory coherence 3957:Computer network 3896: 3889: 3882: 3873: 3872: 3785:Hub Architecture 3753:Intel Secure Key 3589: 3582: 3575: 3566: 3565: 3524:Processor design 3416:Power management 3298:Instruction unit 3159:Branch predictor 3108: 3107: 2806:System on a chip 2748: 2747: 2588:Transistor count 2512:Flynn's taxonomy 2369: 2368: 2227: 2226: 2030:Addressing modes 1941: 1940: 1887:Memory hierarchy 1751:Hypercomputation 1669:Abstract machine 1646: 1639: 1632: 1623: 1622: 1561: 1560: 1558: 1556: 1539: 1533: 1532: 1530: 1528: 1514: 1508: 1507: 1505: 1503: 1493: 1487: 1486: 1484: 1482: 1473: 1464: 1458: 1457: 1452:. Archived from 1439: 1433: 1432: 1420: 1414: 1413: 1411: 1409: 1392: 1386: 1385: 1383: 1381: 1366: 1360: 1359: 1357: 1355: 1340: 1334: 1333: 1331: 1329: 1315: 1309: 1308: 1297: 1291: 1290: 1288: 1286: 1277:. Archived from 1266: 1260: 1259: 1253: 1245: 1243: 1241: 1230: 1224: 1223: 1206: 1200: 1199: 1197: 1195: 1184: 1178: 1177: 1171: 1169: 1154: 1148: 1147: 1145: 1143: 1128: 1122: 1121: 1119: 1117: 1108:. Archived from 1097: 1091: 1090: 1088: 1086: 1067: 1061: 1060: 1058: 1056: 1047:. Archived from 1045:users.telenet.be 1037: 1031: 1030: 1028: 1026: 1011: 1002: 1001: 999: 997: 991: 982: 976: 975: 973: 971: 960: 954: 953: 938: 932: 931: 929: 923:. Archived from 906: 898: 892: 891: 889: 887: 876: 870: 869: 867: 865: 854: 848: 847: 845: 843: 832: 826: 825: 823: 821: 810: 804: 803: 798:. Archived from 788: 782: 781: 780: 778: 769:, archived from 760: 754: 748: 742: 741: 735: 727: 697: 691: 690: 688: 686: 680: 673: 664: 655: 654: 647: 641: 635: 629: 628: 626: 624: 613: 607: 606: 604: 602: 587: 581: 580: 578: 576: 561: 555: 554: 552: 550: 544: 538:. Archived from 533: 524: 518: 517: 515: 513: 495: 469:Barrel processor 379:by 42%, whereas 275:Pentium III 244:Sun Microsystems 164:Sun Microsystems 123:operating system 42:pipeline bubbles 21: 4671: 4670: 4666: 4665: 4664: 4662: 4661: 4660: 4641: 4640: 4639: 4634: 4615: 4559: 4465:Coarray Fortran 4421: 4405:Beowulf cluster 4261: 4211: 4202:Synchronization 4187:Cache coherence 4177:Multiprocessing 4165: 4129: 4110:Cost efficiency 4105:Gustafson's law 4073: 4017: 3966: 3942:Multiprocessing 3932:Cloud computing 3905: 3900: 3870: 3865: 3849: 3810:Hyper-threading 3721: 3675: 3599: 3593: 3563: 3558: 3544:Tick–tock model 3502: 3458: 3447: 3387: 3371:Address decoder 3325: 3279: 3275:Program counter 3250:Status register 3231: 3186: 3146:Load–store unit 3113: 3106: 3033: 3002: 2903: 2860:Image processor 2835: 2828: 2798: 2792: 2768:Microcontroller 2758:Embedded system 2746: 2646: 2579: 2568: 2506: 2456: 2354: 2331: 2315:Re-order buffer 2286: 2267:Data dependency 2253: 2212: 2042: 2036: 1935: 1934:Instruction set 1928: 1914:Multiprocessing 1882:Cache hierarchy 1875:Register/memory 1799: 1699:Queue automaton 1655: 1650: 1570: 1565: 1564: 1554: 1552: 1540: 1536: 1526: 1524: 1516: 1515: 1511: 1501: 1499: 1495: 1494: 1490: 1480: 1478: 1476:Daemonology.net 1471: 1465: 1461: 1440: 1436: 1421: 1417: 1407: 1405: 1394: 1393: 1389: 1379: 1377: 1367: 1363: 1353: 1351: 1341: 1337: 1327: 1325: 1317: 1316: 1312: 1299: 1298: 1294: 1284: 1282: 1281:on 13 June 2011 1267: 1263: 1247: 1246: 1239: 1237: 1232: 1231: 1227: 1220: 1208: 1207: 1203: 1193: 1191: 1186: 1185: 1181: 1167: 1165: 1156: 1155: 1151: 1141: 1139: 1130: 1129: 1125: 1115: 1113: 1098: 1094: 1084: 1082: 1069: 1068: 1064: 1054: 1052: 1039: 1038: 1034: 1024: 1022: 1020:extremetech.com 1012: 1005: 995: 993: 989: 983: 979: 969: 967: 962: 961: 957: 940: 939: 935: 927: 904: 900: 899: 895: 885: 883: 878: 877: 873: 863: 861: 856: 855: 851: 841: 839: 834: 833: 829: 819: 817: 812: 811: 807: 790: 789: 785: 776: 774: 761: 757: 749: 745: 729: 728: 716: 706:Asanović, Krste 698: 694: 684: 682: 678: 671: 665: 658: 649: 648: 644: 636: 632: 622: 620: 615: 614: 610: 600: 598: 589: 588: 584: 574: 572: 562: 558: 548: 546: 542: 531: 525: 521: 511: 509: 496: 492: 487: 465: 453:Foreshadow/L1TF 439:to monitor the 429: 377:cache thrashing 366: 314: 271:Pentium II 233:multi-threading 223: 195:data dependency 148: 112:Core 'i' Series 53:Hyper-threading 28: 23: 22: 18:Hyper-Threading 15: 12: 11: 5: 4669: 4659: 4658: 4653: 4636: 4635: 4633: 4632: 4620: 4617: 4616: 4614: 4613: 4608: 4603: 4598: 4596:Race condition 4593: 4588: 4583: 4578: 4573: 4567: 4565: 4561: 4560: 4558: 4557: 4552: 4547: 4542: 4537: 4532: 4527: 4522: 4517: 4512: 4507: 4502: 4497: 4492: 4487: 4482: 4477: 4472: 4467: 4462: 4457: 4452: 4447: 4442: 4437: 4431: 4429: 4423: 4422: 4420: 4419: 4414: 4409: 4408: 4407: 4397: 4391: 4390: 4389: 4384: 4379: 4374: 4369: 4364: 4354: 4353: 4352: 4347: 4340:Multiprocessor 4337: 4332: 4327: 4322: 4317: 4316: 4315: 4310: 4305: 4304: 4303: 4298: 4293: 4282: 4271: 4269: 4263: 4262: 4260: 4259: 4254: 4253: 4252: 4247: 4242: 4232: 4227: 4221: 4219: 4213: 4212: 4210: 4209: 4204: 4199: 4194: 4189: 4184: 4179: 4173: 4171: 4167: 4166: 4164: 4163: 4158: 4153: 4148: 4143: 4137: 4135: 4131: 4130: 4128: 4127: 4122: 4117: 4112: 4107: 4102: 4097: 4092: 4087: 4081: 4079: 4075: 4074: 4072: 4071: 4069:Hardware scout 4066: 4060: 4055: 4050: 4044: 4039: 4033: 4027: 4025: 4023:Multithreading 4019: 4018: 4016: 4015: 4010: 4005: 4000: 3995: 3990: 3985: 3980: 3974: 3972: 3968: 3967: 3965: 3964: 3962:Systolic array 3959: 3954: 3949: 3944: 3939: 3934: 3929: 3924: 3919: 3913: 3911: 3907: 3906: 3899: 3898: 3891: 3884: 3876: 3867: 3866: 3864: 3863: 3857: 3855: 3851: 3850: 3848: 3847: 3842: 3837: 3832: 3827: 3822: 3817: 3812: 3807: 3802: 3797: 3792: 3787: 3782: 3777: 3772: 3771: 3770: 3760: 3755: 3750: 3745: 3740: 3735: 3729: 3727: 3723: 3722: 3720: 3719: 3714: 3709: 3704: 3699: 3694: 3689: 3683: 3681: 3677: 3676: 3674: 3673: 3668: 3663: 3658: 3653: 3648: 3643: 3638: 3633: 3628: 3623: 3618: 3613: 3607: 3605: 3601: 3600: 3592: 3591: 3584: 3577: 3569: 3560: 3559: 3557: 3556: 3551: 3549:Pin grid array 3546: 3541: 3536: 3531: 3526: 3521: 3516: 3510: 3508: 3504: 3503: 3501: 3500: 3494: 3489: 3484: 3479: 3474: 3469: 3463: 3461: 3453: 3452: 3449: 3448: 3446: 3445: 3440: 3435: 3430: 3425: 3420: 3419: 3418: 3413: 3408: 3397: 3395: 3389: 3388: 3386: 3385: 3383:Barrel shifter 3380: 3379: 3378: 3373: 3366:Binary decoder 3363: 3362: 3361: 3351: 3346: 3341: 3335: 3333: 3327: 3326: 3324: 3323: 3318: 3310: 3305: 3300: 3295: 3289: 3287: 3281: 3280: 3278: 3277: 3272: 3267: 3262: 3257: 3255:Stack register 3252: 3247: 3241: 3239: 3233: 3232: 3230: 3229: 3228: 3227: 3222: 3212: 3207: 3202: 3196: 3194: 3188: 3187: 3185: 3184: 3179: 3178: 3177: 3166: 3161: 3156: 3155: 3154: 3148: 3137: 3131: 3125: 3118: 3116: 3105: 3104: 3099: 3094: 3089: 3084: 3083: 3082: 3077: 3072: 3067: 3062: 3057: 3047: 3041: 3039: 3035: 3034: 3032: 3031: 3026: 3021: 3016: 3010: 3008: 3004: 3003: 3001: 3000: 2999: 2998: 2988: 2983: 2978: 2973: 2968: 2963: 2958: 2953: 2948: 2943: 2938: 2933: 2928: 2923: 2917: 2915: 2909: 2908: 2905: 2904: 2902: 2901: 2896: 2891: 2886: 2880: 2874: 2868: 2862: 2857: 2851: 2849:AI accelerator 2846: 2840: 2838: 2830: 2829: 2827: 2826: 2820: 2815: 2812:Multiprocessor 2809: 2802: 2800: 2794: 2793: 2791: 2790: 2785: 2780: 2775: 2770: 2765: 2763:Microprocessor 2760: 2754: 2752: 2751:By application 2745: 2744: 2738: 2732: 2726: 2721: 2716: 2711: 2706: 2701: 2696: 2694:Tile processor 2691: 2686: 2681: 2676: 2675: 2674: 2663: 2656: 2654: 2648: 2647: 2645: 2644: 2639: 2634: 2628: 2622: 2616: 2610: 2604: 2603: 2602: 2590: 2584: 2582: 2574: 2573: 2570: 2569: 2567: 2566: 2565: 2564: 2554: 2549: 2548: 2547: 2542: 2537: 2532: 2522: 2516: 2514: 2508: 2507: 2505: 2504: 2499: 2494: 2489: 2488: 2487: 2482: 2480:Hyperthreading 2472: 2466: 2464: 2462:Multithreading 2458: 2457: 2455: 2454: 2449: 2444: 2443: 2442: 2432: 2431: 2430: 2425: 2415: 2414: 2413: 2408: 2398: 2393: 2392: 2391: 2386: 2375: 2373: 2366: 2360: 2359: 2356: 2355: 2353: 2352: 2347: 2341: 2339: 2333: 2332: 2330: 2329: 2324: 2319: 2318: 2317: 2312: 2302: 2296: 2294: 2288: 2287: 2285: 2284: 2279: 2274: 2269: 2263: 2261: 2255: 2254: 2252: 2251: 2246: 2241: 2239:Pipeline stall 2235: 2233: 2224: 2218: 2217: 2214: 2213: 2211: 2210: 2205: 2200: 2195: 2192: 2191: 2190: 2188:z/Architecture 2185: 2180: 2175: 2167: 2162: 2157: 2152: 2147: 2142: 2137: 2132: 2127: 2122: 2117: 2112: 2107: 2106: 2105: 2100: 2095: 2087: 2082: 2077: 2072: 2067: 2062: 2057: 2052: 2046: 2044: 2038: 2037: 2035: 2034: 2033: 2032: 2022: 2017: 2012: 2007: 2002: 1997: 1992: 1991: 1990: 1980: 1979: 1978: 1968: 1963: 1958: 1953: 1947: 1945: 1938: 1930: 1929: 1927: 1926: 1921: 1916: 1911: 1906: 1901: 1900: 1899: 1894: 1892:Virtual memory 1884: 1879: 1878: 1877: 1872: 1867: 1862: 1852: 1847: 1842: 1837: 1832: 1831: 1830: 1820: 1815: 1809: 1807: 1801: 1800: 1798: 1797: 1796: 1795: 1790: 1785: 1780: 1770: 1765: 1760: 1759: 1758: 1753: 1748: 1743: 1738: 1733: 1728: 1723: 1716:Turing machine 1713: 1712: 1711: 1706: 1701: 1696: 1691: 1686: 1676: 1671: 1665: 1663: 1657: 1656: 1649: 1648: 1641: 1634: 1626: 1620: 1619: 1614: 1608: 1603: 1598: 1593: 1587: 1582: 1577: 1569: 1568:External links 1566: 1563: 1562: 1534: 1509: 1488: 1459: 1449:Tom's Hardware 1434: 1415: 1404:. 26 June 2017 1387: 1361: 1335: 1310: 1292: 1261: 1225: 1218: 1201: 1179: 1149: 1123: 1092: 1081:on 14 May 2011 1062: 1032: 1003: 977: 955: 933: 893: 871: 849: 827: 805: 783: 755: 743: 715:978-0128119051 714: 692: 656: 642: 630: 608: 597:on 31 May 2014 582: 556: 519: 508:. pp. 2–3 489: 488: 486: 483: 482: 481: 476: 471: 464: 461: 433:Colin Percival 428: 425: 415:In 2019, with 365: 362: 323:Tom's Hardware 313: 310: 291:Windows XP SP1 229:Denelcor, Inc. 222: 219: 160:multithreading 147: 144: 119:processor core 100:Pentium 4 26: 9: 6: 4: 3: 2: 4668: 4657: 4654: 4652: 4649: 4648: 4646: 4631: 4622: 4621: 4618: 4612: 4609: 4607: 4604: 4602: 4599: 4597: 4594: 4592: 4589: 4587: 4584: 4582: 4579: 4577: 4574: 4572: 4569: 4568: 4566: 4562: 4556: 4553: 4551: 4548: 4546: 4543: 4541: 4538: 4536: 4533: 4531: 4528: 4526: 4523: 4521: 4518: 4516: 4513: 4511: 4508: 4506: 4503: 4501: 4498: 4496: 4493: 4491: 4488: 4486: 4485:Global Arrays 4483: 4481: 4478: 4476: 4473: 4471: 4468: 4466: 4463: 4461: 4458: 4456: 4453: 4451: 4448: 4446: 4443: 4441: 4438: 4436: 4433: 4432: 4430: 4428: 4424: 4418: 4415: 4413: 4412:Grid computer 4410: 4406: 4403: 4402: 4401: 4398: 4395: 4392: 4388: 4385: 4383: 4380: 4378: 4375: 4373: 4370: 4368: 4365: 4363: 4360: 4359: 4358: 4355: 4351: 4348: 4346: 4343: 4342: 4341: 4338: 4336: 4333: 4331: 4328: 4326: 4323: 4321: 4318: 4314: 4311: 4309: 4306: 4302: 4299: 4297: 4294: 4291: 4288: 4287: 4286: 4283: 4281: 4278: 4277: 4276: 4273: 4272: 4270: 4268: 4264: 4258: 4255: 4251: 4248: 4246: 4243: 4241: 4238: 4237: 4236: 4233: 4231: 4228: 4226: 4223: 4222: 4220: 4218: 4214: 4208: 4205: 4203: 4200: 4198: 4195: 4193: 4190: 4188: 4185: 4183: 4180: 4178: 4175: 4174: 4172: 4168: 4162: 4159: 4157: 4154: 4152: 4149: 4147: 4144: 4142: 4139: 4138: 4136: 4132: 4126: 4123: 4121: 4118: 4116: 4113: 4111: 4108: 4106: 4103: 4101: 4098: 4096: 4093: 4091: 4088: 4086: 4083: 4082: 4080: 4076: 4070: 4067: 4064: 4061: 4059: 4056: 4054: 4051: 4048: 4045: 4043: 4040: 4037: 4034: 4032: 4029: 4028: 4026: 4024: 4020: 4014: 4011: 4009: 4006: 4004: 4001: 3999: 3996: 3994: 3991: 3989: 3986: 3984: 3981: 3979: 3976: 3975: 3973: 3969: 3963: 3960: 3958: 3955: 3953: 3950: 3948: 3945: 3943: 3940: 3938: 3935: 3933: 3930: 3928: 3925: 3923: 3920: 3918: 3915: 3914: 3912: 3908: 3904: 3897: 3892: 3890: 3885: 3883: 3878: 3877: 3874: 3862: 3859: 3858: 3856: 3852: 3846: 3843: 3841: 3838: 3836: 3833: 3831: 3828: 3826: 3823: 3821: 3818: 3816: 3813: 3811: 3808: 3806: 3803: 3801: 3798: 3796: 3793: 3791: 3788: 3786: 3783: 3781: 3778: 3776: 3773: 3769: 3766: 3765: 3764: 3761: 3759: 3756: 3754: 3751: 3749: 3746: 3744: 3741: 3739: 3736: 3734: 3731: 3730: 3728: 3724: 3718: 3715: 3713: 3710: 3708: 3705: 3703: 3700: 3698: 3695: 3693: 3690: 3688: 3685: 3684: 3682: 3678: 3672: 3669: 3667: 3664: 3662: 3659: 3657: 3654: 3652: 3649: 3647: 3644: 3642: 3639: 3637: 3634: 3632: 3629: 3627: 3624: 3622: 3619: 3617: 3614: 3612: 3609: 3608: 3606: 3602: 3597: 3590: 3585: 3583: 3578: 3576: 3571: 3570: 3567: 3555: 3552: 3550: 3547: 3545: 3542: 3540: 3537: 3535: 3532: 3530: 3527: 3525: 3522: 3520: 3517: 3515: 3512: 3511: 3509: 3505: 3498: 3495: 3493: 3490: 3488: 3485: 3483: 3480: 3478: 3475: 3473: 3470: 3468: 3465: 3464: 3462: 3460: 3454: 3444: 3441: 3439: 3436: 3434: 3431: 3429: 3426: 3424: 3421: 3417: 3414: 3412: 3409: 3407: 3404: 3403: 3402: 3399: 3398: 3396: 3394: 3390: 3384: 3381: 3377: 3374: 3372: 3369: 3368: 3367: 3364: 3360: 3357: 3356: 3355: 3352: 3350: 3347: 3345: 3344:Demultiplexer 3342: 3340: 3337: 3336: 3334: 3332: 3328: 3322: 3319: 3317: 3314: 3311: 3309: 3306: 3304: 3301: 3299: 3296: 3294: 3291: 3290: 3288: 3286: 3282: 3276: 3273: 3271: 3268: 3266: 3265:Memory buffer 3263: 3261: 3260:Register file 3258: 3256: 3253: 3251: 3248: 3246: 3243: 3242: 3240: 3238: 3234: 3226: 3223: 3221: 3218: 3217: 3216: 3213: 3211: 3208: 3206: 3203: 3201: 3200:Combinational 3198: 3197: 3195: 3193: 3189: 3183: 3180: 3176: 3173: 3172: 3170: 3167: 3165: 3162: 3160: 3157: 3152: 3149: 3147: 3144: 3143: 3141: 3138: 3135: 3132: 3129: 3126: 3123: 3120: 3119: 3117: 3115: 3109: 3103: 3100: 3098: 3095: 3093: 3090: 3088: 3085: 3081: 3078: 3076: 3073: 3071: 3068: 3066: 3063: 3061: 3058: 3056: 3053: 3052: 3051: 3048: 3046: 3043: 3042: 3040: 3036: 3030: 3027: 3025: 3022: 3020: 3017: 3015: 3012: 3011: 3009: 3005: 2997: 2994: 2993: 2992: 2989: 2987: 2984: 2982: 2979: 2977: 2974: 2972: 2969: 2967: 2964: 2962: 2959: 2957: 2954: 2952: 2949: 2947: 2944: 2942: 2939: 2937: 2934: 2932: 2929: 2927: 2924: 2922: 2919: 2918: 2916: 2914: 2910: 2900: 2897: 2895: 2892: 2890: 2887: 2884: 2881: 2878: 2875: 2872: 2869: 2866: 2863: 2861: 2858: 2855: 2852: 2850: 2847: 2845: 2842: 2841: 2839: 2837: 2831: 2824: 2821: 2819: 2816: 2813: 2810: 2807: 2804: 2803: 2801: 2795: 2789: 2786: 2784: 2781: 2779: 2776: 2774: 2771: 2769: 2766: 2764: 2761: 2759: 2756: 2755: 2753: 2749: 2742: 2739: 2736: 2733: 2730: 2727: 2725: 2722: 2720: 2717: 2715: 2712: 2710: 2707: 2705: 2702: 2700: 2697: 2695: 2692: 2690: 2687: 2685: 2682: 2680: 2677: 2673: 2670: 2669: 2667: 2664: 2661: 2658: 2657: 2655: 2653: 2649: 2643: 2640: 2638: 2635: 2632: 2629: 2626: 2623: 2620: 2617: 2614: 2611: 2608: 2605: 2600: 2597: 2596: 2594: 2591: 2589: 2586: 2585: 2583: 2581: 2575: 2563: 2560: 2559: 2558: 2555: 2553: 2550: 2546: 2543: 2541: 2538: 2536: 2533: 2531: 2528: 2527: 2526: 2523: 2521: 2518: 2517: 2515: 2513: 2509: 2503: 2500: 2498: 2495: 2493: 2490: 2486: 2483: 2481: 2478: 2477: 2476: 2473: 2471: 2468: 2467: 2465: 2463: 2459: 2453: 2450: 2448: 2445: 2441: 2438: 2437: 2436: 2433: 2429: 2426: 2424: 2421: 2420: 2419: 2416: 2412: 2409: 2407: 2404: 2403: 2402: 2399: 2397: 2394: 2390: 2387: 2385: 2382: 2381: 2380: 2377: 2376: 2374: 2370: 2367: 2365: 2361: 2351: 2348: 2346: 2343: 2342: 2340: 2338: 2334: 2328: 2325: 2323: 2320: 2316: 2313: 2311: 2308: 2307: 2306: 2303: 2301: 2300:Scoreboarding 2298: 2297: 2295: 2293: 2289: 2283: 2282:False sharing 2280: 2278: 2275: 2273: 2270: 2268: 2265: 2264: 2262: 2260: 2256: 2250: 2247: 2245: 2242: 2240: 2237: 2236: 2234: 2232: 2228: 2225: 2223: 2219: 2209: 2206: 2204: 2201: 2199: 2196: 2193: 2189: 2186: 2184: 2181: 2179: 2176: 2174: 2171: 2170: 2168: 2166: 2163: 2161: 2158: 2156: 2153: 2151: 2148: 2146: 2143: 2141: 2138: 2136: 2133: 2131: 2128: 2126: 2123: 2121: 2118: 2116: 2113: 2111: 2108: 2104: 2101: 2099: 2096: 2094: 2091: 2090: 2088: 2086: 2083: 2081: 2078: 2076: 2075:Stanford MIPS 2073: 2071: 2068: 2066: 2063: 2061: 2058: 2056: 2053: 2051: 2048: 2047: 2045: 2039: 2031: 2028: 2027: 2026: 2023: 2021: 2018: 2016: 2013: 2011: 2008: 2006: 2003: 2001: 1998: 1996: 1993: 1989: 1986: 1985: 1984: 1981: 1977: 1974: 1973: 1972: 1969: 1967: 1964: 1962: 1959: 1957: 1954: 1952: 1949: 1948: 1946: 1942: 1939: 1937: 1936:architectures 1931: 1925: 1922: 1920: 1917: 1915: 1912: 1910: 1907: 1905: 1904:Heterogeneous 1902: 1898: 1895: 1893: 1890: 1889: 1888: 1885: 1883: 1880: 1876: 1873: 1871: 1868: 1866: 1863: 1861: 1858: 1857: 1856: 1855:Memory access 1853: 1851: 1848: 1846: 1843: 1841: 1838: 1836: 1833: 1829: 1826: 1825: 1824: 1821: 1819: 1816: 1814: 1811: 1810: 1808: 1806: 1802: 1794: 1791: 1789: 1788:Random-access 1786: 1784: 1781: 1779: 1776: 1775: 1774: 1771: 1769: 1768:Stack machine 1766: 1764: 1761: 1757: 1754: 1752: 1749: 1747: 1744: 1742: 1739: 1737: 1734: 1732: 1729: 1727: 1724: 1722: 1719: 1718: 1717: 1714: 1710: 1707: 1705: 1702: 1700: 1697: 1695: 1692: 1690: 1687: 1685: 1684:with datapath 1682: 1681: 1680: 1677: 1675: 1672: 1670: 1667: 1666: 1664: 1662: 1658: 1654: 1647: 1642: 1640: 1635: 1633: 1628: 1627: 1624: 1618: 1615: 1612: 1609: 1607: 1604: 1602: 1599: 1597: 1594: 1591: 1588: 1586: 1583: 1581: 1578: 1575: 1572: 1571: 1551: 1550: 1545: 1538: 1523: 1519: 1513: 1498: 1492: 1477: 1470: 1463: 1455: 1451: 1450: 1445: 1438: 1430: 1426: 1419: 1403: 1402: 1397: 1391: 1376: 1372: 1365: 1350: 1346: 1339: 1324: 1320: 1314: 1306: 1302: 1296: 1280: 1276: 1272: 1265: 1257: 1251: 1235: 1229: 1221: 1219:9781466648524 1215: 1211: 1205: 1189: 1183: 1176: 1163: 1159: 1153: 1137: 1133: 1127: 1111: 1107: 1103: 1096: 1080: 1076: 1072: 1066: 1050: 1046: 1042: 1036: 1021: 1017: 1010: 1008: 988: 981: 965: 959: 951: 947: 943: 937: 926: 922: 918: 914: 910: 903: 897: 881: 875: 859: 853: 837: 831: 815: 809: 801: 797: 796:www.intel.com 793: 787: 772: 768: 767: 759: 753: 747: 739: 733: 725: 721: 717: 711: 707: 703: 696: 677: 670: 663: 661: 652: 646: 639: 634: 618: 612: 596: 592: 586: 571: 567: 560: 541: 537: 530: 523: 507: 506: 501: 494: 490: 480: 477: 475: 472: 470: 467: 466: 460: 458: 454: 450: 446: 445:timing attack 442: 438: 434: 431:In May 2005, 424: 422: 418: 413: 411: 407: 403: 398: 396: 392: 387: 384: 382: 378: 374: 369: 361: 359: 356:generated by 355: 349: 346: 345:replay system 339: 336: 330: 327: 324: 319: 309: 307: 303: 299: 294: 292: 288: 284: 280: 276: 272: 268: 264: 260: 256: 251: 249: 245: 240: 238: 234: 230: 226: 218: 216: 211: 205: 203: 198: 196: 192: 188: 184: 180: 176: 171: 167: 165: 161: 152: 143: 140: 137: 133: 129: 124: 120: 115: 113: 109: 105: 101: 97: 93: 89: 85: 81: 78: 74: 70: 66: 62: 61:HT Technology 58: 54: 47: 43: 39: 34: 30: 19: 4170:Coordination 4100:Amdahl's law 4036:Simultaneous 3809: 3768:AMT versions 3680:Discontinued 3554:Chip carrier 3492:Clock gating 3411:Mixed-signal 3308:Write buffer 3285:Control unit 3097:Clock signal 2836:accelerators 2818:Cypress PSoC 2479: 2475:Simultaneous 2292:Out-of-order 1924:Neuromorphic 1805:Architecture 1763:Belt machine 1756:Zeno machine 1689:Hierarchical 1553:. Retrieved 1547: 1537: 1525:. Retrieved 1521: 1512: 1500:. Retrieved 1491: 1479:. Retrieved 1475: 1462: 1454:the original 1447: 1437: 1428: 1418: 1406:. Retrieved 1401:Ars Technica 1399: 1390: 1378:. Retrieved 1375:The Register 1374: 1364: 1352:. Retrieved 1349:The Register 1348: 1338: 1326:. Retrieved 1323:bit-tech.net 1322: 1313: 1304: 1295: 1283:. Retrieved 1279:the original 1274: 1264: 1238:. Retrieved 1228: 1209: 1204: 1192:. Retrieved 1182: 1173: 1166:. Retrieved 1152: 1140:. Retrieved 1135: 1126: 1114:. Retrieved 1110:the original 1095: 1083:. Retrieved 1079:the original 1074: 1065: 1053:. Retrieved 1049:the original 1044: 1035: 1023:. Retrieved 1019: 994:. Retrieved 980: 968:. Retrieved 958: 950:the original 945: 936: 925:the original 912: 908: 896: 884:. Retrieved 874: 862:. Retrieved 852: 840:. Retrieved 830: 818:. Retrieved 808: 800:the original 795: 786: 775:, retrieved 771:the original 765: 758: 746: 701: 695: 683:. Retrieved 676:the original 645: 633: 621:. Retrieved 611: 599:. Retrieved 595:the original 585: 575:30 September 573:. Retrieved 559: 549:30 September 547:. Retrieved 540:the original 535: 522: 512:30 September 510:. Retrieved 505:Ars Technica 503: 493: 430: 414: 399: 388: 385: 370: 367: 350: 341: 332: 328: 315: 295: 287:Windows 2000 277:(plus their 252: 241: 227: 224: 206: 199: 172: 168: 157: 141: 116: 68: 64: 60: 56: 52: 51: 29: 4606:Scalability 4367:distributed 4250:Concurrency 4217:Programming 4058:Cooperative 4047:Speculative 3983:Instruction 3840:Thunderbolt 3339:Multiplexer 3303:Data buffer 3014:Single-core 2986:bit slicing 2844:Coprocessor 2699:Coprocessor 2580:performance 2502:Cooperative 2492:Speculative 2452:Distributed 2411:Superscalar 2396:Instruction 2364:Parallelism 2337:Speculative 2169:System/3x0 2041:Instruction 1818:Von Neumann 1731:Post–Turing 1408:25 November 1240:29 February 1194:29 February 1142:26 February 1136:calomel.org 1116:26 February 996:12 November 882:. Intel.com 417:Coffee Lake 267:Pentium Pro 231:introduced 132:in parallel 128:superscalar 77:proprietary 46:clock cycle 4645:Categories 4611:Starvation 4350:asymmetric 4085:PRAM model 4053:Preemptive 3707:Intel Play 3646:Skulltrail 3616:Centrino 2 3598:technology 3459:management 3354:Multiplier 3215:Logic gate 3205:Sequential 3112:Functional 3092:Clock rate 3065:Data cache 3038:Components 3019:Multi-core 3007:Core count 2497:Preemptive 2401:Pipelining 2384:Bit-serial 2327:Wide-issue 2272:Structural 2194:Tilera ISA 2160:MicroBlaze 2130:ETRAX CRIS 2025:Comparison 1870:Load–store 1850:Endianness 1354:13 January 1328:2 December 1275:Top500.org 1162:kernel.org 623:24 October 485:References 395:Silvermont 302:Intel Atom 187:cache miss 136:concurrent 96:processors 4345:symmetric 4090:PEM model 3815:Omni-Path 3795:SpeedStep 3641:Ultrabook 3604:Platforms 3393:Circuitry 3313:Microcode 3237:Registers 3080:coherence 3055:CPU cache 2913:Word size 2578:Processor 2222:Execution 2125:DEC Alpha 2103:Power ISA 1919:Cognitive 1726:Universal 1527:24 August 1522:marc.info 1502:24 August 1429:AnandTech 921:1535-766X 732:cite book 724:983459758 570:AnandTech 536:cs.sfu.ca 410:Microcode 406:Kaby Lake 381:dual core 364:Drawbacks 235:with the 217:systems. 210:scheduler 117:For each 38:processes 4576:Deadlock 4564:Problems 4530:pthreads 4510:OpenHMPP 4435:Ateji PX 4396:computer 4267:Hardware 4134:Elements 4120:Slowdown 4031:Temporal 4013:Pipeline 3854:Upcoming 3611:Centrino 3331:Datapath 3024:Manycore 2996:variable 2834:Hardware 2470:Temporal 2150:OpenRISC 1845:Cellular 1835:Dataflow 1828:modified 1250:cite web 1085:24 April 1055:12 April 685:21 March 463:See also 427:Security 393:for its 318:die area 289:SP3 and 146:Overview 4535:RaftLib 4515:OpenACC 4490:GPUOpen 4480:C++ AMP 4455:Charm++ 4197:Barrier 4141:Process 4125:Speedup 3910:General 3726:Current 3656:Galileo 3507:Related 3438:Quantum 3428:Digital 3423:Boolean 3321:Counter 3220:Quantum 2981:512-bit 2976:256-bit 2971:128-bit 2814:(MPSoC) 2799:on chip 2797:Systems 2615:(FLOPS) 2428:Process 2277:Control 2259:Hazards 2145:Itanium 2140:Unicore 2098:PowerPC 1823:Harvard 1783:Pointer 1778:Counter 1736:Quantum 1481:14 June 1285:5 April 1175:system. 1168:2 March 1025:2 March 970:5 April 886:5 April 864:5 April 820:5 April 619:. Intel 449:OpenBSD 402:Skylake 306:Itanium 279:Celeron 221:History 183:logical 104:Itanium 94:server 4628:  4505:OpenCL 4500:OpenMP 4445:Chapel 4362:shared 4357:Memory 4292:(SIMT) 4235:Models 4146:Thread 4078:Theory 4049:(SpMT) 4003:Memory 3988:Thread 3971:Levels 3661:Edison 3631:Tablet 3443:Switch 3433:Analog 3171:(IMC) 3142:(MMU) 2991:others 2966:64-bit 2961:48-bit 2956:32-bit 2951:24-bit 2946:16-bit 2941:15-bit 2936:12-bit 2773:Mobile 2689:Stream 2684:Barrel 2679:Vector 2668:(GPU) 2627:(SUPS) 2595:(IPC) 2447:Memory 2440:Vector 2423:Thread 2406:Scalar 2208:Others 2155:RISC-V 2120:SuperH 2089:Power 2085:MIPS-X 2060:PDP-11 1909:Fabric 1661:Models 1555:14 May 1380:4 July 1216:  919:  842:2 July 777:24 May 722:  712:  601:4 June 281:& 110:, and 4475:Dryad 4440:Boost 4161:Array 4151:Fiber 4065:(CMT) 4038:(SMT) 3952:GPGPU 3717:MMC-2 3712:MMC-1 3666:Curie 3596:Intel 3499:(PPW) 3457:Power 3349:Adder 3225:Array 3192:Logic 3153:(TLB) 3136:(FPU) 3130:(AGU) 3124:(ALU) 3114:units 3050:Cache 2931:8-bit 2926:4-bit 2921:1-bit 2885:(TPU) 2879:(DSP) 2873:(PPU) 2867:(VPU) 2856:(GPU) 2825:(NoC) 2808:(SoC) 2743:(PoP) 2737:(SiP) 2731:(MCM) 2672:GPGPU 2662:(CPU) 2652:Types 2633:(PPW) 2621:(TPS) 2609:(IPS) 2601:(CPI) 2372:Level 2183:S/390 2178:S/370 2173:S/360 2115:SPARC 2093:POWER 1976:TRIPS 1944:Types 1549:WIRED 1472:(PDF) 1106:Intel 990:(PDF) 928:(PDF) 905:(PDF) 679:(PDF) 672:(PDF) 543:(PDF) 532:(PDF) 193:, or 73:Intel 71:) is 4540:ROCm 4470:CUDA 4460:Cilk 4427:APIs 4387:COMA 4382:NUMA 4313:MIMD 4308:MISD 4285:SIMD 4280:SISD 4008:Loop 3998:Data 3993:Task 3748:vPro 3738:CNVi 3636:CULV 3621:Viiv 3477:ACPI 3210:Glue 3102:FIFO 3045:Core 2783:ASIP 2724:CPLD 2719:FPOA 2714:FPGA 2709:ASIC 2562:SPMD 2557:MIMD 2552:MISD 2545:SWAR 2525:SIMD 2520:SISD 2435:Data 2418:Task 2389:Word 2135:M32R 2080:MIPS 2043:sets 2010:ZISC 2005:NISC 2000:OISC 1995:MISC 1988:EPIC 1983:VLIW 1971:EDGE 1961:RISC 1956:CISC 1865:HUMA 1860:NUMA 1557:2019 1529:2018 1504:2018 1483:2016 1410:2017 1382:2017 1356:2014 1330:2023 1287:2011 1256:link 1242:2012 1214:ISBN 1196:2012 1170:2015 1144:2015 1118:2015 1087:2011 1057:2011 1027:2015 998:2012 972:2011 917:ISSN 888:2011 866:2011 844:2017 822:2011 779:2016 738:link 720:OCLC 710:ISBN 687:2014 625:2021 603:2014 577:2015 551:2015 514:2015 404:and 283:Xeon 273:and 255:Xeon 248:CMOS 215:NUMA 108:Atom 92:Xeon 4555:ZPL 4550:TBB 4545:UPC 4525:PVM 4495:MPI 4450:HPX 4377:UMA 3978:Bit 3671:Evo 3651:NUC 3626:MID 3472:APM 3467:PMU 3359:CPU 3316:ROM 3087:Bus 2704:PAL 2379:Bit 2165:LMC 2070:ARM 2065:x86 2055:VAX 373:ARM 335:MPI 197:.) 88:x86 75:'s 67:or 65:HTT 59:or 4647:: 3406:3D 1546:. 1520:. 1474:. 1446:. 1427:. 1398:. 1373:. 1347:. 1321:. 1303:. 1273:. 1252:}} 1248:{{ 1172:. 1160:. 1134:. 1104:. 1073:. 1043:. 1018:. 1006:^ 944:. 913:06 911:. 907:. 794:. 734:}} 730:{{ 718:. 704:. 659:^ 568:. 534:. 502:. 269:, 189:, 106:, 69:HT 3895:e 3888:t 3881:v 3588:e 3581:t 3574:v 1645:e 1638:t 1631:v 1559:. 1531:. 1506:. 1485:. 1431:. 1412:. 1384:. 1358:. 1332:. 1289:. 1258:) 1244:. 1222:. 1198:. 1146:. 1120:. 1089:. 1059:. 1029:. 1000:. 974:. 890:. 868:. 846:. 824:. 740:) 726:. 689:. 653:. 627:. 605:. 579:. 553:. 516:. 48:. 20:)

Index

Hyper-Threading

processes
pipeline bubbles
clock cycle
Intel
proprietary
simultaneous multithreading
parallelization of computations
x86
Xeon
processors
Pentium 4
Itanium
Atom
Core 'i' Series
processor core
operating system
superscalar
in parallel
concurrent

multithreading
Sun Microsystems
architectural state
execution resources
logical
cache miss
branch misprediction
data dependency

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑