LHC 실험과 뉴로모픽 엔지니어링
LHC 실험과 같은 거대과학 실험 장치는 건설에만 10~20년이 걸리고, 대량 생산을 위한 물건이나 장치를 만드는 일이 아닌 세계에서 하나뿐인 실험 장치를 만드는 일이다 보니 큰 비용이 들고 그에 따르는 위험 부담도 크다. 이런 거대과학 실험에서는 종종 이 실험 장치의 건설과 운영에 필요한 긴 기간이 새로운 과학적, 기술적 발견과 진보의 계기가 되기도 한다.
LHC 실험의 요구사항도 실험 계획 초반과 LHC 가속기 완공 시점, 그리고 지금의 요구사항이 모두 다르다. 사실은 LHC 가속기가 건설되고 운영되는 과정에서 가속기와 검출기, 그리고 실험에서 요구되는 기술적인 요구 사항의 수준이 계속 높아져 왔다. 특히 실험 데이터 분석에 필요한 데이터의 양과 처리 속도, 복잡성의 정도는 크게 높아지고 있다. 지난 연재에서도 소개했듯이 고광도 LHC(High-Luminosity LHC; HL-LHC)로 LHC 가속기가 업그레이드되면 검출기에서 발생하는 데이터의 양이 기하급수적으로 증가하게 되는데, 2019년에는 2016년에 생성된 데이터의 4배에 이르는 293PB, 2028년에는 2016년에 생성된 데이터의 52배에 이르는 3.8EB에 이를 것으로 추정된다. 이는 LHC 실험이 계획되던 1992년에는 검출기 데이터가 1PB, 그리고 LHC 가속기가 완공되던 시점인 2008년도에는 연간 15PB로 데이터양이 추정되던 것에 비교하면 급격하게 빅데이터 요구 사항의 수준이 높아지고 있다.
LHC 실험의 요구 사항이 이렇게 지속해서 높아지는 배경에는 여러 가지 요소가 있는데, 그중에서 중요한 것은 실험이 진행되면서 근본 입자들에 조사해야 할 물리학적 질문들이 더 많아지고 복잡해지는 것과, LHC 가속기에 쓰이는 기술이 정체되어 있지 않고 더 향상되고 발전한다는 것이다.
1992년 당시에도 통계적 패턴 인식 기술을 포함해 사람의 두뇌를 모방하려는 뉴로모픽 VLSI 프로세서 기술이 있었으나 딥러닝과 딥러닝 전용 프로세서, 새로운 뉴로모픽 프로세서들이 쏟아져 나오는 요즘과 비교하면 그 기술의 수준과 복잡도가 매우 낮았다. LHC 실험이 계획되던 1992년의 컴퓨팅 기술과 딥러닝 및 인공지능 기술, 새로운 프로세서와 메모리 기술이 급격하게 발전하는 2018년을 비교해보면, 현재의 기술로 LHC 실험에서 탐구할 수 있는 물리학적 현상의 범위와 깊이가 훨씬 더 넓고 깊다. 이런 이유로 LHC 가속기와 검출기들은 3단계에 걸쳐서 업그레이드되고, 이런 장치 업그레이드를 통해 탐구하려는 입자 물리학적 현상과 그 원리의 범위를 더 넓혀가고 있다.
최근 컴퓨팅 프로세서 기술의 발전은 다양화되고 그 발전 정도도 급격하게 빨라지고 있다. 딥러닝 때문에 주목받기 시작한 GPGPU 기술은 엔비디아의 주도로 1~2년 만에 GPGPU 프로세서 안에 집적되는 연산 코어가 2배 가까이 증가하여 현재 출시된 볼타(Volta)아키텍처 기반의 GPGPU는 테슬라(TESLA) 제품의 경우 GPU 하나당 32비트 유동 연산 코어가 5120개로 그 이전 제품인 파스칼(Pascal) GPU의 3584개에 비해 2배 가까이 많아졌다. 비록 최근에 생산이 중지되기는 했지만, GPGPU에 맞서 인텔이 내놓았던 나이츠 랜딩(Knights Landing) CPU의 경우에는 옴니패스(OmniPath)라는 고성능 네트워크 인터페이스가 내장되고 72코어의 연산 코어가 집적되었다.
딥러닝 연산을 모바일 장치에서 가속하여 다양한 인공지능 응용 프로그램을 지원하기 위한 프로세서들이 개발되었는데, 대표적인 것으로 무선통신 칩기술로 유명한 퀄컴의 신경 처리 유닛(Neural Processing Unit; NPU)이 스냅드래곤 칩에 적용되기 시작하였으며, 구글은 딥러닝에 많이 쓰이는 텐서 연산을 가속하기 위한 텐서 프로세싱 유닛(Tensor Processing Unit; TPU)이라는 딥러닝 전용 프로세서를 개발하였다. 이번 연재에서 소개할 IBM의 트루노스(TrueNorth) 프로세서와 MIT에서 개발한 저전력 딥러닝 전용 프로세서인 아이리스(Eyeriss)는 딥러닝 연산에 적합하도록 아예 집적회로 수준의 아키텍처를 새롭게 설계한 프로세서 기술이다(그림 1).
IBM의 트루노스와 MIT 아이리스 프로세서와 함께 딥러닝의 선구자인 뉴욕대의 얀 르쿤 교수는 컨볼루션 신경망 연산 전용 프로세서인 뉴플로우(NeuFlow)라는 프로세서를 개발하기도 하였다. 스탠포드 대학교에서는 뉴로모프(Neuromorph)와 브레인스톰(Brainstrom)이라는 뉴로모픽 프로세서 기술을, 영국 맨체스터 대학이 주도하는 인간 브레인 프로젝트(Human Brain Project)는 스피네이커(Spinnaker)라는 뉴로모픽 프로세서를 개발하였다. 독일의 하이델베르그 대학에서는 신경망 회로에 유연성을 제공할 수 있는 신경가소성(neuroplasticity)을 모델링한 아날로그 뉴로모픽 프로세서인 스파이키(Spikey)를 개발하기도 하였다(그림 2).
최근에는 구글을 중심으로 양자 컴퓨팅 프로세서를 기계 학습 기술에 적용하려는 연구도 진행되고 있다. 양자 컴퓨터를 처음으로 상용화하여 판매하기 시작한 캐나다의 디웨이브 시스템즈(D-Wave Systems)의 양자 컴퓨터는 2010년 출시한 첫 제품 D-Wave One 시스템 때에는 256큐빗 연산을 할 수 있었으나, 현재 제품인 D-Wave 2000Q 시스템은 2048큐빗 연산을 수행할 수 있다. 양자 컴퓨팅을 이용한 딥러닝 및 기계 학습 기술의 급격한 발전이 곧 눈앞에 현실이 될 것으로 보인다.
최근 LHC 연구자들은 이렇게 급격하게 발전하는 컴퓨팅 프로세서 기술들을 LHC 빅데이터 처리에 활용하기 위한 연구를 진행하고 있다. 특히, 딥러닝을 이용한 이벤트 데이터 필터와 재구성 연산을 위해 인텔 제온 파이 프로세서와 같은 매니코어 CPU와 엔비디아의 GPGPU를 활용하는 연구는 매우 활발하게 진행되고 있다. 최근에는 뉴로모픽 프로세서를 검출기의 레벨 1(Level-1) 트리거에 적용하여 중요한 입자 물리학적 이벤트의 검출 확률을 높이려는 연구도 수행하고 있다. 이번 글에서는 IBM에서 개발한 트루노스(TrueNorth) 뉴로모픽 프로세서를 이용해 레벨 1(Level-1) 트리거의 이벤트 재구성 연산에서 중요하게 쓰이고 있는 칼만 필터(Kalman Filter)의 성능을 높이려는 연구를 한 결과를 간단하게 소개해보려고 한다[13-14].
LHC 가속기의 네 개의 대표적인 검출기 중 하나인 아틀라스(ATLAS) 검출기는 CMS와 함께 LHC 검출기를 대표하는 두 대의 다목적 범용검출기이다. 예전의 다섯번째, 열두번째 글에서 소개한 바와 같이, 입자의 궤적을 기록하기 위해 ATLAS 및 CMS 검출기에서 실리콘 픽셀 검출 장치를 사용한다. ATLAS 검출기의 경우 트래커의 구조는 조금 더 복잡해서, 픽셀 검출기(pixel tracker), 실리콘 스트립 검출기(semiconductor silicon-strip tracker; SCT), 전이 방사 추적기(Transition Radiation Tracker; TRT)로 구성되어 있으며, 이들 세 트래커 구성요소를 합쳐 배럴 내부 트래커(Barrel Inner Tracker)라고 한다[13].
이들 트래커 센서에 입자들이 지나면서 발생하는 전기 신호를 수집한 데이터는 단순한 점들의 집합이다. 이들 점들을 클러스터링하여 같은 입자에서 발생한 궤적, 이벤트로 재구성하고 연결하는 작업을 레벨-1(Level-1) 트리거의 전자회로와 임베디드 컴퓨팅 장비에서 수행하게 된다. 픽셀 검출기, 실리콘 스트립 검출기의 세 개의 점들을 이용해 입자의 이벤트를 재구성하기 위한 씨앗(seed) 이벤트 신호를 구성하게 되는데, 이때 만드는 씨앗 이벤트 데이터를 세 개의 데이터 포인트로 구성된다고 해서 트리플렛(triplet)이라고 한다.
트리플렛으로 구성된 씨앗 데이터를 이용해 픽셀 검출기, 실리콘 스트립 검출기, 전이 방사 추적기의 배럴 내부 트래커의 모든 센서 레이어에 기록된 데이터 점들을 이어 이벤트로 재구성하게 되는데, 이때 씨앗 데이터를 이용해 데이터 점들을 이어 이벤트로 재구성하기 위해 조합 칼만 필터(combinatorial Kalman filter)를 사용하게 된다.
칼만 필터는 선형 매트릭스 연산을 통해 재귀적으로 정의되어 임베디드 시스템에서 구현되어도 연산에 많은 리소스가 필요하지 않다는 장점이 있으며, 요즘 딥러닝으로 다시 알려진 신경망 알고리즘과의 관계가 명확하고 신경망을 칼만 필터 알고리즘으로 표현하기 쉽다는 장점이 있어서 임베디드 시스템에서 고급 신호 처리에 많이 쓰이는 알고리즘이다.
스톡홀름 대학의 레베카 카니(Rebecca Carney) 박사는 미국 로런스 버클리 국립 연구소(Lawrance Berkeley National Laboratory)의 ATLAS 실험 그룹과 IBM 트루노스(TrueNorth) 개발팀의 지원으로 IBM에서 개발한 뉴로모픽 프로세서인 트루노스(TrueNorth)를 이용해 위에서 설명한 ATLAS 검출기의 배럴 내부 트래커의 이벤트 재구성에 쓰이는 조합 칼만 필터 연산을 구현하는 프로젝트를 진행하였다. 그 결과가 최근 그녀의 학위 논문과 2017년 프랑스 오르세이 소재 국립 선형 가속기 연구소에서 열린 지능형 트래커 검출기 공동 학술회의(Connecting the Dots/Intelligent Tracker 2017)에서 발표되었는데, 그 결과를 간단하게 소개하면서 뉴로모픽 프로세서가 LHC 빅데이터 처리에 가지는 의미를 간단하게 살펴보자.
IBM의 트루노스 뉴로모픽 프로세서는 미국 방위고등연구계획국(Defense Advanced Research Projects Agency; DARPA)의 '시냅스(SyNAPSE)' 프로그램을 통해 IBM에서 개발되었다. 트루노스 프로세서는 인간의 두뇌가 수행하는 연산을 좀더 효율적으로 저전력으로 수행하는 신경모방(neuromorphic) 연산 아키텍처를 새롭게 만들어보고자 하는 목표로 디자인되고 만들어졌으며, 이런 이유로 최근 많이 나오고 있는 딥러닝 전용 가속 프로세서와 유사한 용어를 사용하기는 하지만, 그 구현 아키텍처는 전혀 다른 모습을 가지고 있다.
IBM의 트루노스 프로세서는 그림 3과 4에서 보이는 것과 같이 NS1e 보드에 장착되어 하나의 컴퓨터 모듈로서 동작하며, 연산과 모듈을 제어하는 로직이 탑재된 ZYNQ SoC FPGA 칩과 Ethernet, USB, UART 등의 통신 인터페이스, 그리고 트루노스 프로세서와 트루노스 프로세서가 구동하기 위해 필요한 기타 회로와 버스로 구성되어 있다.
트루노스 프로세서는 트루노스 코어가 가로 64개, 세로 64개의 정방형 격자 형태로 배치되어 있고, 각 트루노스 코어는 내부 통신 패브릭을 통해 서로 연결되어 있다. 하나의 트루노스 코어는 연산 결과를 저장하기 위한 메모리 모듈, 연산 과정을 제어하기 위한 제어 모듈(Controller), 연산 명령 수행에 필요한 자원(resource)를 할당해주는 스케줄러(Scheduler) 모듈, 그리고 신경계의 동작을 모방한 뉴런(Neuron) 모듈과 뉴런 간 데이터 교환 경로를 만들고 스위치해주는 라우터(Router)로 구성되어 있다. 하나의 트루노스 코어에서 통 256개의 뉴런과 축색돌기 또는 액손(Axon)만을 만들 수 있기 때문에, 이보다 큰 신경망을 트루노스에서 연산시키기 위해서는 트루노스 코어 간에 신경망 연산 모델을 병렬로 배치하고 병렬 연산을 하도록 특별하게 프로그래밍해주어야 한다.
보통 뉴로모픽 프로세서는 신경 세포가 만드는 전기 신호인 활동 전위(action potential)와 그 활동 전위가 신호로서 다루어지게 되는 스파이크(spike) 신호의 생성 및 처리를 아날로그 회로로 구현하는 경우가 많다. 그러나, 트루노스 프로세서는 신경계의 작동 기전(mechanism)중 스파이크 신호의 기전만을 차용해 신호는 스파이크 형태의 신호로 내보내고, 신경회로는 뉴런, 액손, 그리고 뉴런과 액손을 연결해서 시냅스를 구현하는 크로스바(cross-bar)라고 불리는 요소들을 디지털 회로로 구현해 신경계의 정보처리를 모방하도록 설계하였다(그림 5).
스톡홀름 대학의 레베카 카니 박사는 트루노스 프로세서 개발 도구인 “코어렛 개발 환경(Corelet Programming Environment; CPE)”라 불리는 하드웨어 기술 언어(Hardware Description Language; HDL)와 트루노스 뉴로-시냅틱 시뮬레이터(TrueNorth Neuro-Synaptic Simulator; NCSC), 그리고 MATLAB을 사용하여 프로그램하였다.
트루노스는 원래 딥러닝을 지원하기 위해 딥러닝 개발 프레임워크로 잘 알려진 Caffe의 확장 버전인 Tea를 지원하였으나, 2016년부터는 Tea에 대한 지원을 중단하고 “에너지 효율적인 심층 뉴로모픽 네트워크(Energy-Efficient Deep Neuromorphic Network; Eedn)”이라 불리는 새로운 딥러닝 개발 도구를 이용해 심층신경망과 딥러닝을 트루노스 프로세서에서 연산할 수 있도록 지원하기 시작하였다. 레베카 카니 박사는 이 Eedn이라 불리는 딥러닝 개발 도구는 사용하지 않았다. 트루노스의 특성상 Eedn을 통한 딥러닝 연산 성능을 평가하는 연구도 흥미로운 주제였을 것으로 보이지만 앞으로 후속 연구가 진행될 것으로 보인다[14].
Surfshark
VPN (가상 사설 네트워크, Virtual Private Network)은 인터넷 사용자에게 개인 정보 보호와 보안을 제공하는 중요한 도구로 널리 인정받고 있다. VPN은 공공 와이파이 환경에서도 데이터를 안전하게 전송할 수 있고, 개인 정보를 보호하는 데 도움을 준다. VPN 서비스의 수요가 증가하는 것도 같은 이유에서다. 동시에 유료와 무료 중 어떤 VPN을 선택해야 할지 많은 관심을 가지고 살펴보는 사용자가 많다. 가장 먼저 사용자의 관심을 끄는 것은 별도의 예산 부담이 없는 무료 VPN이지만, 그만큼의 한계도 있다. 무료 VPN, 정말 괜찮을까? 무료 VPN 서비스는 편리하고 경제적 부담도 없지만 고려할 점이 아예 없는 것은 아니다. 보안 우려 대부분의 무료 VPN 서비스는 유료 서비스에 비해 보안 수준이 낮을 수 있다. 일부 무료 VPN은 사용자 데이터를 수집해 광고주나 서드파티 업체에 판매하는 경우도 있다. 이러한 상황에서 개인 정보가 유출될 우려가 있다. 속도와 대역폭 제한 무료 VPN 서비스는 종종 속도와 대역폭에 제한을 생긴다. 따라서 사용자는 느린 인터넷 속도를 경험할 수 있으며, 높은 대역폭이 필요한 작업을 수행하는 데 제약을 받을 수 있다. 서비스 제한 무료 VPN 서비스는 종종 서버 위치가 적거나 특정 서비스 또는 웹사이트에 액세스하지 못하는 경우가 생긴다. 또한 사용자 수가 늘어나 서버 부하가 증가하면 서비스의 안정성이 저하될 수 있다. 광고 및 추적 일부 무료 VPN은 광고를 삽입하거나 사용자의 온라인 활동을 추적하여 광고주에게 판매할 수 있다. 이 경우 사용자가 광고를 보아야 하거나 개인 정보를 노출해야 할 수도 있다. 제한된 기능 무료 VPN은 유료 버전에 비해 기능이 제한될 수 있다. 예를 들어, 특정 프로토콜이나 고급 보안 기능을 지원하지 않는 경우가 그렇다. 유료 VPN의 필요성 최근 유행하는 로맨스 스캠은 인터넷 사기의 일종으로, 온라인 데이트나 소셜 미디어를 통해 가짜 프로필을 만들어 상대를 속이는 행위다. 이러한 상황에서 VPN은 사용자가 안전한 연결을 유지하고 사기 행위를 방지하는 데 도움이 된다. VPN을 통해 사용자는 상대방의 신원을 확인하고 의심스러운 활동을 감지할 수 있다. 그 외에도 유료 VPN만의 강점을 적극 이용해야 하는 이유는 다음 3가지로 요약할 수 있다. 보안 강화 해외 여행객이 증가함에 따라 공공 와이파이를 사용하는 경우가 늘어나고 있다. 그러나 공공 와이파이는 보안이 취약해 개인 정보를 노출할 위험이 있다. 따라서 VPN을 사용하여 데이터를 암호화하고 개인 정보를 보호하는 것이 중요하다. 서프샤크 VPN은 사용자의 개인 정보를 안전하게 유지하고 해킹을 방지하는 데 유용하다. 개인 정보 보호 인터넷 사용자의 검색 기록과 콘텐츠 소비 패턴은 플랫폼에 의해 추적될 수 있다. VPN을 사용하면 사용자의 IP 주소와 로그를 숨길 수 있으며, 개인 정보를 보호할 수 있다. 또한 VPN은 사용자의 위치를 숨기고 인터넷 활동을 익명으로 유지하는 데 도움이 된다. 지역 제한 해제 해외 여행 중에도 한국에서 송금이 필요한 경우가 생길 수 있다. 그러나 IP가 해외 주소이므로 은행 앱에 접근하는 것이 제한될 수 있다. VPN을 사용하면 지역 제한을 해제해 해외에서도 한국 인터넷 서비스를 이용할 수 있다. 따라서 해외에서도 안전하고 편리하게 인터넷을 이용할 수 있다. 빠르고 안전한 유료 VPN, 서프샤크 VPN 뛰어난 보안 서프샤크 VPN은 강력한 암호화 기술을 사용하여 사용자의 인터넷 연결을 안전하게 보호한다. 이는 사용자의 개인 정보와 데이터를 보호하고 외부 공격으로부터 사용자를 보호하는 데 도움이 된다. 다양한 서버 위치 서프샤크 VPN은 전 세계 곳곳에 여러 서버가 위치하고 있어, 사용자가 지역 제한된 콘텐츠에 액세스할 수 있다. 해외에서도 로컬 콘텐츠에 손쉽게 접근할 수 있음은 물론이다. 속도와 대역폭 서프샤크 VPN은 빠른 속도와 무제한 대역폭을 제공하여 사용자가 원활한 인터넷 경험을 누릴 수 있도록 지원한다. 온라인 게임, 스트리밍, 다운로드 등 대역폭이 필요한 활동에 이상적이다. 다양한 플랫폼 지원 서프샤크 VPN은 다양한 플랫폼 및 디바이스에서 사용할 수 있다. 윈도우, 맥OS, iOS, 안드로이드 등 다양한 운영체제 및 디바이스에서 호환되어 사용자가 어디서나 안전한 인터넷을 즐길 수 있다. 디바이스 무제한 연결 서프샤크 VPN은 무제한 연결을 제공하여 사용자가 필요할 때 언제든지 디바이스의 갯수에 상관없이 VPN을 사용할 수 있다.