Content deleted Content added
removed Category:Operating systems using HotCat - removing from high-level category, already included in lower-level category |
→See also: List of the top supercomputers in the United States |
||
(44 intermediate revisions by 33 users not shown) | |||
Line 1:
{{Short description|Use of Operative System by type of extremely powerful computer}}
A '''supercomputer operating system''' is an [[operating system]] intended for [[supercomputer]]s. Since the end of the 20th century,
Given that modern [[massively parallel]] supercomputers typically separate computations from other services by using multiple types of [[Locale (computer hardware)|nodes]], they usually run different operating systems on different nodes, e.g., using a small and efficient [[
While in a traditional multi-user computer system [[job scheduling]] is in effect a [[task scheduling|tasking]] problem for processing and peripheral resources, in a massively parallel system, the job management system needs to manage the allocation of both computational and communication resources, as well as gracefully dealing with inevitable hardware failures when tens of thousands of processors are present.<ref name=Yariv >Open Job Management Architecture for the Blue Gene/L Supercomputer by Yariv Aridor et al
[[File:Operating systems used on top 500 supercomputers.svg|thumb|right|Operating systems used on top 500 supercomputers]]
▲ |url=http://www.zdnet.com/linux-continues-to-rule-supercomputers-7000016968/ |title=Linux continues to rule supercomputers |last=Vaughn-Nichols |first=Steven J. |date=June 18, 2013 |website=[[ZDNet]] |accessdate=June 20, 2013}}</ref> each manufacturer has made its own specific changes to the Linux-derivative they use, and no industry standard exists, partly due to the fact that the differences in hardware architectures require changes to optimize the operating system to each hardware design.<ref name=Padua426 /><ref>{{cite web|url=http://www.top500.org/overtime/list/32/os |title=Top500 OS chart |publisher=Top500.org |date= |accessdate=2010-10-31}}</ref>
==Context and overview==
In the early days of supercomputing, the basic architectural concepts were evolving rapidly, and [[system software]] had to follow hardware innovations that usually took rapid turns.<ref name=Padua426 /> In the early systems, operating systems were custom tailored to each supercomputer to gain speed, yet in the rush to develop them, serious software quality challenges surfaced and in many cases the cost and complexity of system software development became as much an issue as that of hardware.<ref name=Padua426 />
[[File:Pleiades supercomputer.jpg|thumb|240px|left|The supercomputer center at [[NASA Ames]]]]
In the 1980s the cost for software development at [[Cray]] came to equal what they spent on hardware and that trend was partly responsible for a move away from the in-house operating systems to the adaptation of generic software.<ref name=MacKenzie >''Knowing machines: essays on technical change'' by Donald MacKenzie 1998 {{ISBN
By the early 1990s, major changes were
The separation of the operating system into separate components became necessary as supercomputers developed different types of nodes, e.g., compute nodes
==Early systems==
[[File:Cray 1 IMG 9126.jpg|thumb|The first [[Cray-1]] (sample shown with internals) was delivered to the customer
The [[CDC 6600]], generally considered the first supercomputer in the world, ran the [[Chippewa Operating System]], which was then deployed on various other [[CDC 6000 series]] computers.<ref name=Vardalas >''The computer revolution in Canada'' by John N. Vardalas 2001 {{ISBN
The first [[Cray
Around the same time, the [[EOS (operating system)|EOS]] operating system was developed by [[ETA Systems]] for use in their [[ETA10]] supercomputers.<ref name=Thorndyke >
Lloyd M. Thorndyke, ''The Demise of the ETA Systems'' in "Frontiers of Supercomputing II by Karyn R. Ames, Alan Brenner 1994 {{ISBN
By the middle 1990s, despite the
==Modern approaches==
[[File:IBM Blue Gene P supercomputer.jpg|240px|thumb|The [[Blue Gene]]/P supercomputer at [[Argonne National Laboratory|Argonne National Lab]] ]]
The IBM [[Blue Gene]] supercomputer uses the [[CNK operating system]] on the compute nodes, but uses a modified [[Linux]]-based kernel called I/O Node Kernel ([[INK (operating system)|INK]]
While in traditional multi-user computer systems and early supercomputers, [[job scheduling]] was in effect a [[task
Some, but not all supercomputer schedulers attempt to maintain locality of job execution. The [[PBS Pro|PBS Pro scheduler]] used on the [[Cray XT3]] and [[Cray XT4]] systems does not attempt to optimize locality on its three-dimensional [[torus interconnect]], but simply uses the first available processor.<ref name=Eitan/> On the other hand, IBM's scheduler on the Blue Gene supercomputers aims to exploit locality and minimize network contention by assigning tasks from the same application to one or more midplanes of an 8x8x8 node group.<ref name=Eitan>''Job Scheduling Strategies for Parallel Processing:'' by Eitan Frachtenberg and Uwe Schwiegelshohn 2010 {{ISBN
==See also==
* [[Distributed operating system]]
* [[List of the top supercomputers in the United States]]
* [[Supercomputer architecture]]
* [[Usage share of operating systems#Supercomputers|Usage share of supercomputer operating systems]]
==References==
{{Reflist
{{Supercomputer operating systems}}
{{Parallel
{{Operating system}}
[[Category:
[[Category:
[[Category:Supercomputers|*Supercomputer operating systems]]
|