기존 HPC 환경에서 여러 컴퓨팅 자원이 공유되지 않는 비효율성과 IBM 잡 스케줄링 기능을 활용 사례를 통한 LSF의 사용의 예와 효율성

안녕하세요. 이코어 입니다.

 

(주)이코어는 한국 IBM 비지니스 파트너로서 IBM 제품 공급및 최적의 IBM 솔루션을 고객에 지원하고 있습니다.

(주)이코어에서는 블로그를 통해 제품 또는 솔루션의 정의 및 특성, 장단점, 또한 제품군의 동향을 이 블로그에 넣으면서 고객에 많은 정보를 전달하고자 합니다.

 

이번 블로그에서는 잡 스케줄링 기능을 활용 사례를 통한 LSF의 사용의 예를 통해 기존 HPC 환경에서 여러 컴퓨팅 자원이 공유되지 않는 비효율성과 IBM 잡 스케줄링 기능 특징을 알아 보고자 합니다.

 


 

IBM Spectrum LSF란 -3

 

이에 대한 재미있는 사례가 있습니다. 대학의 한 연구실에 3개의 GPU를 사용하는 HPC가 있습니다. 그런데 연구원이 사용을 위해 현재 작업 현황을 살펴보니, 세개의 GPU가 모두 사용중이었다면, 연구실에서 한 작업이라도 끝날 때까지 기다려야 할까요? 물론 일반적인 컴퓨터는 스케줄링 기능이 있어 업무를 순차적으로 수행합니다. 그런데 만약 다음 사람이 와서 또 업무를 수행한다고 가정을 해봅시다. 이런 경우 먼저 온 연구원의 작업은 10시간이 걸리고, 후에 온 연구원은 1시간이면 끝나는 작업이라고 가정할 때에 선입선출의 방식으로 업무를 진행하는 것이 효율적일까요? 실제 업무환경에서는 이런 다양한 상황이 발생할 수 있습니다. 이런 경우 어떻게 컴퓨팅 자원을 사용하는 것이 효율적일까요?

 

정답은 다름아닌 잡 스케줄링 기능을 활용하는 LSF의사용입니다. 첫번째의 경우 연구원은 LSF에 작업을 걸어 두기만 하면 됩니다. 그러면 전체 작업량과 종료 시점에 맞추어 다른 작업과의 우선순위를 살핀 후 작업을 자동으로 수행하게 됩니다. 그 자리를 지키고 있을 필요도 없고, 랜덤하게 한 대에 업무를 걸어둘 필요가 없지요. 그리고 두번째의 경우에는 대기하고 있는 업무가 많더라도 정책에 의해 우선순위가 높은 업무를 먼저 할당하여 수행할 수 있도록 합니다. 이런 경우라면 업무의 우선순위를 조율하는 정책이 잘 짜여져 있어야 하겠지만, 동시 요청이 오는 경우라도 큰 무리없이 작업의 할당이 이루어집니다.

 

두 가지 사례에서 알 수 있는 것은 LSF를 사용하면 일정관리의 측면에서 효율성이 굉장히 높아진다는 점입니다. 물론 가상화를 통한 이점도 크고, 사용하기 쉬운 화면을 제공한다는 점도 크지만, 실제 업무를 할당하고 조율하는 잡 스케줄링 기능과 컴퓨팅 리소스를 분배하고 다시 설정하는 로드밸런싱 기능 등으로 효율성을 달성할 수 있습니다.

 

그리고 LSF는 다양한 애드온(add-on) 제품군이 있습니다. IBM Platform이라는 접두어를 공유하는데, IBM Platform Application Center, IBM Platform RTM, IBM Platform License Scheduler, IBM Platform Analytic, IBM Platform Process Manager, IBM Platform Session Scheduler, IBM Platform Dynamic Cluster 등입니다.

 

굉장히 많아 보이지만, 사실 간단합니다. 기본적으로 작업관리 스케줄링 프로그램이므로, 다양한 시각도구와 인터페이스, 그리고 대시보드와 분석도구 등을 제공하는 것입니다. 마지막에 언급한 다이나믹 클러스터의 경우만 클라우드 자원을 관리하는 소프트웨어인 것을 제외하면 대부분의 애드온 제품 군은 유사한 수준이라고 할 수 있습니다.

 

작업스케줄링을 돕는 소프트웨어이므로 확장버전이나 통합버전도 다양합니다. DRMAA라는 분산자원관리 응용 프로그램 API가 있고, HPC Profile Basic이라는 BES 및 웹 보안관련 툴이 있습니다. 그리고 최근 유행하는 Perl을 사용하는 LSF Perl API도 있고, SAGA(Simple API for Application)이나 Python LSF wrapper와 같은 스마트 그리드용, 파이썬용의 엑세스 관리 도구도 있습니다.

 

다양한 제품군이 존재하는 바가 의미하는 것은, 다양한 곳에 사용할 수 있다는 것을 의미하며, 결국 다양한 기능 요구사항 중 공통의 요구사항을 충족시키기 때문에 실질적인 표준의 역할을 한다고 볼 수 있습니다. IBM이 20년 동안 고성능 어플리케이션 운용환경을 위한 워크로드와 자원관리 소프트웨어 분야 선도 업체로서의 경험을 바탕으로 표준화의 실질적인 리더가 되고 있다는 것과도 일맥상통합니다.

 

고성능 컴퓨팅(High Performance Computing)분야라면 이런 문제가 더욱 심각합니다. HPC 분야는 안 그래도 많은 양의 데이터를 처리하는데, 정보의 저장 및 사용을 위한 적절한 분배가 이루어지지 않는다면 큰 문제가 발생하는 것이지요. 기존의 HPC 환경에서 여러 컴퓨팅 자원이 공유되지 않는 비효율성과 형평성에 어긋난 업무 연산처리, 설계 주기의 비 일관성, 이런 모든 현상들에 영향을 받는 결과 산출지연이 일반화되어 있었습니다. 결국 중요한 것이 총소유비용관점에서 보유 IT자원의 성능을 개선하고 인프라 비용과 운영비용의 소비를 줄이는 방법이 된 것이지요.

 

IBM의 해답은 심플합니다. 명확한 기능의 잡 스케줄러를 만드는 것이지요. IBM은 20년 이상의 경험을 보유하고 있으며, 이 분야에서 지속적인 서비스의 발전을 시도하였습니다. 그 결과 세계 30대 기업 중 23개의 기업고객이 스펙트럼 LSF를 사용하고 있으며, 전 세계 2,500여개의 고객 사이트에서 사용 중에 있습니다. 그리고 이 프로그램은 항공, 전자, 생명과학, 의료분야에 이르기까지 다양합니다. LSF는 분산 컴퓨팅 환경에서 가용할 수 있는 하드웨어 및 소프트웨어 리소스 활용율을 극대화하고, 효율적인 시스템 활용과 업무 워크로드 분산 및 관리를 해줄 뿐 아니라, 컴퓨팅 인프라의 활용에 있어서 최선의 방법을 제안합니다. 쉽게 말해, 최고의 결과물을 낼 수 있는 환경을 제공한다는 것이지요.