Commodity computing: Difference between revisions
m clean up, References after punctuation per WP:REFPUNC and WP:PAIC using AWB (8434) |
m →Characteristics: Copy edit ▸ MTCE tags ▸ Redaction of 7-year-old tag. Tags: Mobile edit Mobile app edit Android app edit App select source |
||
(47 intermediate revisions by 42 users not shown) | |||
Line 1: | Line 1: | ||
'''Commodity computing''' ( |
'''Commodity computing''' (also known as '''commodity cluster computing''') involves the use of large numbers of already-available computing components for [[parallel computing]], to get the greatest amount of useful computation at low cost.<ref>{{cite web |
||
| accessdate = 2010-03-07 |
| accessdate = 2010-03-07 |
||
| author = John E. Dorband |
| author = John E. Dorband |
||
| |
| author2= Josephine Palencia Raytheon |author3= Udaya Ranawake |
||
| publisher = Goddard Space Flight Center |
| publisher = Goddard Space Flight Center |
||
| location = http://spacejournal.ohio.edu/ |
|||
| title = Commodity Computing Clusters at Goddard Space Flight Center |
| title = Commodity Computing Clusters at Goddard Space Flight Center |
||
| url = http://spacejournal.ohio.edu/pdf/Dorband.pdf |
| url = http://spacejournal.ohio.edu/pdf/Dorband.pdf |
||
| quote = The purpose of commodity cluster computing is to utilize large numbers of readily available computing components for parallel computing to obtaining the greatest amount of useful computations for the least cost. The issue of the cost of a computational resource is key to computational science and data processing at GSFC as it is at most other places, the difference being that the need at GSFC far exceeds any expectation of meeting that need. |
| quote = The purpose of commodity cluster computing is to utilize large numbers of readily available computing components for parallel computing to obtaining the greatest amount of useful computations for the least cost. The issue of the cost of a computational resource is key to computational science and data processing at GSFC as it is at most other places, the difference being that the need at GSFC far exceeds any expectation of meeting that need. |
||
}}</ref> This is a useful alternative to high-cost [[superminicomputer]]s or boutique computers. Commodity computers are [[computer system]]s - manufactured by multiple vendors - incorporating components based on [[open standard]]s.{{citation needed|date=April 2017}} |
|||
}}</ref> It is computing done in commodity computers as opposed to high-cost supermicrocomputers or boutique computers. Commodity computers are [[computer system]]s manufactured by multiple vendors, incorporating components based on [[open standard]]s. Such systems are said to be based on [[commodity]] components, since the standardization process promotes lower costs and less differentiation among vendors' products. A governing principle of commodity computing is that it is preferable to have more low-performance, low-cost hardware working in parallel ([[scalar computing]]) (e.g. [[Advanced Micro Devices|AMD]] x86 [[Complex instruction set computing|CISC]]<ref>http://www.computerworld.com/s/article/9154518/IBM_HP_servers_won_t_stop_x86_onslaught_on_Unix</ref>) than to have less high-performance, high-cost hardware<ref>http://research.google.com/pubs/DistributedSystemsandParallelComputing.html</ref> (e.g. IBM [[POWER7]]<ref>ftp://ftp.software.ibm.com/common/ssi/pm/rg/n/poo03017usen/POO03017USEN.PDF</ref> [[Reduced instruction set computing|RISC]]). At some point, the number of discrete systems in a cluster will be greater than the [[mean time between failures]] (MTBF) for any hardware platform, no matter how reliable, so [[fault tolerance]] must be built into the controlling software.<ref>http://www.morganclaypool.com/doi/abs/10.2200/S00193ED1V01Y200905CAC006</ref><ref>http://insidehpc.com/2008/06/02/google-fellow-sheds-some-light-on-infrastructure-robustness-in-face-of-failure</ref> Purchases should be optimized on cost-per-unit-of-performance, not just absolute performance-per-CPU at any cost. |
|||
⚫ | |||
Such systems are said to be based on standardized computer components, since the standardization process promotes lower costs and less differentiation among vendors' products. Standardization and decreased differentiation lower the switching or exit cost from any given vendor, increasing purchasers' leverage and preventing [[vendor lock-in|lock-in]]. |
|||
A governing principle of commodity computing is that it is preferable to have more low-performance, low-cost hardware working in parallel (scalar computing) (e.g. [[Advanced Micro Devices|AMD]] x86 [[Complex instruction set computing|CISC]]<ref>{{Cite web|url=http://www.computerworld.com/s/article/9154518/IBM_HP_servers_won_t_stop_x86_onslaught_on_Unix|title = IBM, HP servers won't stop x86 onslaught on Unix|date = 9 February 2010}}</ref>) than to have fewer high-performance, high-cost hardware items<ref>{{Cite web|url=http://research.google.com/pubs/DistributedSystemsandParallelComputing.html|title=Publications – Google Research}}</ref> (e.g. IBM [[POWER7]] or [[Sun Microsystems|Sun]]-[[Oracle Corporation|Oracle's]] [[SPARC]]<ref>[ftp://ftp.software.ibm.com/common/ssi/pm/rg/n/poo03017usen/POO03017USEN.PDF ftp.software.ibm.com]{{dead link|date=August 2024|bot=medic}}{{cbignore|bot=medic}}</ref> [[Reduced instruction set computing|RISC]]). At some point, the number of discrete systems in a cluster will be greater than the [[mean time between failures]] (MTBF) for any hardware platform{{Dubious |sentence on fault tolerance/mtbf doesn't make sense|reason=Units don't match for compared items: 1st one is without unit and for the second one unit is time|date=September 2017}}, no matter how reliable, so [[fault tolerance]] must be built into the controlling software.<ref>{{Cite journal|doi = 10.2200/S00193ED1V01Y200905CAC006|title = The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines|year = 2009|last1 = Barroso|first1 = Luiz André|last2 = Hölzle|first2 = Urs|journal = Synthesis Lectures on Computer Architecture|volume = 4|pages = 1–108|doi-access = free}}</ref><ref>{{Cite web |url=http://insidehpc.com/2008/06/02/google-fellow-sheds-some-light-on-infrastructure-robustness-in-face-of-failure |title=Google Fellow sheds some light on infrastructure, robustness in face of failure | insideHPC.com |access-date=2010-03-06 |archive-url=https://web.archive.org/web/20110810085127/http://insidehpc.com/2008/06/02/google-fellow-sheds-some-light-on-infrastructure-robustness-in-face-of-failure/ |archive-date=2011-08-10 |url-status=dead }}</ref> |
|||
Purchases should be optimized on cost-per-unit-of-performance, not just on absolute performance-per-CPU at any cost.{{citation needed|date=April 2017}} |
|||
== History == |
== History == |
||
Line 15: | Line 21: | ||
The first computers were large, expensive and proprietary. The move towards commodity computing began when [[Digital Equipment Corporation|DEC]] introduced the [[PDP-8]] in 1965. This was a computer that was relatively small and inexpensive enough that a department could purchase one without convening a meeting of the board of directors. The entire [[minicomputer]] industry sprang up to supply the demand for 'small' computers like the PDP-8. Unfortunately, each of the many different brands of minicomputers had to stand on its own because there was no software and very little hardware compatibility between the brands. |
The first computers were large, expensive and proprietary. The move towards commodity computing began when [[Digital Equipment Corporation|DEC]] introduced the [[PDP-8]] in 1965. This was a computer that was relatively small and inexpensive enough that a department could purchase one without convening a meeting of the board of directors. The entire [[minicomputer]] industry sprang up to supply the demand for 'small' computers like the PDP-8. Unfortunately, each of the many different brands of minicomputers had to stand on its own because there was no software and very little hardware compatibility between the brands. |
||
When the first general purpose [[microprocessor]] was introduced in |
When the first general purpose [[microprocessor]] was introduced in 1971 ([[Intel 4004]]) it immediately began chipping away at the low end of the computer market, replacing [[embedded system|embedded minicomputers]] in many industrial devices. |
||
This process accelerated in 1977 with the introduction of the first commodity-like microcomputer, the [[Apple II]]. With the development of the [[VisiCalc]] application in 1979, microcomputers broke out of the factory and began entering office suites in large quantities, but still through the back door. |
This process accelerated in 1977 with the introduction of the first commodity-like [[microcomputer]], the [[Apple II]]. With the development of the [[VisiCalc]] application in 1979, microcomputers broke out of the factory and began entering office suites in large quantities, but still through the back door. |
||
=== The 1980s to mid-1990s === |
=== The 1980s to mid-1990s === |
||
The [[IBM PC]] was introduced in 1981 and immediately began displacing Apple II |
The [[IBM Personal Computer|IBM PC]] was introduced in 1981 and immediately began displacing [[Apple II]] systems in the corporate world, but commodity computing as we know it today truly began when [[Compaq]] developed the first true [[IBM PC compatible]]. More and more PC-compatible microcomputers began coming into big companies through the front door and commodity computing was well established. |
||
⚫ | During the 1980s microcomputers began displacing larger computers in a serious way. At first, price was the key justification but by the late 1980s and early 1990s, [[Very-large-scale integration|VLSI]] semiconductor technology had evolved to the point where microprocessor performance began to eclipse the performance of discrete logic designs. These traditional designs were limited by speed-of-light delay issues inherent in any CPU larger than a single chip, and performance alone began driving the success of microprocessor-based systems. |
||
⚫ | By the mid |
||
⚫ | |||
⚫ | |||
A large part of the current commodity computing marketplace is based on [[IBM PC compatible]]s. |
|||
This typically means systems that are capable of running [[Microsoft Windows]], [[Linux]], or [[PC-DOS]]/[[MS-DOS]], without requiring special drivers. |
|||
Some of the general characteristics of a commodity computer are: |
|||
* Shares a base [[instruction set]] common to many different models. |
|||
* Shares an architecture (memory, I/O map and expansion capability) that is common to many different models. |
|||
* High degree of mechanical compatibility, internal components ([[Central processing unit|CPU]], [[Random-access memory|RAM]], [[motherboard]], peripheral cards, drives) are interchangeable with other models. |
|||
* Software is widely available off-the-shelf. |
|||
* Compatible with most available peripherals, works with most right out of the box. |
|||
⚫ | During the 1980s, microcomputers began displacing larger computers in a serious way. At first, price was the key justification but by the late 1980s and early 1990s, [[Very-large-scale integration|VLSI]] [[semiconductor]] technology had evolved to the point where microprocessor performance began to eclipse the performance of [[discrete logic]] designs. These traditional designs were limited by [[speed-of-light]] delay issues inherent in any CPU larger than a single chip, and performance alone began driving the success of microprocessor-based systems. |
||
Other characteristics of today's commodity computers include: |
|||
* [[ATX]] motherboard form factor. |
|||
* Built-in interfaces for [[floppy drive]]s, [[Advanced Technology Attachment|IDE]] CD-ROMs and hard drives. |
|||
* Industry-standard [[Peripheral Component Interconnect|PCI]] slots for expansion. |
|||
⚫ | By the mid-1990s, nearly all computers made were based on microprocessors, and the majority of general purpose microprocessors were implementations of the [[x86]] [[instruction set architecture]]. Although there was a time when every traditional computer manufacturer had its own proprietary micro-based designs, there are only a few manufacturers of non-commodity computer systems today. |
||
Some characteristics that are becoming common to many commodity computers and may become part of the commodity computer definition: |
|||
* Built-in [[Ethernet]] interface. |
|||
* Built-in [[Universal Serial Bus|USB]] ports. |
|||
* Built-in video. |
|||
* Built in interfaces for [[Serial ATA|SATA]] drives. |
|||
=== Today === |
|||
Standards such as [[SCSI]], [[IEEE 1394 interface|FireWire]], and [[Fibre Channel]] help commodotize computer systems more powerful than typical PCs. Standards such as [[Advanced Telecommunications Computing Architecture|ATCA]] and [[Carrier Grade Linux]] are helping to commoditize [[telecommunication]]s systems. [[Blade server]]s, [[server farm]]s, and [[computer cluster]]s are also [[computer architecture]]s that exploit commodity [[Computer hardware|hardware]]. |
|||
⚫ | |||
== Deployment == |
== Deployment == |
||
Line 56: | Line 39: | ||
* [[Baidu]] |
* [[Baidu]] |
||
* [[Facebook]] |
* [[Facebook]] |
||
* [[Google]] |
* [[Google Compute Engine]] |
||
* [[ImageShack]] |
* [[ImageShack]] |
||
* [[LinkedIn]] |
* [[LinkedIn]] |
||
* [[New York Times]] |
* ''[[The New York Times]]'' |
||
* [[Twitter]] |
* [[Twitter]] |
||
* [[Yahoo!]] |
* [[Yahoo!]] |
||
Line 65: | Line 48: | ||
== See also == |
== See also == |
||
* [[Commercial off-the-shelf]] (COTS) |
* [[Commercial off-the-shelf]] (COTS) |
||
* [[PlayStation 3 cluster]] |
|||
* [[Beowulf cluster]] |
|||
== References == |
== References == |
||
Line 70: | Line 55: | ||
== External links == |
== External links == |
||
⚫ | |||
*[http://highscalability.com/ highscalability] |
|||
⚫ | |||
⚫ | |||
⚫ | |||
*[http://hadoop.apache.org/ HADOOP] |
*[http://hadoop.apache.org/ HADOOP] |
||
*[http://google-services.blogspot.com/2006/07/google-machine.html Google Commodity computing models] |
*[http://google-services.blogspot.com/2006/07/google-machine.html Google Commodity computing models] |
||
*[https://web.archive.org/web/20160327235023/http://enterprisesystemsmedia.com/article/big-lie-revealed-commodity-servers-not-cheaper-than-mainframe The Big Lie Revealed] |
|||
<!--Interwikies--> |
<!--Interwikies--> |
||
Line 80: | Line 65: | ||
<!--Categories--> |
<!--Categories--> |
||
[[Category:Computing platforms]] |
[[Category:Computing platforms]] |
||
[[Category:IBM PC compatibles |
[[Category:IBM PC compatibles]] |
||
[[Category:Personal computers]] |
[[Category:Personal computers]] |
||
[[Category:X86 microprocessors |
[[Category:X86 microprocessors]] |
Latest revision as of 17:49, 26 December 2024
Commodity computing (also known as commodity cluster computing) involves the use of large numbers of already-available computing components for parallel computing, to get the greatest amount of useful computation at low cost.[1] This is a useful alternative to high-cost superminicomputers or boutique computers. Commodity computers are computer systems - manufactured by multiple vendors - incorporating components based on open standards.[citation needed]
Characteristics
[edit]Such systems are said to be based on standardized computer components, since the standardization process promotes lower costs and less differentiation among vendors' products. Standardization and decreased differentiation lower the switching or exit cost from any given vendor, increasing purchasers' leverage and preventing lock-in.
A governing principle of commodity computing is that it is preferable to have more low-performance, low-cost hardware working in parallel (scalar computing) (e.g. AMD x86 CISC[2]) than to have fewer high-performance, high-cost hardware items[3] (e.g. IBM POWER7 or Sun-Oracle's SPARC[4] RISC). At some point, the number of discrete systems in a cluster will be greater than the mean time between failures (MTBF) for any hardware platform[dubious – discuss], no matter how reliable, so fault tolerance must be built into the controlling software.[5][6] Purchases should be optimized on cost-per-unit-of-performance, not just on absolute performance-per-CPU at any cost.[citation needed]
History
[edit]The mid-1960s to early 1980s
[edit]The first computers were large, expensive and proprietary. The move towards commodity computing began when DEC introduced the PDP-8 in 1965. This was a computer that was relatively small and inexpensive enough that a department could purchase one without convening a meeting of the board of directors. The entire minicomputer industry sprang up to supply the demand for 'small' computers like the PDP-8. Unfortunately, each of the many different brands of minicomputers had to stand on its own because there was no software and very little hardware compatibility between the brands.
When the first general purpose microprocessor was introduced in 1971 (Intel 4004) it immediately began chipping away at the low end of the computer market, replacing embedded minicomputers in many industrial devices.
This process accelerated in 1977 with the introduction of the first commodity-like microcomputer, the Apple II. With the development of the VisiCalc application in 1979, microcomputers broke out of the factory and began entering office suites in large quantities, but still through the back door.
The 1980s to mid-1990s
[edit]The IBM PC was introduced in 1981 and immediately began displacing Apple II systems in the corporate world, but commodity computing as we know it today truly began when Compaq developed the first true IBM PC compatible. More and more PC-compatible microcomputers began coming into big companies through the front door and commodity computing was well established.
During the 1980s, microcomputers began displacing larger computers in a serious way. At first, price was the key justification but by the late 1980s and early 1990s, VLSI semiconductor technology had evolved to the point where microprocessor performance began to eclipse the performance of discrete logic designs. These traditional designs were limited by speed-of-light delay issues inherent in any CPU larger than a single chip, and performance alone began driving the success of microprocessor-based systems.
By the mid-1990s, nearly all computers made were based on microprocessors, and the majority of general purpose microprocessors were implementations of the x86 instruction set architecture. Although there was a time when every traditional computer manufacturer had its own proprietary micro-based designs, there are only a few manufacturers of non-commodity computer systems today.
Today
[edit]Today, there are fewer and fewer general business computing requirements that cannot be met with off-the-shelf commodity computers. It is likely that the low-end of the supermicrocomputer genre will continue to be pushed upward by increasingly powerful commodity microcomputers.
Deployment
[edit]- Amazon EC2
- Baidu
- Google Compute Engine
- ImageShack
- The New York Times
- Yahoo!
See also
[edit]References
[edit]- ^ John E. Dorband; Josephine Palencia Raytheon; Udaya Ranawake. "Commodity Computing Clusters at Goddard Space Flight Center" (PDF). Goddard Space Flight Center. Retrieved 2010-03-07.
The purpose of commodity cluster computing is to utilize large numbers of readily available computing components for parallel computing to obtaining the greatest amount of useful computations for the least cost. The issue of the cost of a computational resource is key to computational science and data processing at GSFC as it is at most other places, the difference being that the need at GSFC far exceeds any expectation of meeting that need.
- ^ "IBM, HP servers won't stop x86 onslaught on Unix". 9 February 2010.
- ^ "Publications – Google Research".
- ^ ftp.software.ibm.com[dead link ]
- ^ Barroso, Luiz André; Hölzle, Urs (2009). "The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines". Synthesis Lectures on Computer Architecture. 4: 1–108. doi:10.2200/S00193ED1V01Y200905CAC006.
- ^ "Google Fellow sheds some light on infrastructure, robustness in face of failure | insideHPC.com". Archived from the original on 2011-08-10. Retrieved 2010-03-06.