공개 클라우드에 구축된 최대 규모의 클러스터로 컴퓨팅 한계를 확장한 MIT 교수

전산 수학자이자 책임 연구원인 MIT의 앤드루 V. 서덜랜드 교수는 LMFDB(L-Functions and Modular Forms Database)를 관리하는 데 Google Compute Engine을 사용하여 580,000개 코어에 달하는 고성능 컴퓨팅 기록을 달성했습니다.

수학과 수업에서는 '객체'라는 개념이 사용됩니다. 객체는 기본적으로 숫자나 함수 같은 연산을 실행할 수 있는 모든 위치 또는 곡선 같은 수학적 연산의 결과입니다. LMFDB(L-Functions and Modular Forms Database)는 객체의 상세한 지도이며 객체 사이를 서로 연결합니다. 전 세계 연구자들의 공동작업인 LMFDB는 MIT 등 유럽 및 북미의 대학을 주축으로 한 국제적인 팀이 이끌어 가고 있습니다.

질문을 던진 후 몇 달이 아닌 몇 시간 내에 답을 받아 보면 연구에 관한 전체적인 시각이 변하게 됩니다.

Andrew V. Sutherland, 전산 수학자 겸 수석 연구 과학자, MIT

연구원 간 데이터 공유

LMFDB는 연구원이 전 세계 물리학, 컴퓨터 공학, 수학 커뮤니티와 객체에 관한 데이터를 더욱 쉽게 공유할 수 있게 하여 과학 발전에 도움을 줍니다. 객체를 만들기 위한 일부 계산은 지구상에서 계산법을 이해할 수 있는 사람이 몇 명 안 될 정도로 너무 복잡합니다. 다른 계산은 너무 방대해서 시간이 오래 걸리고 비용이 많이 소요되므로 한 번만 실행하는 것이 최선입니다.

LMFDB를 실행하는 팀에는 증가하는 스토리지 요구사항을 처리할 수 있는 클라우드 서비스가 필요했습니다. 대략적으로 LMFDB 내에서 객체를 생성하는 데 거의 1,000년의 컴퓨팅 시간이 걸립니다. 거대한 스토리지 문제뿐만 아니라 규모 확장의 문제도 존재했습니다. LMFDB는 lmfdb.org에서 누구나 사용할 수 있기 때문에 매일 이루어지는 수많은 검색을 지원할 수 있도록 규모를 확장해야 했습니다. 또한 LMFDB는 공동작업 프로젝트이므로 다양한 국가의 사람들이 손쉽게 관리할 수 있는 시스템도 필요했습니다.

인프라가 아닌 연구에 집중

LMFDB 팀은 다양한 클라우드 솔루션을 살펴본 후 고성능, 자동 확장 기능, 사용 편의성, 안정성 등을 고려해 Google Cloud Platform(GCP)을 선택했습니다.

MIT의 수학 교수 겸 전산 수학자이자 책임 연구원인 앤드루 V 서덜랜드는 LMFDB 및 의사결정 과정에 참여한 주요 연구원 중 한 명입니다.

“저희는 하드웨어 오류나 웹사이트 규모 문제에는 신경 쓰지 않고 연구에만 집중하고 싶은 수학자입니다"라고 서덜랜드는 말합니다.

서덜랜드와 LMFDB팀은 웹 서버를 호스팅하는 데는 Google Compute Engine(GCE)과 Google Persistent Disk를 사용하고, 온라인 데이터 0.5테라바이트와 자주 액세스하지 않는 데이터 3테라바이트를 저장하는 데는 미러링된 MongoDB 데이터베이스를 사용하기로 했습니다. 이러한 설정을 사용하면 LMFDB는 필요에 따라 규모를 조정하고 연구자들이 필요로 할 때 연산 결과와 수학적 객체를 신속하게 제공할 수 있습니다. LMFDB는 전 세계의 연구자들이 공동작업 방식으로 더욱 간편하게 데이터베이스를 관리하도록 지원하는 다양한 GCP 도구도 사용합니다. 이러한 도구로는 Google Stackdriver, Google Cloud Console, Google Cloud Load Balancing이 있습니다.

서덜랜드에게는 LMFDB에서 실행하고 저장해야 하는 특히 복잡한 도표가 있었는데, 그 중 하나는 기존에 퍼블릭 클라우드에서 실행했던 한계 이상의 컴퓨팅 파워가 필요할 정도로 매우 방대했습니다. 이 작업을 위해 서덜랜드는 GCE를 선택했으며 선점형 VM을 통해 580,000개 코어를 실행했는데, 이는 퍼블릭 클라우드에서 실행한 고성능 컴퓨터 클러스터 중 최대 규모로 알려져 있습니다.

계산 결과, 고유한 LMFDB 항목마다 70,000개의 서로 다른 곡선이 도출되었습니다. 이러한 곡선 중 단 하나를 찾는 일은 엄청난 수의 연산 주기를 필요로 하는 매우 복잡한 작업입니다. “15차원의 건초에서 바늘 하나를 찾는 것과 마찬가지였습니다"라고 서덜랜드는 말합니다.

계산에 GCE를 사용하기 전 서덜랜드는 64코어 컴퓨터에서 작업을 실행했지만 시간이 굉장히 오래 걸렸습니다. 유일한 대안은 MIT 클러스터에서 컴퓨팅 시간을 확보하는 것이었는데 시간을 얻기도 어려웠고 사용할 수 있는 소프트웨어 구성도 제한적이었습니다. GCE를 선택한 이후 서덜랜드는 필요한 만큼 코어를 사용하고 정확하게 필요한 운영체제, 라이브러리, 애플리케이션을 설치하며 원하면 언제든 환경을 업데이트할 수 있게 되었습니다.

GCP가 LMFDB에 제공하는 확장성 덕분에 학생부터 경험이 풍부한 연구자까지, 모두가 웹 인터페이스를 통해 콘텐츠를 손쉽게 검색하고 탐색할 수 있게 되었습니다. 예를 들어, 서덜랜드는 타원 곡선에 관한 수업을 진행하고 학생들은 과제에 LMFDB를 사용합니다.

대규모 계산 수행 시 비용 절감

예산이 제약된 연구자와 교육 기관이 많은 상황에서 GCP를 이용하면 합리적인 가격에 막대한 양의 계산을 실행할 수 있습니다. 서덜랜드는 자신이 사용하는 GCE 선점형 VM을 통해 극도로 복잡한 계산을 실행하면서도 비용을 획기적으로 줄일 수 있습니다. 완벽한 기능을 갖춘 이 인스턴스는 GCE로 중지될 수 있으므로 이에 상응하는 일반 인스턴스에 비해 비용이 최대 80퍼센트 절약됩니다. 계산이 중지되어도 성능에 큰 영향을 미치지는 않습니다. 매 시간 계산이 실행되는 동안 평균적으로 인스턴스의 2~3퍼센트만 중지되고, 스크립트는 전체 작업이 완료될 때까지 다시 시작하므로 손실되는 시간은 거의 없습니다. 이처럼 약간의 중지를 허용함으로써 그는 적은 비용으로 사실상 지연 없이 대규모 계산을 실행할 수 있습니다.

저희는 21세기의 수학에 관한 지도를 그리고 있습니다.

Andrew V. Sutherland, 전산 수학자 겸 수석 연구 과학자, MIT

가입해 주셔서 감사합니다.

관심사를 자세히 알려주세요.