1과 0의 추상 데이터 처리 흐름
|

HPC 배치 작업 실행 모범 사례

HPC 배치 작업이 무엇인지, 일반적인 IT 배치 작업과 어떻게 다른지, HPC 클러스터 실행을 위한 하드웨어 인프라 및 네트워크 패브릭 설정에 대한 주요 고려 사항을 이해합니다.

Rescale의 엔지니어링 팀은 관리의 복잡성을 해결하는 데 전념하고 있습니다. 고성능 컴퓨팅 이 시대의 (HPC) 시스템 하이브리드 및 멀티 클라우드 컴퓨팅.

R&D를 위한 HPC의 기본은 디지털 시뮬레이션 또는 기타 종류의 분석을 수행하기 위한 컴퓨팅 작업을 생성하는 것입니다. 따라서 Rescale 엔지니어링 팀의 주요 초점 영역은 시뮬레이션 작업이나 기타 대규모 컴퓨팅 작업을 성공적으로 설정하는 데 필요한 많은 작업을 자동화하는 것입니다.

두 부분으로 구성된 이 블로그 게시물 시리즈에서는 사용하는 도구나 인프라(온프레미스 또는 클라우드)에 관계없이 HPC 배치 작업을 실행하기 위한 컴퓨팅 환경 구성과 기타 관리 고려 사항의 주요 측면을 다루겠습니다.

첫 번째 게시물에서는 HPC 배치 작업이 무엇인지, 일반적인 IT 배치 작업과 어떻게 다른지, 설정 시 고려 사항을 정의하는 것부터 시작하겠습니다. 하드웨어 인프라 HPC 클러스터를 실행하기 위한 네트워크 패브릭입니다.

HPC 배치 컴퓨팅, 정의

HPC 세계에서 배치 작업은 특정 종류의 계산 작업(일반적으로 디지털 시뮬레이션의 경우)을 수행하기 위해 소프트웨어 애플리케이션을 실행하기 위한 하드웨어를 설정하는 것입니다.

컴퓨팅 환경을 설정한 후에는 "실행"을 눌러 인프라와 소프트웨어가 작업을 수행하도록 할 수 있습니다. HPC 작업이 완료된 후 연구원과 엔지니어는 결과를 검토하고 분석을 시작할 수 있습니다.

HPC 일괄 작업, 컴퓨팅 환경을 올바른 방식으로 설정하는 것이 중요합니다. HPC 워크로드는 컴퓨팅 요구 사항이 크게 다를 수 있으므로 핵심은 중요한 성능과 안정성을 보장하도록 인프라를 구성하는 것입니다. 소프트웨어 또는 하드웨어 구성 오류로 인해 시뮬레이션이 실패하거나 의도한 결과를 생성하지 못하는 경우 여러 면에서 비용이 많이 듭니다.

이러한 시뮬레이션에는 장기간에 걸쳐 상당한 컴퓨터 리소스를 사용해야 하는 경우가 많습니다. 그것은 비싸다. 하나만 사용하면서 노드 (슈퍼컴퓨팅 클러스터에 하나의 컴퓨터)는 드문 일이 아니며 시뮬레이션에는 종종 20개 또는 50개의 노드가 필요하며 이는 수천 개 정도일 수 있습니다. CPU 코어. 이러한 시뮬레이션은 XNUMX분에서 일주일 이상이 소요될 수 있습니다. 며칠 또는 몇 주에 걸쳐 매우 긴 시뮬레이션을 실행하는 일부 고객이 있지만 디지털 시뮬레이션을 완료하는 HPC 배치 작업의 일반적인 실행 시간은 XNUMX~XNUMX시간입니다.

HPC 배치 작업: 일반적인 IT 배치 작업이 아닙니다.

IT 일괄 작업에는 다양한 종류가 있지만 데이터베이스 업데이트와 같은 일반적인 작업에 대해 이야기하는 경우 이러한 일괄 작업은 하드웨어에서 최고의 성능을 얻는 것이 아니라 특정 시간에 무언가가 실행되도록 하는 데 더 가깝습니다.

일반적인 IT 일괄 작업의 기본 목표는 작업을 실행하고, 실패하지 않고, 다른 사람의 방식을 방해하지 않는 것입니다. 빠르게 실행되면 좋겠지만 중요한 점은 일괄 작업이 다른 작업을 방해하지 않고 처리하는 데 즐거운 시간을 보낼 수 있는 밤새 데이터 센터 시간을 찾는 것입니다. 작업은 어느 시점에 완료되어야 합니다. 속도는 일반적인 IT 배치 작업의 요소가 아닙니다.

HPC 배치 작업의 핵심은 속도와 효율성입니다. 자체 슈퍼컴퓨터를 실행하거나 클라우드에서 임대하는 데 드는 비용을 고려하면 클라우드에서든 자체 데이터 센터에서든 컴퓨팅 리소스가 최적으로 조정되어 있는지 확인해야 합니다.

제약이 없는 클라우드 리소스를 사용하더라도 일반적인 야간 엔터프라이즈 IT 배치 작업에 비해 HPC 배치 작업이 올바른 방식으로 실행되도록 하려면 여전히 훨씬 더 많은 작업을 수행해야 합니다.

HPC 배치 작업을 설정할 때 먼저 해당 칩에 사용할 수 있는 최고의 칩 아키텍처와 확장을 사용하고 있는지 확인해야 합니다. Intel 칩이나 AMD 칩의 세대에 따라 기능이 다르며, 이러한 기능을 활용하려면 소프트웨어를 구성하고 컴파일해야 하는 경우가 많습니다.

따라서 하드웨어와 소프트웨어 간에 고려해야 할 중요한 일치 문제가 있습니다. 그리고 이는 점점 더 어려워지고 있습니다. 특수 반도체 칩의 수가 빠르게 증가하고 있습니다.. 하드웨어와 소프트웨어 간의 올바른 조합은 비용, 속도 및 에너지 소비에 큰 영향을 미칠 수 있습니다.

일괄 작업 설정에 대한 주요 고려 사항

HPC 배치 작업을 필요한 성능 수준으로 성공적으로 실행해야 한다는 점을 고려하면 실행할 애플리케이션 유형에 가장 적합한 하드웨어를 선택하는 것이 좋습니다. 다양한 시뮬레이션 애플리케이션에는 요구 사항이 매우 다릅니다. 일부는 메모리를 많이 사용하고 일부는 CPU 컴퓨팅을 많이 사용합니다. 일부는 GPU와 같은 특수 목적의 반도체 칩이 필요합니다.

따라서 가장 먼저 하고 싶은 일은 시뮬레이션을 실행하는 데 사용할 하드웨어 유형을 파악하는 것입니다. 잘못된 하드웨어에 맞게 최적화하면 일괄 작업에 훨씬 더 많은 시간이 걸릴 수 있습니다. 따라서 더 오래 기다리게 되고 잠재적으로 해당 컴퓨팅 시간에 더 많은 비용을 지출하게 됩니다.

컴퓨팅 속도와 소프트웨어 비용 간에도 고려해야 할 절충점이 있습니다. 라이선스는 매우 다양하지만 R&D에 사용되는 정교하고 전문화된 애플리케이션은 일반적으로 실행 비용이 많이 들고 라이선스 비용은 소비 모델(시뮬레이션 또는 기타 분석을 실행하기 위해 애플리케이션을 사용하는 데 소요되는 시간)을 기준으로 결정됩니다.

이를 고려하면 더 빠른 컴퓨팅 리소스에 더 많은 비용을 지출하여 HPC 배치 작업 시간을 단축하여 소프트웨어 비용을 절약하는 것이 유리할 수 있습니다. 종종 당신이 원하는 것은 라이센스 비용을 최적화하기 위해 최소한의 시간 또는 최소한의 CPU 코어 시간으로 실행하도록 최적화하는 것입니다. 이는 애플리케이션과 상황에 따라 하드웨어 비용보다 훨씬 더 높기 때문입니다. .

올바른 네트워크 패브릭의 중요성

IT 일괄 작업에는 일반적이지 않은 또 다른 복잡성 축이 있습니다. 바로 네트워크 패브릭과 연결입니다. 다양한 컴퓨팅 클러스터에는 모든 노드를 함께 연결하는 다양한 유형의 네트워크 패브릭이 있습니다. 이는 일반적으로 표준 IT 컴퓨팅 작업에서는 문제가 되지 않습니다. 서버 몇 대만 있으면 됩니다.

Rescale의 엔지니어링 팀이 중점을 두는 큰 과제 중 하나는 노드 간 통신이 작동하는 방식과 이것이 HPC 애플리케이션의 성능에 어떤 영향을 미치는지입니다.

일반적으로 이러한 작업 중 상당수는 대규모 시뮬레이션입니다. 둘 이상의 노드에서 이를 실행해야 합니다. 그리고 이러한 애플리케이션 중 상당수는 노드 간 세분화된 통신 모델을 가정합니다.

따라서 클러스터를 설정하거나 통신 라이브러리를 차선책으로 설정하면 시뮬레이션 실행 시간이 실제로 길어져 많은 비효율성이 발생할 수 있습니다.

많은 HPC 애플리케이션의 경우 이 세밀한 다중 노드 통신이 모두 제대로 작동하도록 하려면 노드가 모든 노드 사이에 매우 짧은 대기 시간 연결을 갖고 있는지 확인해야 합니다.

그리고 노드 간 통신 네트워크를 구축하는 방법에는 여러 가지가 있습니다. 고대역폭 이더넷을 사용하거나 대부분의 이더넷 옵션보다 대기 시간은 짧고 대역폭은 높은 InfiniBand를 사용할 수 있습니다. 다른 네트워크 패브릭 유형도 몇 가지 있습니다.

또한 많은 HPC 애플리케이션은 다음과 같은 라이브러리 계층을 사용합니다. MPI (메시지 전달 인터페이스). 그러나 MPI는 표준일 뿐 라이브러리 자체는 아닙니다. 공급업체와 개발자는 MPI 표준을 기반으로 자체 라이브러리를 만듭니다.

따라서 사용 중인 MPI 유형이 사용 중인 하드웨어 유형과 잘 작동하는지 확인해야 합니다. 즉, 하드웨어를 시뮬레이션 애플리케이션과 일치시킬 뿐만 아니라 하드웨어를 미들웨어 계층(라이브러리)과 일치시킨 다음 애플리케이션 자체와 일치시켜야 합니다.

특정 유형의 네트워크 패브릭에 대해 MPI를 구성해야 합니다. 그리고 구성 요구 사항은 네트워크 패브릭에 따라 크게 다릅니다. 단일 네트워크 패브릭에 대해 한 번 설정하면 모든 경우에 합리적으로 잘 작동할 것으로 기대할 수 있는 것이 아닙니다. 조정하지 않으면 성능에 큰 차이가 있습니다.

그리고 그것은 응용 프로그램에 따라 다릅니다. 그러나 많은 HPC 배치 작업의 경우 컴퓨팅에 바인딩되기보다는 네트워크에 더 많이 바인딩됩니다. 시뮬레이션을 진행하려면 여러 노드 간에 이 세밀한 정보를 모두 전달해야 하기 때문입니다. 그런 다음 노드 간 통신을 안내하는 라이브러리가 올바른 방식으로 설정되었는지 확인해야 합니다.

HPC 배치 작업의 결론은 항상 동일합니다. 즉, HPC 워크로드에 최적화된 전체 하드웨어 및 소프트웨어 스택이 없으면 값비싼 하드웨어 및 소프트웨어의 모든 이점을 얻을 수 없습니다.

이것으로 이 시리즈의 XNUMX부를 마칩니다. XNUMX부에서는 작업 예약, 잘못된 HPC 작업 비용, 보안, 멀티 클라우드 관리 등 HPC 배치 작업 실행과 관련된 주요 문제에 대해 자세히 살펴보겠습니다. 계속 지켜봐 주시기 바랍니다!

전단지에 포함된 링크에 대해 더 알아보기 Rescale의 지능형 배치 기능
모든 고성능 컴퓨팅 작업이 제대로 작동하는지 확인하세요.
빠르고 효율적이며 신뢰할 수 있는 올바른 실행 방법을 설정합니다.

저자

  • 마크 휘트니

    Mark Whitney는 Rescale의 엔지니어링 이사입니다. 그의 전문 분야에는 고성능 컴퓨팅 아키텍처, 양자 정보 연구, 클라우드 컴퓨팅이 포함됩니다. 그는 캘리포니아 대학교 버클리 캠퍼스에서 컴퓨터 과학 박사 학위를 취득했습니다.

비슷한 게시물