2019.03.25

오픈 컴퓨트 프로젝트와 애저 클라우드 : 하드웨어와 소프트웨어의 만남

Simon Bisson | InfoWorld
마이크로소프트는 2014년부터 오픈 컴퓨터 프로젝트(Open Compute Project, OCP)에 참여했으며, 이 프로젝트를 위해 자사 애저 데이터센터의 사양 중 많은 부분을 기여했다. 마이크로소프트가 자사의 올림푸스 서버와 소닉 네트워킹 소프트웨어를 개발하고 있는 곳도 여기다. 그래서 연례 OCP 서밋에 참여해 오픈 하드웨어 디자인의 세계에서 어떤 일이 일어나고 있는지, 이번에는 애저 클라우드의 기반 인프라 중 어떤 측면이 세상에 노출되어 있는지 알아보는 것은 언제나 흥미로운 일이다. 올해 OCP 서밋에서 파악한 내용을 소개한다.
 
ⓒGettyImagesBank
 

프로젝트 집라인(Project Zipline)

애저 같은 퍼블릭 클라우드는 대부분 온프레미스 시스템과는 상당히 다른 문제가 있다. 네트워크 안에서 시스템 성능을 저하시키지 않고 수 테라바이트의 데이터를 이동해야 한다. 서비스 사용자가 많아지면서 네트워크 안에서 더 많은 데이터를 옮겨야 하지만, 네트워크 링크는 더 높은 대역폭 연결을 지원하지 않는다. 이는 중대한 문제이며, 가능한 해결책은 세 가지 정도이다.

- 수백만 달러를 들여 자사 데이터 센터에 새로운 연결성을 투입한다.
- 서비스의 성능을 떨어뜨린다.
- 소프트웨어를 사용해 문제를 해결한다.

마이크로소프트 리서치와 애저 클라우드의 자원을 이용해 마이크로소프트는 정답을 선택했다. 새로운 압축 알고리즘인 프로젝트 집라인을 제시했다. 현재 애저에서 사용 중인 프로젝트 집라인은 일반적으로 사용하는 Zlib-L4 64KB 알고리즘의 2배에 달하는 압축률을 제공한다. 이를 통해 비용을 거의 들이지 않으면서 대역폭과 저장 용량이 2배 가까이 증가한다. 자체 네트워크와 하드웨어에서 그 가치를 입증한 마이크로소프트는 누구나 구현해 사용할 수 있도록 집라인 알고리즘을 OCP에 기증했다.

하지만 프로젝트 집라인은 단순한 소프트웨어가 아니다. 목표로 한 속도로 동작하기 위해서는 하드웨어로 구현해야 한다. AHI(Azure Hardware Infrastructure)의 총괄 책임자 쿠샤그라 베이드에 따르면, 이 프로젝트는 여러 워크로드의 데이터를 이용해 애저의 여러 내부 데이터 세트를 분석하면서 시작됐다. 데이터는 달랐지만 기본적인 경계는 패턴이 유사해 마이크로소프트가 정적 데이터뿐만이 아니라 스트리밍 데이터도 작업할 수 있는 보편적인 압축 알고리즘을 개발할 수 있었다.

하드웨어에서 집라인의 패턴 매칭을 구현함으로써 프로젝트 집라인은 6만 4,000개 이상의 블록 패턴을 실시간으로 매치할 수 있다. 소프트웨어로 작동하는 경우 약 1,000개만 처리할 수 있다. 디렉토리 포인터로 더 많은 패턴을 인식하여 대체할 수 있게 되면서 압축이 더 빨라지고 효율화되었다.
 

베리로그(Verilog) 공유

알고리즘이 하드웨어로 구현되면 OCP 등의 조직과 공유하기가 더 어려워진다. 하지만 마이크로소프트는 집라인에 대해 흥미롭고 새로운 접근방식을 취하고 있다. 코드를 공개하는 대신에 애저 집라인 구현의 베리로그 RTL 파일을 공유하고 있다. 이런 파일을 이용해 누구나 칩에서 집라인을 기존 네트워킹 하드웨어의 연장으로, 또는 애저의 프로젝트 브레인웨이브 가속기 같은 FPGA로 구현할 수 있다.

베이드는 "아마도 버퍼가 더 깊으면 속도 또는 압축이 향상되거나 레이아웃이 스트림 처리 속도를 높일 수 있을 것이다"면서 "보는 사람이 많으면 아이디어도 늘어나고 혁신도 커진다"고 강조했다. 또 이미 집라인을 구현할 수 있는 곳도 생각하고 있다며, "데이터가 저장되는 아카이브 시스템, 서버의 가속기, 네트워크나 저장 패브릭 등이 될 수 있다. 어디에서든 CPU 사이클을 확보해줄 것"이라고 덧붙였다.

마지막 사항이 중요하다. 현대적인 클라우드 아키텍처는 본래의 균일한 디자인에서 훨씬 이질적인 것으로 이동하고 있다. 모든 것을 소프트웨어로 처리하는 대신에 맞춤형 칩이 점차 중요해지고 있다. 페이스북 인프라팀은 OCP와 관련하여 필요에 따라 여러 가속기에 표준 메인보드를 연결할 수 있는 가속기용 공통 모듈 디자인을 발표했다. 애저 같은 클라우드는 표준 컴퓨팅 메인보드를 사용하고 머신러닝, 암호화, 데이터 압축에 특정 가속기를 연결하여 비용을 절감할 수 있다.
 

케베로스로 클라우드 하드웨어 보호하기

마이크로소프트의 OCP 프로젝트 중 좀더 흥미로운 것은 현대적인 클라우드 데이터센터를 구성하는 다양한 장치에 단단한 신뢰의 뿌리(애저 스피어 보안 IoT 플랫폼에서 사용하는 것 등)를 추가하는 분산형 보안 시스템인 케베로스(Cerberus)이다. 케베로스를 통해 마이크로소프트는 신뢰받는 하드웨어만 데이터센터에 설치하도록 할 수 있을 뿐 아니라 자체 공급망 내에서 하드웨어를 함부로 변경하지 못하도록 할 수 있다.

마이크로소프트는 이미 자사의 OCP 드날리(Denali) SSD에 케베로스를 구현했으며, 인텔을 포함한 다른 OCP 회원사와 함께 다른 클라우드 데이터센터 구성요소에도 적용하기 위해 노력하고 있다. 베이드는 케베로스가 정책 주도적일 수 있기 때문에 현대적인 시스템 관리 기법과 교차 혼합된다고 지적했다. 케베로스 디바이스는 자동으로 생성되는 프라이빗 키가 있으며, 칩 제조 시점에 공개된 공개 키만이 공유된다.
 

대규모 머신러닝을 위한 프로젝트 올림푸스(Olympus)

올림푸스 관련 내용도 발표됐지만, OCP에서 공개된 개발 대부분은 마이크로소프트의 성과가 아니라 각 애저 데이터센터에 들어가는 수천 대의 화이트 박스 서버를 개발한 업체들의 성과였다. 플렉스트로닉스(Flextronics)는 마이크로소프트 부스에서 슬림라인 올림푸스 시스템을 전시했지만 가장 흥미로운 개발은 인스퍼(Inspur)의 것이었던 것 같다.

잘 알려지지 않은 컴퓨터 하드웨어 업체 중 가장 큰 인스퍼는 IDC가 선정한 3대 서버 업체에 포함되었으며, 대형 서비스 업체에 퍼블릭 클라우드용 하드웨어를 공급하고 있다. 4소켓 올림푸스 시스템과 부착된 16 GPU 박스(인스퍼에서 말하는 JBOG(Just Bunch of GPUs))에 기초하여 AI 워크로드를 위한 컴퓨팅 하드웨어를 개발하고 있다. 딥 러닝 워크로드를 처리하는 이 장비는 80개의 CPU 코어와 상당량의 메모리를 갖고 있다. 초기의 트윈 섀시 시스템도 강력하지만 2개의 트윈 섀시 시스템을 상호 연결하여 160개의 코어와 32개의 GPU를 제공하면 상황이 더욱 흥미로워진다.

이런 플랫폼은 현대 클라우드의 미래이며 딥 러닝 워크로드에 필요한 컴퓨터를 제공한다. GPU 가속기를 메인보드에서 자체 섀시로 옮김으로써 학습 모델에 맞춰 CPU와 GPU의 균형을 맞추는 더욱 유연한 구현이 가능하며, 사용하지 않는 자원을 재구성해 애저의 코그니티브 서비스 같은 다수의 덜 복잡한 추론 작업을 처리할 수 있다.

한 가지 확실한 것은 마이크로소프트가 OCP에 참여한 덕분에 애저에서 하드웨어와 소프트웨어 사이의 경계가 모호해지고 있다는 점이다. 프로젝트 집라인 같은 기술을 통해 하드웨어로 생각하던 것이 이제는 소프트웨어이고 소프트웨어였던 것이 이제는 하드웨어이다. 올림푸스 기반 범용 하드웨어에 FPGA와 전용 가속기를 추가함으로써 애저는 점차 복잡해지는 워크로드를 부하를 경제적으로 지원할 수 있는 서버를 제공한다.  editor@itworld..co.kr



2019.03.25

오픈 컴퓨트 프로젝트와 애저 클라우드 : 하드웨어와 소프트웨어의 만남

Simon Bisson | InfoWorld
마이크로소프트는 2014년부터 오픈 컴퓨터 프로젝트(Open Compute Project, OCP)에 참여했으며, 이 프로젝트를 위해 자사 애저 데이터센터의 사양 중 많은 부분을 기여했다. 마이크로소프트가 자사의 올림푸스 서버와 소닉 네트워킹 소프트웨어를 개발하고 있는 곳도 여기다. 그래서 연례 OCP 서밋에 참여해 오픈 하드웨어 디자인의 세계에서 어떤 일이 일어나고 있는지, 이번에는 애저 클라우드의 기반 인프라 중 어떤 측면이 세상에 노출되어 있는지 알아보는 것은 언제나 흥미로운 일이다. 올해 OCP 서밋에서 파악한 내용을 소개한다.
 
ⓒGettyImagesBank
 

프로젝트 집라인(Project Zipline)

애저 같은 퍼블릭 클라우드는 대부분 온프레미스 시스템과는 상당히 다른 문제가 있다. 네트워크 안에서 시스템 성능을 저하시키지 않고 수 테라바이트의 데이터를 이동해야 한다. 서비스 사용자가 많아지면서 네트워크 안에서 더 많은 데이터를 옮겨야 하지만, 네트워크 링크는 더 높은 대역폭 연결을 지원하지 않는다. 이는 중대한 문제이며, 가능한 해결책은 세 가지 정도이다.

- 수백만 달러를 들여 자사 데이터 센터에 새로운 연결성을 투입한다.
- 서비스의 성능을 떨어뜨린다.
- 소프트웨어를 사용해 문제를 해결한다.

마이크로소프트 리서치와 애저 클라우드의 자원을 이용해 마이크로소프트는 정답을 선택했다. 새로운 압축 알고리즘인 프로젝트 집라인을 제시했다. 현재 애저에서 사용 중인 프로젝트 집라인은 일반적으로 사용하는 Zlib-L4 64KB 알고리즘의 2배에 달하는 압축률을 제공한다. 이를 통해 비용을 거의 들이지 않으면서 대역폭과 저장 용량이 2배 가까이 증가한다. 자체 네트워크와 하드웨어에서 그 가치를 입증한 마이크로소프트는 누구나 구현해 사용할 수 있도록 집라인 알고리즘을 OCP에 기증했다.

하지만 프로젝트 집라인은 단순한 소프트웨어가 아니다. 목표로 한 속도로 동작하기 위해서는 하드웨어로 구현해야 한다. AHI(Azure Hardware Infrastructure)의 총괄 책임자 쿠샤그라 베이드에 따르면, 이 프로젝트는 여러 워크로드의 데이터를 이용해 애저의 여러 내부 데이터 세트를 분석하면서 시작됐다. 데이터는 달랐지만 기본적인 경계는 패턴이 유사해 마이크로소프트가 정적 데이터뿐만이 아니라 스트리밍 데이터도 작업할 수 있는 보편적인 압축 알고리즘을 개발할 수 있었다.

하드웨어에서 집라인의 패턴 매칭을 구현함으로써 프로젝트 집라인은 6만 4,000개 이상의 블록 패턴을 실시간으로 매치할 수 있다. 소프트웨어로 작동하는 경우 약 1,000개만 처리할 수 있다. 디렉토리 포인터로 더 많은 패턴을 인식하여 대체할 수 있게 되면서 압축이 더 빨라지고 효율화되었다.
 

베리로그(Verilog) 공유

알고리즘이 하드웨어로 구현되면 OCP 등의 조직과 공유하기가 더 어려워진다. 하지만 마이크로소프트는 집라인에 대해 흥미롭고 새로운 접근방식을 취하고 있다. 코드를 공개하는 대신에 애저 집라인 구현의 베리로그 RTL 파일을 공유하고 있다. 이런 파일을 이용해 누구나 칩에서 집라인을 기존 네트워킹 하드웨어의 연장으로, 또는 애저의 프로젝트 브레인웨이브 가속기 같은 FPGA로 구현할 수 있다.

베이드는 "아마도 버퍼가 더 깊으면 속도 또는 압축이 향상되거나 레이아웃이 스트림 처리 속도를 높일 수 있을 것이다"면서 "보는 사람이 많으면 아이디어도 늘어나고 혁신도 커진다"고 강조했다. 또 이미 집라인을 구현할 수 있는 곳도 생각하고 있다며, "데이터가 저장되는 아카이브 시스템, 서버의 가속기, 네트워크나 저장 패브릭 등이 될 수 있다. 어디에서든 CPU 사이클을 확보해줄 것"이라고 덧붙였다.

마지막 사항이 중요하다. 현대적인 클라우드 아키텍처는 본래의 균일한 디자인에서 훨씬 이질적인 것으로 이동하고 있다. 모든 것을 소프트웨어로 처리하는 대신에 맞춤형 칩이 점차 중요해지고 있다. 페이스북 인프라팀은 OCP와 관련하여 필요에 따라 여러 가속기에 표준 메인보드를 연결할 수 있는 가속기용 공통 모듈 디자인을 발표했다. 애저 같은 클라우드는 표준 컴퓨팅 메인보드를 사용하고 머신러닝, 암호화, 데이터 압축에 특정 가속기를 연결하여 비용을 절감할 수 있다.
 

케베로스로 클라우드 하드웨어 보호하기

마이크로소프트의 OCP 프로젝트 중 좀더 흥미로운 것은 현대적인 클라우드 데이터센터를 구성하는 다양한 장치에 단단한 신뢰의 뿌리(애저 스피어 보안 IoT 플랫폼에서 사용하는 것 등)를 추가하는 분산형 보안 시스템인 케베로스(Cerberus)이다. 케베로스를 통해 마이크로소프트는 신뢰받는 하드웨어만 데이터센터에 설치하도록 할 수 있을 뿐 아니라 자체 공급망 내에서 하드웨어를 함부로 변경하지 못하도록 할 수 있다.

마이크로소프트는 이미 자사의 OCP 드날리(Denali) SSD에 케베로스를 구현했으며, 인텔을 포함한 다른 OCP 회원사와 함께 다른 클라우드 데이터센터 구성요소에도 적용하기 위해 노력하고 있다. 베이드는 케베로스가 정책 주도적일 수 있기 때문에 현대적인 시스템 관리 기법과 교차 혼합된다고 지적했다. 케베로스 디바이스는 자동으로 생성되는 프라이빗 키가 있으며, 칩 제조 시점에 공개된 공개 키만이 공유된다.
 

대규모 머신러닝을 위한 프로젝트 올림푸스(Olympus)

올림푸스 관련 내용도 발표됐지만, OCP에서 공개된 개발 대부분은 마이크로소프트의 성과가 아니라 각 애저 데이터센터에 들어가는 수천 대의 화이트 박스 서버를 개발한 업체들의 성과였다. 플렉스트로닉스(Flextronics)는 마이크로소프트 부스에서 슬림라인 올림푸스 시스템을 전시했지만 가장 흥미로운 개발은 인스퍼(Inspur)의 것이었던 것 같다.

잘 알려지지 않은 컴퓨터 하드웨어 업체 중 가장 큰 인스퍼는 IDC가 선정한 3대 서버 업체에 포함되었으며, 대형 서비스 업체에 퍼블릭 클라우드용 하드웨어를 공급하고 있다. 4소켓 올림푸스 시스템과 부착된 16 GPU 박스(인스퍼에서 말하는 JBOG(Just Bunch of GPUs))에 기초하여 AI 워크로드를 위한 컴퓨팅 하드웨어를 개발하고 있다. 딥 러닝 워크로드를 처리하는 이 장비는 80개의 CPU 코어와 상당량의 메모리를 갖고 있다. 초기의 트윈 섀시 시스템도 강력하지만 2개의 트윈 섀시 시스템을 상호 연결하여 160개의 코어와 32개의 GPU를 제공하면 상황이 더욱 흥미로워진다.

이런 플랫폼은 현대 클라우드의 미래이며 딥 러닝 워크로드에 필요한 컴퓨터를 제공한다. GPU 가속기를 메인보드에서 자체 섀시로 옮김으로써 학습 모델에 맞춰 CPU와 GPU의 균형을 맞추는 더욱 유연한 구현이 가능하며, 사용하지 않는 자원을 재구성해 애저의 코그니티브 서비스 같은 다수의 덜 복잡한 추론 작업을 처리할 수 있다.

한 가지 확실한 것은 마이크로소프트가 OCP에 참여한 덕분에 애저에서 하드웨어와 소프트웨어 사이의 경계가 모호해지고 있다는 점이다. 프로젝트 집라인 같은 기술을 통해 하드웨어로 생각하던 것이 이제는 소프트웨어이고 소프트웨어였던 것이 이제는 하드웨어이다. 올림푸스 기반 범용 하드웨어에 FPGA와 전용 가속기를 추가함으로써 애저는 점차 복잡해지는 워크로드를 부하를 경제적으로 지원할 수 있는 서버를 제공한다.  editor@itworld..co.kr

X