보통 컴퓨터 처리 성능을 높이려면 하드웨어 자체를 업그레이드하거나 컴퓨터 운영 환경을 개선해야 한다. 캘리포니아대학 리버사이드 연구팀은 스마트폰이나 노트북에 탑재된 기존 하드웨어를 바꾸지 않고 컴퓨터 처리 속도를 2배 높이는 새로운 실행 모델을 고안했다.
현대 컴퓨터 장치는 일반 처리를 수행하는 CPU 외에도 주로 그래픽 처리를 담당하는 GPU나 기계학습용 TPU 등 복수 프로세서나 하드웨어 가속기가 탑재되는 경우가 많아 실질적으로 헤테로지니어스(heterogeneous), 그러니까 이기종 혼재 환경이라고 할 수 있다.
전통적인 프로그래밍 모델은 코드별 영역에서 가장 효율적인 처리 유닛만을 사용하는데 중점을 둔다. 스프레드시트 프로그램을 실행하는 코드와 생성된 AI 텍스트봇을 실행하는 코드는 같은 방식으로 처리되지 않기 때문에 이는 분명히 의미가 있다. 하지만 특정 프로세서로 태스크를 개별 처리하는 방법에선 어떤 처리를 하고 나서 다음 처리 유닛에 정보를 옮길 때 병목이 발생한다고 한다.
따라서 연구팀은 이런 헤테로지니어스 컴퓨팅 강점을 최대한 살리기 위해 복수 프로세서로 동시에 병렬 태스크를 실행하는 실행 모델인 SHMT(simultaneous and heterogenous multithreading)를 고안했다.
SHMT는 기존 모델과는 대조적으로 동일 코드 영역에 대해 이종 타입 처리 유닛을 동시에 사용할 수 있다고 한다. 또 SHMT는 코드 병렬 실행을 용이하기 하기 위한 추상성과 런타임 시스템을 제공한다고 한다.
연구팀은 SHMT를 테스트하기 위해 ARM 코어텍스-A57 CPU, 엔비디아 GPU, 구글 엣지 TPU를 포함한 컴퓨팅 시스템에서 샘플 코드를 실행했다. 그 결과 SHMT에 의해 샘플 코드 실행 속도가 1.96배가 되고 에너지 소비량도 51% 줄일 수 있었다고 한다.
기존 처리 컴포넌트를 동시에 사용하면 하드웨어 비용을 절감할 뿐 아니라 에너지 소비로 인한 이산화탄소 배출량도 줄일 수 있다. 연구팀은 이미 프로세서를 갖고 있다면 새 프로세서를 추가할 필요가 없다고 밝혔다.
덧붙여 SHMT는 아직 아이디어에 가능성이 있을지 어떨지를 테스트하는 단계이며 제안된 시스템을 스마트폰이나 스마트워치에 곧바로 도입할 수 있는 건 아니라고 한다. 관련 내용은 이곳에서 확인할 수 있다.