대규모 병렬 컴퓨터
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
대규모 병렬 컴퓨터는 여러 개의 독립적인 프로세서와 메모리를 사용하여 대량의 데이터를 동시에 처리하는 시스템을 의미한다. 이러한 시스템은 독립적으로 운영되는 시스템을 연결한 MPP(Massively Parallel Processing)와, 여러 프로세서가 메모리를 공유하는 SMP(Symmetric Multi-Processing)로 분류된다. MPP는 각 시스템 간 데이터 교환에 MPI와 같은 메시지 전달 방식을 사용하며, 병렬 프로그래밍 기술을 필요로 한다. 최근에는 그래픽 처리 장치(GPU)가 초병렬 처리 기술을 활용하여 고성능 컴퓨팅 외에도 인공지능 분야에서 기계 학습 및 심층 학습 가속화에 사용되고 있다.
더 읽어볼만한 페이지
- 병렬 컴퓨팅 - 슈퍼컴퓨터
슈퍼컴퓨터는 일반 컴퓨터보다 훨씬 높은 성능을 가진 컴퓨터로, 복잡한 계산과 시뮬레이션을 수행하며, 프로세서, 메모리, 스토리지, 네트워크 등으로 구성되어 병렬 처리를 통해 높은 성능을 구현하고, 군사, 기상 예측, 과학 기술 분야, 인공지능 등 다양한 분야에서 활용되고 있다. - 병렬 컴퓨팅 - 컴퓨터 클러스터
컴퓨터 클러스터는 여러 대의 상용 컴퓨터를 고속 네트워크로 연결하여 고성능 컴퓨팅 시스템을 구축하는 방식으로, 슈퍼컴퓨터를 포함한 다양한 분야에서 높은 가용성과 확장성을 제공하며, 클러스터 미들웨어를 통해 시스템 관리, 부하 분산, 통신 방식, 데이터 공유 등을 지원하고 노드 장애 관리를 위한 펜싱 기술을 활용한다.
대규모 병렬 컴퓨터 |
---|
2. 대규모 병렬 처리 시스템의 종류와 특징
대규모 병렬 처리 시스템은 여러 개의 프로세서가 협력하여 작업을 처리하는 방식으로, 크게 SMP(Symmetric Multi-Processing)와 MPP(Massively Parallel Processing) 방식으로 나눌 수 있다.
SMP 방식은 두 개 이상의 프로세서가 하나의 운영체제 아래에서 메모리를 공유하며 작동하는 구조이다. 모든 프로세서가 동일한 메모리 공간에 접근할 수 있어 상대적으로 프로그래밍이 용이하다는 장점이 있다.
반면 MPP 방식은 각각 독립적인 운영체제, 메모리, 디스크를 갖춘 여러 시스템을 고속 네트워크로 연결하여 구성한다. 각 시스템은 독립적으로 작동하며, 다른 시스템의 데이터에 접근하기 위해서는 메시지 전달 방식을 사용해야 하므로 SMP에 비해 프로그래밍이 복잡하고 병렬화 기법에 대한 이해가 필요하다.
2. 1. SMP (Symmetric Multi-Processing, 대칭형 다중 처리)
SMP(대칭형 다중 처리)는 두 개 이상의 프로세서가 메모리를 공유하며 사용하는 다중 프로세서 컴퓨터 구조를 말한다. SMP 시스템은 하나의 운영체제(OS) 아래에서 모든 프로세서가 동작하며 메모리를 직접 공유하기 때문에, 상대적으로 프로그램을 작성하기 쉽다는 장점이 있다.하지만 프로세서 수가 많아질수록 여러 프로세서가 동시에 하나의 공유 메모리에 접근하려고 하면서 병목 현상이 발생할 수 있다. 이러한 문제를 완화하기 위해 하이퍼큐브 네트워크나 메시 상호연결 네트워크와 같은 방법을 사용하기도 한다.
이는 각 프로세서가 독립된 메모리를 가지고 메시지 전달 방식으로 통신해야 하는 MPP(대규모 병렬 처리) 시스템과 비교했을 때 프로그래밍이 용이하다는 특징을 가진다.
2. 2. MPP (Massively Parallel Processing, 대규모 병렬 처리)
MPP(Massively Parallel Processing, 대규모 병렬 처리)는 하나 이상의 프로세서와 운영체제, 메모리, 디스크로 구성된 독립적인 시스템 여러 개를 연결하여 만든 대형 컴퓨터 시스템이다.[1] 이는 둘 이상의 프로세서가 메모리를 공유하여 사용하는 SMP(대칭형 다중 처리) 방식의 다중 프로세서 시스템과는 구별된다.[1]SMP는 모든 프로세서가 하나의 OS 아래에서 메모리를 공유하므로 프로그래밍이 비교적 쉽다는 장점이 있지만, 프로세서 수가 많아질 경우 메모리 공유로 인한 병목 현상이 발생할 수 있다.[1]
반면 MPP는 각 시스템이 독립적으로 작동하기 때문에, 다른 시스템의 메모리에 있는 데이터에 접근하려면 MPI(Message Passing Interface)와 같은 메시지 전달 방식을 통해 데이터를 주고받아야 한다.[1] 이러한 구조적 특징과 더불어, 데이터를 효율적으로 처리하기 위해 병렬화라는 특수한 프로그래밍 기법을 익혀야 하므로 SMP 방식에 비해 프로그래밍이 더 복잡하고 어렵다는 단점이 있다.[1]
3. 컨슈머 시장에서의 초병렬 처리
초병렬 처리 기술은 고성능 컴퓨팅 분야 외에도 일반 소비자들이 사용하는 기기에서도 찾아볼 수 있다. 가장 대표적인 예가 바로 그래픽 처리 장치(GPU)이다. 현대의 GPU는 내부에 수많은 처리 장치(프로세서 엘리먼트)를 가지고 있어, 그래픽 처리뿐만 아니라 다양한 연산을 동시에 수행하는 초병렬 처리에 활용된다.
이러한 GPU의 강력한 병렬 처리 능력은 GPGPU(범용 GPU 컴퓨팅) 기술을 통해 그래픽 처리 이외의 목적으로도 널리 사용되고 있다. 특히 최근에는 인공지능(AI) 분야의 기계 학습이나 심층 학습과 같이 대규모 연산이 필요한 작업에서 GPU의 활용도가 높아지고 있다.
3. 1. 그래픽 처리 장치 (GPU)
초병렬 처리 기술은 고성능 컴퓨팅 이외의 분야에서도 널리 활용되고 있으며, 가장 대표적인 예가 그래픽 처리 장치(GPU)이다. 최신 세대의 GPU는 적어도 수백 개 이상, 고성능 모델에서는 천 개가 넘는 스트림 프로세서 엘리먼트(셰이더 유닛)를 탑재하고 있다. 8개에서 32개의 엘리먼트 집합을 하나의 명령 디코더에 연결하여, SIMD나 VLIW 기술을 활용해 하나의 명령으로 다수의 데이터를 동시에 처리한다. 이러한 프로세서 엘리먼트 클러스터는 거대한 크로스바 스위치 데이터 버스나 링 버스를 통해 연결된다.GPU 프로그래밍에는 OpenGL이나 Direct3D를 위한 프로그래머블 셰이더 기술 언어뿐만 아니라, GPGPU(범용 GPU 컴퓨팅)를 위해 개발된 CUDA나 OpenCL과 같은 범용 언어 및 API 세트가 사용된다. 이러한 언어로 작성된 코드는 GPU 내부의 SIMD 및 VLIW 기술 기반 명령어 세트로 변환되어 실행된다. 단일 GPU만으로도 10 테라플롭스(TFLOPS)에 달하는 이론적인 연산 성능을 가진 제품도 있다.
최근에는 여러 개의 GPU를 연결하여 비교적 저렴한 비용으로 대규모 초병렬 컴퓨터 시스템을 구축하려는 움직임이 있다. 이에 따라 GPU 제조사들도 과학 기술 계산 분야의 요구에 부응하기 위해 배정밀도 부동 소수점 연산 성능을 강화한 제품을 점차 보급하고 있다. 또한, 인공지능(AI) 구현의 핵심 기술인 기계 학습 및 심층 학습의 처리 속도를 높이기 위해, 반정밀도 부동 소수점 및 8비트 정수 연산 성능과 명령어 세트를 강화하는 경향도 나타나고 있다.
3. 2. 인공지능 (AI) 분야에서의 활용
초병렬 처리 기술은 그래픽 처리 장치(GPU) 등 다양한 분야에서 활용되고 있다. 특히 인공지능 (AI) 분야에서 기계 학습 및 심층 학습을 가속화하기 위해 GPU가 핵심적인 역할을 하고 있다. 이러한 수요에 발맞춰 GPU 제조사들은 반정밀도 부동 소수점 연산과 8비트 정수 연산 성능 및 관련 명령어 세트를 강화하는 추세를 보이고 있다.참조
[1]
서적
Grid computing: experiment management, tool integration, and scientific workflows
2007
[2]
서적
Parallel and Distributed Computational Intelligence
2010
[3]
뉴스
IBM creates world's most powerful computer
NewScientist.com news service
2007-06
[4]
웹사이트
Archived copy
http://s.top500.org/[...]
2014-01-12
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com