Offcanvas

CIO / How To / 머신러닝|딥러닝 / 비즈니스|경제 / 빅데이터 | 애널리틱스 / 클라우드

김진철의 How-to-Big Data | 빅데이터와 클라우드 기술 (4)

2017.12.27 김진철  |  CIO KR

CMS Level-1 트리거(Trigger)와 FGPA, GPU 기술
LHC Computing Grid에서 이종(heterogeneous) 자원 관리 문제를 해결하기 위해 처음으로 가상머신을 이용한 자원 가상화 기법을 도입하여 작업 성공률을 획기적으로 개선한 이후, 가상화 기술은 클라우드 컴퓨팅의 핵심 기술로 자리 잡으며 최근 5년간 빠르게 발전해왔다. 하지만, 어떤 기술이든 기술적인 한계는 존재하게 마련이다. 가상화 기술 또한 아직 적용이 어려운 영역이 있는데 이 영역이 바로 실시간 컴퓨팅(real-time computing)과 고성능 컴퓨팅(high-performance computing) 영역이다.

 LHC 가속기와 CMS를 비롯한 검출기들은 모두 실시간 컴퓨팅이 요구되는 미션 크리티컬 시스템(mission-critical system)이다. LHC 가속기와 CMS 검출기가 미션 크리티컬 시스템인 이유는 크게 두 가지이다. 첫 번째로, LHC 가속기와 CMS 등의 검출기 시스템 어느 하나라도 제대로 동작하지 못하면 전체 실험 수행이 불가능하거나 실험을 하여 데이터를 수집했더라도 데이터 품질과 신뢰성을 크게 잃게 되어 의미 있는 실험 데이터 분석이 불가능해진다. 두 번째로, 가속기와 검출기 시스템 곳곳에 방사선이 나오거나 고에너지 입자 빔이 나오는 영역이 있어 제어가 잘못되거나 정상적인 동작이 되지 않으면 사람이 다치거나 죽을 수 있는 사고가 일어날 수 있다.





연재 초반의 지난 두 번째 글에서 잠시 언급한 바와 같이, LHC 가속기에서 가속된 양성자 빔은 초당 약 4천만 번의 충돌을 일으키게 되며, 이 과정에서 나오는 이벤트를 모두 데이터로 기록하게 되면 이벤트당 약 1MB, 초당 약 60TB 이상의 데이터가 나오게 된다[7]. 하지만, 현재 초당 60TB의 데이터를 모두 기록할 수 있는 하드웨어 기술이 없기 때문에, 100kHz의 빈도로 생성되는 데이터 중 1000분의 1의 데이터만 이벤트 재구성을 위해 처리하게 된다.

이렇게 검출기에서 생성되는 데이터를 실시간으로 처리하기 위해서는 수 TFLOPS에서 수십 TFLOPS에 이르는 연산 처리 능력이 필요하다. 검출기 Level-1 트리거에서 데이터를 임시로 저장할 수 있는 시간이 약 3.2 마이크로초에 불과하기 때문에, 3.2 마이크로초라는 짧은 시간에 수집된 데이터에서 물리학적으로 의미가 있는 이벤트들을 선별해서 고수준 트리거(High-Level Trigger)로 보내기 위한 판단을 하기 위해서는 실시간 고성능 컴퓨팅 기술이 필요하게 된다.

Level-1 트리거는 짧은 시간에 많은 연산을 빠르게 수행해야 하는 고성능 컴퓨팅의 요구 사항을 만족해야 함과 동시에, CMS 검출기 시스템의 한 부분으로서, 검출기가 신뢰성 있게 데이터를 수집하고 처리할 수 있도록 Level-1 트리거 시스템 전체가 실시간으로 동기화되어 데이터를 수집하는 실시간 시스템(real-time system)의 요구사항도 만족해야 한다.

이런 고성능 컴퓨팅과 실시간 시스템의 요구사항을 만족시키기 위해서 LHC 가속기와 검출기 하드웨어의 곳곳에서 FPGA가 많이 쓰이고 있다. LHC 실험에서 FPGA를 많이 쓰는 이유는 크게 세 가지다.

첫 번째로, LHC 실험의 요구사항이 산업 표준 컴퓨팅 장비와 기술로는 맞출 수 없는 극한의 요구사항이기 때문에, 이런 독특한 요구사항을 만족하는 칩셋 및 고속 하드웨어 기술을 자체적으로 만들기 위해서 FGPA와 같이 작은 칩 안에 직접 고속 연산 처리 로직을 집적하여 심어 넣을 수 있는 프로그램이 가능한(programmable) 하드웨어가 필요했다.

두 번째로, 일반 컴퓨터와 네트워크만으로는 초당 수 TB의 데이터를, 하나의 이벤트 데이터당 3.2 마이크로초의 짧은 지연 요구사항에 만족하도록 처리해서 저장할 수 없었기 때문에, 가능하면 짧은 지연 시간을 가지도록 이벤트 검출 및 필터링, 이벤트 재구성 등의 연산을 가속할 필요가 있었다.

세 번째로, 극한 조건에서 데이터가 수집되면서 데이터가 유실되거나 품질이 낮아지지 않도록 신뢰성을 높이기 위해 데이터를 수집하는 하드웨어 수준에서부터 신뢰성을 보장하는 논리를 넣기 위해서는 CERN의 연구자들이 원하는 신뢰성 로직을 쉽게 프로그램해서 넣을 수 있는 칩수준의 하드웨어가 필요했다.

단순히 임베디드 컴퓨터를 네트워크로 연결해서 처리하는 수준으로는 Level-1 트리거에서 요구되는 3.2 마이크로초의 짧은 지연시간 내에 수 TB의 이벤트 데이터의 검출, 수집 판단(acceptance decision)을 위한 복잡한 알고리즘 연산을 수행하기 어려웠기 때문에 많은 수의 FPGA를 이용한 자체 제작 하드웨어 보드를 직접 제작하여 사용하고 있다. LHC 가속기 건설과정에서 가장 기술적으로 어려운 부분 중의 하나가, 그림 2에서 보이진 Level-1 트리거를 구성하는 여러 모듈들을 FPGA에 고속 연산을 오프로딩(off-loading)하도록 하는 적절한 전자회로 보드로 디자인하고 구현하여 그 성능과 신뢰성을 확인하고, 이를 검출기 시스템으로 통합하는 일이었다.

LHC 검출기들의 Level-1 트리거 개발이 어려운 이유 중의 또 다른 한 가지는 검출기에 들어간 많은 수의 다양한 센서들을 같이 사용해 입자의 궤적과 정보를 판단, 획득하여야 한다는 점이었다. FPGA에 심은 로직이 아무리 연산이 빠르다고 해도, 이렇게 많은 수의 다양한 센서로부터 입자에 대한 정보를 받아 하나의 FPGA칩이 입자의 궤적과 이벤트를 재구성하는 것은 불가능하다. 수집된 원시 이벤트 데이터를 재구성해서 분석에 적절한 이벤트 데이터로 수집되었는지 판단(acceptance decision)하는 연산을 위해서는 센서로부터 수집된 데이터와 많은 FPGA를 사용해 이벤트 수집 여부 판단(acceptance decision)을 위한 데이터로 재구성해서 수집 여부 판단(acceptance decision) 연산을 하는 FPGA 보드로 전달하여 처리해야 한다.



그림 3에 있는 전역 뮤온 트리거(Global Muon Trigger)와 전역 칼로리미터 트리거(Global Calorimeter Trigger)는 뮤온 트리거와 칼로리미터 트리거의 각 센서 전자회로에서 수집된 데이터를 취합해서 검출기 전 영역에 해당하는 뮤온 이벤트와 입자들의 에너지에 대한 이벤트 정보를 계산하고, 전역 트리거(Global Trigger) 모듈이 적절하게 수집된 원시 이벤트 데이터인지 여부를 최종적으로 판단해서 고수준 트리거로 전달하도록 트리거 제어 시스템(Trigger Control System)에 명령을 내리게 된다.

그림 3의 오른쪽에는 CMS 검출기의 전역 뮤온 트리거의 사진을 보여주고 있다. CMS 검출기의 전역 뮤온 트리거에서만도 벌써 10개의 FPGA가 하나의 보드에서 병렬로 연결되어 CMS 검출기 전 영역의 센서 전자회로에서 전달한 원시 이벤트 데이터를 처리해 이벤트 데이터의 최종 수집 여부를 3.2 마이크로초안에 판단하여 Level-1 트리거 제어 시스템에 내리는 명령을 계산하게 된다.



LHC 가속기는 힉스 보존을 비롯한 새로운 입자들과 이들이 일으키는 상호작용 이벤트들을 정밀하게 수집할 수 있는 확률을 더욱 높이기 위해 현재 LHC 가속기 및 각 검출기들의 성능을 높이는 작업을 하고 있다. 2026년도부터 동작할 업그레이드된 LHC 가속기를 수퍼 LHC(Super-LHC), 또는 고광도 LHC(High-Luminosity LHC)라고 부른다. 빔의 광도(luminosity)가 현재 광도(luminosity)의 20배 이상으로 높아지는 이 수퍼 LHC로 업그레이드되면, 현재 각 검출기에서 일어나는 상호작용 빈도의 20배가 넘는 상호작용이 일어나 이벤트 데이터의 양도 20배 이상 늘어나게 된다. 이 고광도 LHC 운영의 장점을 최대한 살리고자 CMS 검출기도 Level-1 트리거에서의 데이터 샘플링 빈도를 100kHz에서 750kHz로 대폭 향상하도록 계획하고 있다. 다만 데이터의 양이 워낙 많다 보니 트리거 지연 시간은 3.2 마이크로초에서 12.5마이크로초로 3배 이상 늘어날 수밖에 없게 되었다. 이렇게 늘어난 데이터 요구사항에 맞게 데이터를 수집하기 위해 Level-1 트리거의 데이터 수집 전자장치 및 컴퓨팅 시스템의 성능을 같이 업그레이드하고 있다.

수퍼 LHC 가속기와 함께 업그레이드된 CMS 검출기에서 더 빠르고 정밀하게 입자의 궤적을 재구성하기 위해서는 기본의 Level-1 트리거에서 쓰이는 데이터 처리 모듈보다 더 성능이 좋은 고성능 컴퓨팅 시스템이 필요하다. 그림 4의 오른쪽 위에 나타난 Master Processor 7(MP7)이라고 불리는 Level-1 트리거 보드는 현재 CMS 검출기에서 쓰이고 있는 저지연, 고성능 연산용 FPGA 보드이다. 이 MP7 보드 여러 개를 마치 클러스터 컴퓨터와 같이 10Gbps 저지연 광 네트워크(optical network)로 묶어서 750kHz로 7.5배로 늘어난 샘플링 빈도에 따라 늘어나는 데이터 처리를 12.5마이크로초안에 수행할 수 있도록 업그레이드된 시스템을 최근 테스트하여 성공적인 결과를 얻었다[8-10].



FPGA를 이용한 고성능 컴퓨팅 보드를 여러 개 묶어서 클러스터 병렬 컴퓨팅 시스템과 같이 사용하여 늘어나는 데이터 요구사항을 소화하려는 노력과 함께, 최근에 크게 발전하고 있는 범용 GPU 보드와 인텔이 고성능 임베디드 시스템용으로 새롭게 내어놓고 있는 인텔 제온 파이 FPGA 등의 FPGA 기반 고성능 컴퓨팅 플랫폼을 활용하여 수퍼 LHC 실험시 CMS 검출기 Level-1 트리거의 고속 데이터 처리 문제를 해결하려는 연구도 진행되고 있다.

엔비디아에서 내놓은 GPGPU 시스템은 GPU 코어(core) 간 버스 및 인터커넥트 대역폭은 아직 FPGA를 이용한 커스텀 전자회로에 비해 2.3배 낮지만, 단일 연산 보드의 처리량이 기존 FPGA 기반 연산 보드보다 5배 이상 높고, 메모리 버스의 대역폭도 FGPA 기반 연산 보드에 비해 15배 정도 높은 장점이 있다[12-13].

인텔은 CERN의 연구진과 협력하여 자사의 제온 파이 FPGA 제품을 CERN의 데이터 처리에 응용하여 수퍼 LHC의 요구사항을 만족하는 시스템을 만드는 연구를 지원하고 있다. 기존 FPGA를 이용한 자체 제작 전자회로를 개발하는데 3개월 이상이 필요했던 반면, 인텔 제온 파이FPGA 하드웨어에 OpenCL를 이용하여 이벤트 재구성 연산을 구현할 경우 2주일 정도의 시간에 개발 및 테스트할 수 있을 것으로 보고 있다. 또한, 현재 쓰이는 10Gbps 광 인터커넥트(optical interconnect)보다 대역폭이 높은 저지연 인터커넥트인 퀵패스(QuickPath) 버스 기술을 쓰면 더 높은 성능의 이벤트 재구성 연산이 가능할 것으로 보인다[14].

CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.