고성능 컴퓨터, 더 빨라질까... MIT연구진, 칩 속도 개선 기술 선보여

미국 MIT공대 연구진이 멀티코어 칩의 속도를 크게 향상시키고 전력소모는 줄이는 알고리즘을 개발했다. 데이터센터나 수퍼컴퓨터 등 고성능 컴퓨터의 성능이 한층 개선될 전망이다.

미국 MIT공대 연구진은 최근 멀티코어 칩 내부에서 계산과 데이터를 공동 스케줄링(co-scheduling)하게 한 ‘CDCS’ 기술을 개발했다고 기가옴 및 주요 외신이 22일 보도했다. 64코어 기준 계산 속도는 46% 빨라진 반면 전력소모는 36% 줄였다.

연구를 이끈 다니엘 산체스 MIT공대 교수는 “지금까지 고성능 프로세싱 칩은 코어 수를 늘리거나 대규모 병렬 시스템 구조로 데이터 처리 방법을 바꾸면서 성능을 개선해왔지만 칩 내 저장과 통신 영역에서 발목을 잡혔었다”며 “이번 연구는 데이터를 계산 영역의 인근에 배치시키는 것만큼 계산 영역 자체의 배열도 중요하다는 것을 보여준 셈”이라고 말했다.

칩 내부에서 데이터는 계산과 저장의 과정을 반복적으로 거친다. 때문에 계산·저장 영역이 정보를 수시로 교환해야해 이를 가까이 배열할수록 처리 속도는 빨라진다. 하지만 기술의 한계 탓에 캐시데이터를 구조적으로 계산 영역 인근에 저장하는 ‘NUCA(Non-Uniform Cache Architecture)’ 기법이 주로 쓰였다. 이 기술은 지난 2013년 IBM이 자사 제품에 적용하기도 했지만 데이터 저장 부문의 위치만 고려했다는 한계가 있었다.

연구진은 먼저 데이터 영역을 칩에 배분한 뒤 계산 및 처리 영역을 인근에 배치시켰다. 각각의 코어는 각자 지정된 영역에만 정보를 저장한다. 이후 주어진 스레드(threads)에 따라 데이터와 계산 영역의 위치를 함께 재배열하도록 하는 알고리즘을 만들었다.

이와 함께 CDCS 알고리즘을 구현할 수 있는 하드웨어(HW) 구조인 모니터 시스템도 함께 선보였다. 하드웨어와 소프트웨어가 동반 개선돼야 성능을 끌어올릴 수 있다는 전제 하에서다. 모니터 시스템은 25밀리초(㎳)마다 한 번씩 알고리즘을 가동시키고 관찰한다. 25㎳는 컴퓨터 칩이 5000만개의 작업을 수행해내는 시간이다.

모니터 시스템은 각 코어가 데이터에 접근하는 과정을 추적해 얼마나 많은 캐시 영역을 필요로 하는지 계산한다. 이후 CDCS 알고리즘이 이를 읽어들여 반영할 수 있도록 하게 했다. 모니터 시스템은 칩에서 불과 1%정도밖에 차지하지 않는다.

한편 이 논문은 국제전기전자기술자협회(IEEE)의 고성능 컴퓨터 아키텍처 심포지움에서 최고 논문(best paper) 목록에 등재됐다.

김주연기자 pillar@etnews.com