전기및전자공학부 정명수 교수 연구팀: Light PC: Hardware and Software Co-Design for Energy-Efficient Full System Persistence

 우리 학교 전기및전자공학부 정명수 교수 연구팀이 지난달 25일 컴퓨터의 시간을 멈추는 하드웨어 및 소프트웨어 기술, ‘경량화된 비휘발성 컴퓨팅 시스템(이하 라이트PC)’을 세계 최초로 개발했다고 밝혔다. 연구진이 개발한 컴퓨터에서는 시간이 멈춰진 순간 모든 실행 상태와 데이터가 유지된다. 또한, 유지된 모든 정보는 사용자가 원할 때 재부팅 없이 바로 복원되어 작동할 수 있다. 이번 연구 결과는 오는 6월 컴퓨터 구조 분야 학술대회인 이스카(ISCA)에 발표될 예정이다.

라이트PC 하드웨어 프로토타입 | (좌) 라이트PC 프로토타입 커스텀 보드, (우) FPGA 구현 (정명수 교수 제공)
라이트PC 하드웨어 프로토타입 | (좌) 라이트PC 프로토타입 커스텀 보드, (우) FPGA 구현 (정명수 교수 제공)

기존 컴퓨터의 한계

 기존의 컴퓨터는 휘발성 메모리인 D램을 메인 메모리로 사용하기 때문에, 전원 공급이 끊기면 메모리가 저장하고 있는 데이터들을 잃어버린다. 반면, D램보다 적은 전력 소모와 큰 용량을 갖는 비휘발성 메모리는 영구적으로 데이터를 기억할 수 있지만, 복잡한 내부구조로 인한 느린 성능 탓에 메인 메모리로 단독 사용되기에는 어려움이 따랐다. 이상적인 환경 아래 비휘발성 메모리를 메인 메모리로 사용하더라도, 전원이 갑자기 차단될 경우 컴퓨터의 모든 정보를 유지하기는 어렵다. 비휘발성 메모리 내부에 존재하는 휘발성 구성요소와 프로세서 자체가 갖는 임시 저장 공간의 데이터는 전원 공급 없이 지속적으로 보존되지 않기 때문이다.

 이러한 문제를 해결하기 위해 기존의 데이터 센서나 고성능 컴퓨터에서는 프로세서가 가지고 있는 휘발성 데이터들을 주기적으로 비휘발성 메모리나 SSD와 같은 저장장치에 옮기는 체크포인팅 방법을 사용해왔다. 그러나 체크포인팅 방법은 주기적인 데이터 이동에 추가적인 시간과 전력을 소모하기 때문에, 응용 프로그램의 전체적인 실행 시간이 길어진다는 단점을 갖는다. 또한, 전원이 다시 공급되었을 때 시스템 전체를 재부팅 하는 데이터 복구 과정을 거쳐야 한다는 문제가 있다.

 

컴퓨터의 시간을 멈추는 라이트PC

 연구팀은 그간 주목받지 못했던 비휘발성 메모리의 가장 큰 특성인 ‘비휘발성’을 활용하기 위해 비휘발성 컴퓨팅 시스템을 구축하게 되었다. 이번 연구에서 개발한 라이트PC는 비휘발성 메모리를 메인 메모리로 사용하고, 모든 컴퓨터 프로그램의 실행상태와 데이터를 비휘발적으로 유지할 수 있도록 운영체제를 변경하여, 전원이 나가도 직전의 실행 상태를 계속 유지할 수 있도록 했다. 이에 따라 전원이 다시 복구되었을 때에도 긴 재부팅 과정 없이 정전 직전에 실행하던 작업을 이어서 할 수 있다.

 이번 연구의 핵심은 비휘발성 메모리를 메인 메모리로 사용했다는 점이다. 연구팀은 데이터 처리의 병렬성을 극대화하고 메모리 경로를 단순화하는 한편, 데이터 경로 상의 휘발성 구성요소를 최소화하여 비휘발성 메모리가 휘발성 메모리와 유사한 성능을 보이도록 개선했다. 휘발성 구성 요소에 저장된 데이터들은 전원이 나가면 사라진다. 

 프로그램의 실행정보가 휘발성 구성요소에 저장되어 있다면, 해당 정보는 전원 차단 후 파워 서플라이가 전력을 유지할 수 있는 시간(표준 16ms) 내에 비휘발성 메모리에 저장되어야 한다. 이때 휘발성 구성 요소를 최소화하면 정전 시 실행 상태를 유지하기 위해 저장해야 하는 데이터의 양이 줄어든다. 더불어 라이트PC에서는 비휘발성 메모리를 메인 메모리로 사용한 덕분에, 정전이 일어나도 실행정보가 메모리에 보존된다. 이는 정전에 의한 데이터와 시간 손실을 방지할 수 있을 뿐만 아니라, 체크포인팅 방식에서 낭비되는 시간과 에너지를 절약해준다.

 

라이트PC의 응용 방안

 라이트PC는 단순히 갑작스러운 정전에 대비하는 수단만이 아니라, 데이터센서, 모바일, 차량 등 여러 분야에서 응용할 수 있을 것으로 전망된다. 예를 들어, 휴대폰이나 태블릿 같은 모바일 장치의 경우, 사용하지 않을 때는 라이트PC 기술을 활용해 전원을 차단해 배터리 사용 효율을 크게 향상할 수 있을 것으로 예상된다. 더불어 라이트PC는 대용량 메모리 제공과 동시에 저전력 운영을 통해 탄소중립에너지 효율화에 기여할 수 있을 것으로 보인다.

저작권자 © 카이스트신문 무단전재 및 재배포 금지