{{위키데이터 속성 추적}}
[[파일:BSC-Beowulf-cluster.JPG|섬네일|최초의 베오울프 클러스터.]]
'''베오울프 클러스터'''({{lang|en|beowulf}} cluster, {{표준어|베어울프}}) 또는 베오울프 프로텍트(Beowulf project)는 [[컴퓨터 클러스터]] 기술의 일종이다. 베오울프 시스템은 오픈 소스 기반으로 [[리눅스]] 환경에서 쉽게 클러스터를 구축하는 데 쓰인다. 클라이언트에 보조기억장치(하드디스크)를 두지 않고 서버에만 둔다는 특징이 있다. 따라서 클라이언트를 추가하고 제거하기 쉽다. 베오울프 시스템은 특정한 병렬 프로그래밍 라이브러리를 포함하고 있지는 않으나, 기존의 [[메시지 전달 인터페이스|MPI]]나 [[패러렐 버추얼 머신|PVM]]을 사용하도록 구현되는 것이 초기 개발환경에서 전통적이고 일반적이었다.

== 역사 ==
[[미국 항공우주국]](NASA)의 고다드 우주비행센터(GSFC)는 기성 PC의 부품과 [[리눅스]] 운영체계를 결합한 병렬 컴퓨터를 만드는 프로젝트를 진행했는데, 베오울프(Beowulf)라는 이름은 이때 [[나사|NASA]]의 토마스 스털링(Thomas Sterling)과 도날드 베커(Donald Becker)가 1994년에 만든 특정 병렬 컴퓨터이다.<ref>Becker, Donald J and Sterling, Thomas and Savarese, Daniel and Dorband, John E and Ranawak, Udaya A and Packer, Charles V, "BEOWULF: A parallel workstation for scientific computation", in Proceedings, International Conference on Parallel Processing vol. 95, (1995). URL http://www.phy.duke.edu/~rgb/brahma/Resources/beowulf/papers/ICPP95/icpp95.html</ref>
이 명칭은 "[[베오울프]]"라는 같은 이름의 오래된 영어 서사시에서 유래했다.<ref>See Francis Barton Gummere's 1909 translation, reprinted (for example) in Beowulf. Francis B. Gummere (translator). Hayes Barton Press (published n.d.). 1909. p. 20. {{ISBN|9781593773700}}. Retrieved 2014-01-16.</ref> 여기서 베오울프 클러스터는 [[인텔 80486|486 DX]] 계열의 프로세서 [[중앙 처리 장치|CPU]] 16개로 10Mbps 급 속도의 [[이더넷]]으로 연결하는 네트워크방식을 사용했다. 당시 이것은 기존의 슈퍼컴퓨터들이 자체적인 특화된 [[버스]] 통신을 사용한것과 비교했을 때 획기적인 방법이었다.

이로서 나사의 첫 번째 베오울프클러스터는 오늘날 슈퍼컴퓨터에서 가장 널리 사용되는 리눅스 기반 병렬 슈퍼컴퓨터의 원형이 되었지만 베오울프 프로젝트의 성공적인 결과는 기존의 PC 기성품으로도 슈퍼컴퓨팅 기술 구현이 가능하다는것을 보여준 데에 더 의미가 있었다.

== 슈퍼컴퓨터의 등장 ==
2008년6월 탑500(TOP500.org) 슈퍼컴퓨터 1위를 차지한 [[IBM]]의 [[IBM 로드러너|로드러너]](Roadrunner)는 최초로 널리 알려진 리눅스 운영체제의 베오울프 클라스터인 병렬 슈퍼컴퓨터가 되었다. 코어 수 129,600개, 속도는 1,105 TFlop/s였다.<ref>(https://www.top500.org/system/176028) Roadrunner - BladeCenter QS22/LS21 Cluster, PowerXCell 8i 3.2 Ghz / Opteron DC 1.8 GHz, Voltaire Infiniband</ref>2016년11월 슈퍼컴퓨터 1위를 차지한 중국 텐허2(天河2,Tianhe-2)의 베오울프 클러스터 디자인은 312만개의 코어 CPU와 메모리는 1,024,000GB, 노드는 1만6천개이상 속도는 33,862.7 TFlop/s 에 이른다. 병렬처리는 [[메시지 전달 인터페이스|MPI]]계열의 [[MPICH|MPICH2]]를 Math 라이브러리는 [[Intel]] MKL-11.0.0 을 사용했다.<ref>(https://www.top500.org/system/177999) Tianhe-2 (MilkyWay-2) - TH-IVB-FEP Cluster, Intel Xeon E5-2692 12C 2.200GHz, TH Express-2, Intel Xeon Phi 31S1P</ref>
텐허2와 기존의 베오울프의 아키텍처 디자인 차이는 호환가능한 다른 프로세서들을 혼합한 하이브리드 방식으로 설계되어 부동소수점연산등에 특화되도록 만들어진 점이다. 2017년 6월 기준에서 탑500 슈퍼컴퓨터 1위는 중국의 [[썬웨이 타이후 라이트]](神威·太湖之光,Sunway TaihuLight)이다. 코어 수 10,649,600개, 메모리 1,310,720 GB , 속도 93,014.6 TFlop/s(Rmax) , [[중앙 처리 장치|CPU]] [[Sunway SW26010]] 260C 1.45GHz , [[OS]]는 리눅스계열인 Sunway RaiseOS 2.0.5버전이다.<ref>(https://www.top500.org/system/178764) Sunway TaihuLight - Sunway MPP, Sunway SW26010 260C 1.45GHz, Sunway</ref>

==베오울프의 특징==
베오울프의 특징은 한대 또는 소수의 메인급 서버 컴퓨터가 상대적으로 수적으로 월등히 많은 노드들을 [[부팅]]하고 그리고 연산과 관련된 병렬화된 작업을 하위 노드의 단일 프로세서에 배포하고 그들의 결과를 서버의 메인 프로세서상에서 관리하고 전체적으로 동기화한다는 점이다.<ref>A description of the Beowulf cluster, from the original "how-to", which was published by Jacek Radajewski and Douglas Eadline under the Linux Documentation Project in 1998.</ref><ref>([[KLDP]])http://kldp.org/search/google/%EB%B2%A0%EC%98%A4%EC%9A%B8%ED%94%84</ref>

베오울프의 노드들은 [[중앙 처리 장치|CPU]]와 연산 메모리 [[램]]과 [[마더보드]] 그리고 [[이더넷]]기능만을 갖는 최소한의 환경만을 요구하므로, 스스로 자체 부팅이 불가능하다. 이러한 노드들의 부팅과 연산에대한 작업을 통제하는 서버와의 상호필요 관계에서 베오울프 클라스터가 설명될 수 있다.

또한 기성제품들을 집합적으로 연결하는 형태이므로 단일 슈퍼컴퓨터에비해 상대적으로 추가적인 업그레이드 및 다기종간의 하이브리드 설계가 효과적이다.

== PXE 와 WOL ==
[[파일:Beowulf-cluster.svg|섬네일|베오울프 자식 노드의 부팅 완료절차]]
[[미국 환경보호국]](Environmental Protection Agency)과 [[미국 에너지부]](Department of Energy)가 공동으로 운영하는 [[에너지스타]] 프로그램의 에너지 스타(ENERGY STAR) 컴퓨터 규격은 2009년 버전이후에서 생산되는 모든 [[PC]] 급 컴퓨터 [[마더보드]]에 네트워크 인터페이스 및 [[웨이크 온 랜|WOL]]환경을 권고해오고있다.<ref>([[에너지스타]])https://www.energystar.gov/ia/partners/product_specs/program_reqs/Computer_Spec_Final.pdf</ref><ref>http://www.kbench.com/?q=node/71342</ref>

WOL와 네트워크 인터페이스인 [[사전 부팅 실행 환경|PXE]]는 2세대 베오울프 클라스터의 핵심기술이다.

PXE버전 이후부터 베오울프의 [[노드 (컴퓨터 과학)|노드]]들은 [[고정 기억 장치|ROM]]에 기반해 스스로 부팅은 개시할 수 있지만 여전히 부팅을 완료하기 위해서는 서버에서 노드의 [[맥 어드레스|MAC 어드레스]]에 기반한 자기인식을 [[FTP]]및 [[핸드쉐이킹 프로토콜]]로 확인해줌으로써 상호 인식절차를 완료해야만 한다.<ref>([[IETF]])https://tools.ietf.org/html/rfc4578</ref>

== 탑500 ==
2008년 이후로 [[TOP500|탑500]](top500.org)의 슈퍼컴퓨터들은 베오울프 클라스터계열을 비롯한 병렬 컴퓨팅이 1위의 성능을 발휘하는 것을 포함해 다양하게 설계된 자료들을 보여주고있는데, 이러한 자료들은 2017년도 최고의 슈퍼컴퓨터인 [[썬웨이 타이후 라이트]] 조차 여전히 최적의 병렬 컴퓨팅을 위한 디자인 리소스가 충분히 다루어졌는지를 확인할 수 있는 역설계의 기초적인 확인자료가 되어주고 있다.<ref>([[TOP500]])https://www.top500.org/lists/</ref>

== 같이 보기 ==
* [[병렬 컴퓨팅]]
* [[네트워크 파일 시스템|NFS]]
* [[병렬 프로그래밍]]
* [[시큐어 셸]]
* [[TOP500]]

==참고==
* [http://www.zdnet.co.kr/news/news_view.asp?artice_id=20140630104055 지디넷 기사]
* https://korea.ul.com/eec/sub/energystar/
{{각주}}

== 외부 링크 ==
* [http://www.beowulf.org/overview/faq.html 베오울프 FAQ]
* {{dmoz|Computers/Parallel_Computing/Beowulf/|베울오프 병렬 컴퓨팅}}
* [http://www.top500.org TOP500]

{{병렬 컴퓨팅}}
{{전거 통제}}


[[분류:클러스터 컴퓨팅]]
[[분류:병렬 컴퓨팅]]
[[분류:유닉스 소프트웨어]]