Megahertz myth

[[File:P55c-233.jpg|thumb|right|165px|A 233 MHz Intel Pentium MMX processor.]]{{pseudoscience}}{{Video games}}
{{cquote|There is in fact a "Megahertz Myth" and it exists in the minds of those who think that the only factor that matters is raw chip speed, as defined in megahertz ratings. Especially true in the case of different CPU designs, even among products in the same family. When you start to compare different classes of chips, the mythological 1:1 relationship of MHz to "speed" becomes even more difficult to cling to.|||Aphelion, ''ArsTechnica'' forums<ref>[https://arstechnica.com/civis/viewtopic.php?p=13556512&sid=a6f6cc50fce7f4f199795a10bffa1e66#p13556512 The Megahertz myth]. ''ArsTechnica'' forums, 2003.</ref>}}

The '''megahertz myth''' is a name for the widely held<ref name=guardian>Tony Smith, [https://www.theguardian.com/technology/2002/feb/28/onlinesupplement3 Megahertz myth]. ''The Guardian'', 27 February 2002.{{quotebox|For years, that frequency - measured in megahertz and more recently gigahertz - has been a '''key factor for millions of consumers when buying PCs'''. The higher the number the better, goes the rule of thumb.}}{{quotebox|But while AMD's engineers may be happy with the balance they have struck, the company's business brains aren't so keen. They know that while their top-of-the-range processor runs at 1.67GHz, Intel's runs at 2.2GHz - and too many buyers assume it is much faster. [...] To stay within the law, the comparison AMD makes is with the previous generation of Athlon, but make no mistake. It wants buyers to have Intel's figures in mind. Moorhead is convinced they are doing so and that without that performance comparison, the Athlon XP's first three months would not have proved as successful. Certainly AMD's market share dipped a fraction in the last quarter of 2001, but not enough to say whether it has struck a chord with the "victims" of the megahertz myth - consumers. Ultimately, it may not matter. Moorhead admits that the naming scheme is a "bridge metric" to fill the gap until the company can come up with something more meaningful.}}</ref> misconception that the ''computing power'' of a CPU is strictly a function of its ''clock speed''. In reality, clock speed is only one of many factors that determine the speed at which a CPU can execute instructions. The myth is largely a creation of [[computer]] and hardware manufacturers' marketing departments, who for a while highlighted clock speed as one of the primary features in their advertising,<ref name=guardian /> playing up the innate assumption that big numbers = <big><span style="color:red;">'''MOAR POWER!!!11'''</span></big>

==What affects speed==
{{cquote|For many years, the number of times a computer's clock — PC's "heart" to its processor's "brain" — ticked each second was a direct indication of how many calculations a processor could perform. One clock tick, one instruction, was how the design rule ran.|||Tony Smith, ''[[The Guardian]]''<ref name=guardian />}}
[[Moore's Law|Although CPU clock speeds have not significantly changed in the last decade]], many improvements to hardware efficiency and software optimization have kept actual performance steadily growing.

===Multiple cores===
Modern CPUs, especially the ones of mobile devices as smartphones and tablets, include multiple execution units, or ''cores'', within the same chip. Each one of these cores has all of the capabilities of a typical CPU, and these cores are able to work together on the same piece of software.  This is known as parallel processing.  While modern multi-core CPUs may run at a lower megahertz speed than past processors, their multiple cores allow them to process more workloads simultaneously.  Therefore, the same amount of work can be achieved at lower speeds.  Fewer megahertz equals less power, so multi-core CPUs are not only more powerful, they are also significantly more energy efficient.  The multi-core CPUs in modern smartphones, where cores are typically divided into performance and energy efficient ones (plus high performance ones for high-end devices),<ref>For example, see [https://www.notebookcheck.net/Qualcomm-Snapdragon-8-Gen-2-for-Galaxy-Processor-Benchmarks-and-Specs.695722.0.html Qualcomm Snapdragon 8 Gen 2 for Galaxy]. notebookcheck.com, 2023.</ref> are able to achieve greater performance with fewer than five watts of power than the hundreds of watts needed by desktop computers from less than a decade earlier. Desktop and laptop computers sold today typically have four- or eight-core CPUs, with lower-end models having four or lower; smartphones and tablets have typically either four or eight-core CPUs, and enthusiast, academic and professional computers can have CPUs with dozens, if not hundreds, of cores (in the case of corporate mainframes). In recent years, the performance-and-efficiency core paradigm has also been adopted by Intel and AMD in their Core and Ryzen lines especially in laptops where battery life and thus portability is paramount.

To take advantage of parallel processing, developers must write their code accordingly in order to distribute the software's workload among the available cores. Some algorithms, especially those with many interdependencies between intermediate results, can be hard or impossible to parallelize. Earlier software such as the original Windows release of ''{{wpl|Crysis}}'' were coded with the expectation that processor clock speeds were to climb up over time, without taking into account the benefits of multithreading and other architectural advancements. This may account for why ''Crysis'' was so notoriously hard to run and could even get newer systems to get frame rate issues ingame, especially in the "Ascension" level which was cut in the PlayStation 3 and Xbox 360 conversions due to it being too demanding to run on PCs.{{efn|The ''Remastered'' release was based on the PS3 and Xbox 360 conversions which used CryENGINE 3, albeit modified with support for software-based ray tracing (which did not need any specialised graphics hardware to run as a jab at Nvidia's GeForce RTX line at the time).}}

===Multiple CPUs===
In the same way that a single CPU with multiple cores can distribute its workload, multiple CPUs, each with multiple cores, can further parallelize the task at hand.  These multiple CPUs may all be housed in the same case on a common motherboard, or they may be spread out across multiple racks of cases that then communicate with each other over high-speed network links.  Supercomputers use this technique, having sometimes hundreds of thousands of CPUs (and GPUs) working together on one task to achieve their huge processing power.  Similarly, the vast server and render "farms", employed by companies like [[Google]] and Industrial Light and Magic, utilize hundreds of thousands of cooperating CPUs.

Because of these techniques, making many CPUs act as one, the only theoretical limit to a supercomputer's processing power is the physical space it can occupy.  The practical limits are energy usage and heat dissipation.  At its peak, the Oak Ridge National Laboratory Titan's 37,376 CPUs and GPUs require 8.2 megawatts of power (or, enough to power about 8000 homes).<ref>[http://wayback.archive.org/web/20130205205421/http://www.green500.org/lists/green201211 The Green500 List - November 2012]. Archived from green500.org, 14 November 2012.</ref>  The Titan's cooling system has 6600 tons of capacity (a large house has about 3 tons).<ref>[https://www.youtube.com/watch?v=hruwUmd9NaE Oak Ridge National Laboratory Tour - Cooling Requirements]. AnandTech on [[YouTube]], 2013.</ref>  

{{wpl|Distributed computing|Distributed computing projects,}} like Folding@home and BOINC, allow home PC users to volunteer their unused processing power, through the internet, to globally networked projects.  With distributed computing software, a home PC downloads and then calculates a small chunk of a much more massive shared data set.  Once work on that small chunk has been completed, it is uploaded into the global data set, and a new small chunk is downloaded to be worked on.  In this manner, the unused power of millions of home PCs can be leveraged into solving extremely complex problems, like [[genome]] folding and the cataloguing of astronomical data.  [[Bitcoin]] also works similar to this.

===GPU acceleration===
Graphics processing units (GPUs) are specialized processors that can quickly perform a limited set of operations on a large series of values at the same time (for example, pixels on a screen).  This differs from the CPU, which is able to perform a much broader array of functions, but at a slower rate. As their name implies, GPUs are usually used for rendering graphic elements (like [[Video games|video games]])  efficiently, but can also be used for [[machine learning]] or other data-driven tasks that are hugely parallelizable, yet mathematically simple.  GPUs currently account for the majority of the processing power in nearly all of the World's supercomputers.  Two of the fastest supercomputers, [[China]]'s Tianhe-2 and the [[US]]'s Titan, both utilize tens of thousands of GPUs, most of which are little more than scaled-up versions of the same add-in cards used in home PCs.<ref>Anand Lal Shimpi, [https://www.anandtech.com/show/6421/inside-the-titan-supercomputer-299k-amd-x86-cores-and-186k-nvidia-gpu-cores Inside the Titan Supercomputer: 299K AMD x86 Cores and 18.6K NVIDIA GPUs]. anandtech.com, 31 October 2012.</ref>

===Miniaturization===
Miniaturization of components makes it possible to have ''more'' components in the same chip, which in turn can be used to parallelize more tasks.
There are some physical limits on miniaturization, because as the size of components decreases, [[quantum mechanics|quantum]] effects such as {{wpl|Quantum tunneling|tunneling}} become more apparent.

===Processors===
Instructions connect computer software to hardware and are information sent to the processor to be interpreted. The types of processors include:

{| class="wikitable"
!Vector processors
!Scalar processors
!Superscalar processors
|-
|One fixed-length instruction is interpreted per clock cycle, one after another. Unlike scalar it excels at manipulating large blocks of data.<ref name=wisegeek />
|Similar to vector, scalar interprets one instruction at a time and manipulates one data item at a time.<ref name=wisegeek />
|Executes multiple instructions at a time because it has multiple pipelines and can manipulate multiple data items at a time.<ref name=wisegeek>Dulce Corazon, [http://www.wisegeek.com/what-is-the-difference-between-scalar-and-superscalar-processors.htm What is the Difference Between Scalar and Superscalar Processors?] ''Easy Tech Junkie'', 24 August 2023.</ref>
|}

It is clear that superscalar is superior to scalar because 
it's super
 more instructions can be interpreted at a time. Being able to process more instructions per machine cycle means that processes are performed relatively more quickly.

===Bus and memory speed===
RAM is orders of magnitude slower than the CPU, and peripherals like drives and networking adapters are slower still. In modern computers, the CPU spends a good deal of time waiting for data to be read from or written to other components. Faster memories, more and bigger CPU {{wpl|Cache (computing)|caches,}} and faster {{wpl|Bus (computing)|buses}} are used to try to chip away at this delay.

===Other techniques===
Other techniques that have been employed to improve computing performance are:
* {{wpl|Register renaming||,}} to overcome the difficult instruction-level parallelism due to the scarceness of registers in some {{wpl|Instruction set|instruction sets}} (like those of the x86 architecture).
* {{wpl|Out-of-order execution||,}} to avoid wasting cycles, by executing instructions in a different order while making sure the semantics of the program remain the same.
* Addition of {{wpl|SIMD|specialized instructions}} that are optimized for performing some tasks more quickly than they would if these operations were manually performed by the binary code. {{wpl|Compiler|Compilers}} can recognize these patterns in programs and generate machine code that makes use of these specialized instructions. For example, POPCNT in SSE4 counts the number of 1 bits in a numeric value. Other instructions can speed up common [[Cryptography|cryptographic]] or media encoding/decoding operations.
* {{wpl|Computer cooling||,}} to get rid of the waste heat produced by the components that may damage them at worst or reduce their lifespan at best. This is a problem in mobile devices as smartphones and tablets, whose hardware is designed for power efficiency cramming {{wpl|System on chip|an entire system into the same chip}} and except for some niche devices designed for gaming,<ref>For example, the [https://www.gsmarena.com/zte_nubia_red_magic_9s_pro+-13190.php Nubia Red Magic 9S Pro+], 2024.</ref> generally lack active cooling systems (''passive'' cooling systems [https://www.gsmarena.com/xiaomi_redmi_note_8_pro-review-1997p4.php are] [https://www.gsmarena.com/realme_gt_neo3-review-2429p4.php much] [https://www.gsmarena.com/xiaomi_13_ultra-review-2562p4.php more] [https://www.gsmarena.com/asus_rog_phone_8_pro-review-2650p4.php common]).

==The "Bit Wars"==
A related misconception prevalent in [[video game]] circles especially during the 80s and 90s was the (somewhat) mistaken assumption that more bits is better. While this holds true with older systems such as the [[Nintendo|NES]] and {{wpl|Sega Genesis|Sega Genesis/Mega Drive}} when compared side by side,<ref>[https://segaretro.org/Genesis_Does Genesis Does]</ref> as a 16-bit processor can address more memory unaided thus allowing for better graphics and more complex gameplay, it all fell apart as time went on and video game systems became more and more complex (As an aside, the Sega Genesis also spawned the term "blast processing", which Sega of America's marketing team exploited for them to boast that the Genesis/Mega Drive is computationally superior to the Super NES. While Nintendo dismissed the term as mere [[woo]] on Sega's part through an advertorial piece on various gaming magazines, there is at least some basis to this whole "blast processing" gimmick; it is uncertain as to what the term actually stood for, but it is widely accepted that the term refers to the Genesis/Mega Drive's direct memory access (DMA) capabilities.<ref>[https://segaretro.org/Blast_processing Blast processing - Sega Retro]</ref>). Some systems such as the {{wpl|TurboGrafx-16}}{{efn|Originally sold in [[Japan]] by NEC as the PC Engine.}} and the {{wpl|Atari Jaguar}} were marketed as "16-bit" and "64-bit" respectively, but the TurboGrafx-16 actually ran off a custom derivative of the 8-bit {{wpl|WDC 65C02}} called the {{wpl|Hudson Soft HuC6280|HuC6280}} with the "-16" suffix referring to the HuC6270 video display controller,<ref>[https://www.copetti.org/writings/consoles/pc-engine/ PC Engine / TurboGrafx-16 Architecture]</ref> while the Jaguar's "64-bit" designation was more marketing [[bullshit]] on Atari's part than a factual measure of the console's computing abilities as the "Tom" and "Jerry" coprocessors as well as the Motorola 68000 CPU all execute 32-bit instructions, with ''Electronic Gaming Monthly'' ridiculing Atari's "Do The Math" marketing campaign, saying "If Sega did the math for the Sega Saturn the way Atari did the math for their 64-bit Jaguar system, the Sega Saturn would be a 112-bit monster of a machine."<ref>"The Hot Number: 112". Electronic Gaming Monthly. No. 71. Sendai Publishing. June 1995. p. 30.</ref> The {{wpl|Nintendo 64}} did come with a 64-bit MIPS CPU, though software rarely took advantage of 64-bit data precision operations;<ref>[https://www.copetti.org/writings/consoles/nintendo-64/ "Nintendo 64 Architecture: A Practical Analysis"]. Rodrigo Copetti. September 12, 2019. [https://web.archive.org/web/20230730091625/https://www.copetti.org/writings/consoles/nintendo-64/ Archived] from the original on July 30, 2023. Retrieved August 4, 2023.</ref> emulators simply ignore those instructions as they were practically unused in commercial software.<ref>[https://web.archive.org/web/20030831102553/http://www.emuunlim.com/UltraHLE/old/techinfo.htm UltraHLE technical information]</ref>

The sixth generation of video game consoles spawned the marketing term "128-bit", which was sadly picked up wholesale by mainstream news outlets such as [[CNN]] and even otherwise reputable encyclopedias.<ref>[https://www.reddit.com/r/videogames/comments/1ah0l09/2000sera_new_book_of_knowledge_article_about/ 2000s-era New Book of Knowledge article about video games]</ref> The {{wpl|Dreamcast}} for example was reported by CNN as a "128-bit monster",<ref>[http://www.cnn.com/TECH/computing/9909/09/dreamcast/ Sega unleashes a 128-bit monster on the gaming world]</ref> even though this is applies more to the PowerVR GPU used by the system; the Hitachi SH-4 CPU is by all intents and purposes 32-bit.<ref>[https://www.copetti.org/writings/consoles/dreamcast/ Dreamcast Architecture]</ref> As of {{CURRENTYEAR}}, there is currently no practical application for a 128-bit general purpose microprocessor as the advantages it has over a 64-bit CPU doesn't justify the complexity when existing 64-bit processors can simply handle most tasks just fine as it is.<ref>Waterman, Andrew; Asanović, Krste. "The RISC-V Instruction Set Manual, Volume I: Base User-Level ISA version 2.2". University of California, Berkeley. EECS-2016-118. Retrieved 25 May 2017.</ref>

==See also==
*[[Computing woo]]
*[[Moore's Law]], the exponential growth of transistor counts

==Notes==
{{notelist}}

==References==
{{reflist|2|80%}}

[[Category:Science]]
[[Category:Technology]]
[[Category:Computing woo]]

Categories: Science, Technology, Computing woo