GPU가 AI 및 고성능 컴퓨팅에 필수적인 이유
GPS 제조기업 엔비디아가 반도체 기업으로는 세계에서 처음으로 시총 1조달러 벽을 넘었다고 합니다. ChatGPT의 광풍으로 인해 엔비디아의 주가가 올해 들어서만 170% 넘게 폭등했는데요, GPU가 왜 인공지능이나 고성능 컴퓨팅에 필수적인지에 대한 기사가 있어 요약 및 공유합니다. 🥇 Prologue - GPU(그래픽 처리 장치)는 이제 인공 지능(AI)의 기반이 되었습니다. 머신 러닝은 느리고 부정확했고, 오늘날의 많은 애플리케이션(이하 'App')에 적합하지 않았습니다. GPU 활용은 대규모 신경망(neural network)에 놀라운 차이를 만들었습니다. 딥 러닝은 이미지 및 비디오 처리를 위한 솔루션을 발견하여 자율 주행 또는 안면 인식과 같은 것을 주류(mainstream) 기술에 도입했습니다. - 고성능 컴퓨팅은 엔터프라이즈 기술의 가장 뜨거운 트렌드 중 하나입니다. 클라우드 컴퓨팅은 사용하는 다른 어떤 컴퓨팅 성능보다 우수한 슈퍼컴퓨터용으로 지정된 다양한 작업을 가능하게 하는 원활한 프로세스를 생성하여 시간과 비용을 절약합니다. 🥈 GPU 작동 방식 - '그래픽 처리 장치'라는 용어는 1999년 Nvidia가 그래픽 변환, 조명 및 트라이앵글 클리핑 기능을 갖춘 GeForce 256을 판매하면서 대중화되었습니다. 이것은 궁극적으로 3차원 공간을 렌더링하는 데 도움이 되는 수학이 많은 계산입니다. - 엔지니어링은 이러한 작업에 맞게 조정되어 프로세스를 점점 더 최적화하고 가속화할 수 있습니다. 수백만 번의 계산을 수행하거나 부동 소수점 값을 사용하면 반복이 발생합니다. 이것은 작업을 병렬로 실행하기 위한 완벽한 시나리오입니다. - GPU는 캐싱 및 추가 코어의 도움으로 수십 개의 CPU 성능을 지배할 수 있습니다. 고해상도 이미지를 처리하려고 한다고 상상해 보십시오. 예를 들어 하나의 CPU가 단일 이미지를 처리하는 데 1분이 걸린다면 비디오를 위해 거의 백만 개의 이미지를 검토해야 한다면 우리는 막힐 것입니다. 단일 CPU에서 실행하려면 몇 년이 걸립니다. - CPU를 확장하면 프로세스 속도가 선형적으로 빨라집니다. 그러나 CPU가 100개인 경우에도 이 프로세스는 상당한 비용이 드는 청구서를 추가하는 것은 말할 것도 없고 일주일 이상 걸릴 것입니다. 병렬 처리 기능을 갖춘 몇 개의 GPU로 하루 안에 문제를 해결할 수 있습니다. 우리는 이 하드웨어로 불가능한 작업을 가능하게 만들었습니다. 🥉 GPU의 진화 - 결국 GPU의 기능은 종종 기가바이트의 데이터에서 계산을 실행해야 하는 인공 지능과 같은 수많은 프로세스를 포함하도록 확장되었습니다. 사용자는 이러한 야수(beast)를 위한 보완(complementary) 소프트웨어 패키지의 도움으로 API 및 코딩 라이브러리에 대한 간단한 쿼리와 함께 고속 컴퓨팅을 쉽게 통합할 수 있습니다. - 2006년 11월 NVIDIA는 병렬 컴퓨팅 플랫폼 및 프로그래밍 모델인 CUDA를 소개했습니다. 이를 통해 개발자는 NVIDIA GPU의 병렬 컴퓨팅 엔진을 활용하고 각 하위 문제가 다른 문제의 결과와 독립적인 복잡한 문제를 더 작고 관리하기 쉬운 문제로 분할하도록 안내함으로써 GPU를 효율적으로 사용할 수 있습니다. - NVIDIA는 Red Hat 오픈시프트와 협력하여 쿠버네티스에 CUDA를 적용하여 고객이 애플리케이션을 보다 효율적으로 개발하고 배포할 수 있도록 함으로써 뿌리를 더욱 확장했습니다. 이 파트너십 이전에 GPU 위에 쿠버네티스를 활용하는 데 관심이 있는 고객은 쿠버네티스를 GPU와 통합하기 위해 CUDA 및 소프트웨어용 컨테이너를 수동으로 작성해야 했습니다. 이 프로세스는 시간이 많이 걸리고 오류가 발생하기 쉽습니다. - Red Hat 오픈시프트는 고객이 GPU 서버 위에 OpenShift를 배포할 때 GPU 운영자가 CUDA 및 기타 필수 소프트웨어를 자동으로 컨테이너화할 수 있도록 하여 이 프로세스를 간소화했습니다. - RHODS(Red Hat OpenShift Data Science)는 데이터 과학 워크플로우에 GPU 사용을 활용하고 단순화하는 임무를 확장했습니다. 이제 고객이 RHODS에서 Jupyter 노트북 서버를 시작할 때 워크플로에 필요한 GPU 수를 사용자 지정하고 Pytorch 및 TensorFlow GPU 지원 노트북 이미지를 선택할 수 있습니다. 클러스터에 추가된 GPU 머신 풀에 따라 1개 이상의 GPU를 선택할 수 있습니다. 고객은 데이터 마이닝 및 모델 처리 작업에서 GPU를 사용할 수 있습니다. 원본 기사의 링크는 아래와 같습니다. 감사합니다🍀 [Source Link] https://developers.redhat.com/articles/2022/11/21/why-gpus-are-essential-computing#