[기고]하이브리드 칩 사용 극대화하기 위한 트래픽 관리
[기고]하이브리드 칩 사용 극대화하기 위한 트래픽 관리
  • 라즈쉬리 차북스워(Rajshree Chabukswar) 인텔 클라이언트 컴퓨팅 그룹 수석
  • 승인 2021.09.27 16:55
  • 댓글 0
이 기사를 공유합니다

인텔 스레드 디렉터(Intel Thread Director)가 컴퓨터 칩의 어떤 코어가 서로 다른 워크로드에 가장 적합한지 결정하는 방법을 소개한다.

인텔의 하드웨어 아키텍처 및 운영체제(OS) 팀과 협력해 개발한 기술에 대해 설명할 때 병원이나 포뮬러원(Formula One) 경주용 자동차를 예로 들겠다.

인텔은 지난 8월 개최한 인텔 아키텍처 데이(Intel Architecture Day)에서 인텔 스레드 디렉터를 공개했다. 인텔 스레드 디렉터는 기본적으로 새로운 유형의 하이브리드 컴퓨터 칩이 올바른 스레드 또는 워크로드를 적합한 유형의 프로세서 코어에 할당하도록 한다.

인텔 스레드 디렉터를 운동선수 부상에 빗대어 보자. 축구 경기에서 한 선수가 다리를 다쳐서 가족의 주치의와 정형외과 의사가 있는 병원에 가면 병원 접수처는 염좌, 골절, 인대 손상에 대해 더 잘 알고 있는 정형외과 전문의에게 환자를 배정해 환자가 최적의 치료를 받도록 보장한다는 것이다.

스레드 디렉터는 병원의 배정 시스템과 같은 방식이다. 어떤 소프트웨어 스레드가 퍼포먼스 코어(Performance Core)의 이점을 가장 많이 활용할 수 있고 어떤 스레드가 에피션트 코어(Efficient Core)에 더 적합한지 파악하기 위해 이러한 모든 하위 수준의 통계를 살펴본다.

인텔 최신 하이브리드 아키텍처는 에피션트 코어와 퍼포먼스 코어를 포함한다. 인텔의 최신 PC용 시스템-온-칩(SoC)인 앨더레이크(Alder Lake)는 이러한 두 종류의 코어와 인텔 스레드 디렉터의 조합을 사용하는 최초의 컴퓨터 칩이 될 것이다.

16개의 스레드가 실행 중인 16개의 코어가 있는 기존 OS의 경우 스레드가 어떤 코어에 성능이 집중되고 있는지 모르며 여기서 스레드 디렉터가 활용될 수 있다.

이는 최적화된 스케줄링 권장사항을 만들 수 있는 기능도 제공한다. 그리고 소프트웨어 계층에서 이런 결정을 내리는 것이 아니며 하드웨어에서 실행 시간 원격 측정을 나노초 단위로 추적하고 소프트웨어가 올바른 결정을 내릴 수 있도록 도와주는 것이다.

현재 일곱 살 쌍둥이의 엄마인 나는 시러큐스(Syracuse)에서 컴퓨터 공학 석사 학위를 받은 후 20년 전 인텔에 입사했다. 처음부터 담당해왔던 역할인 고객용 소프트웨어를 최적화하는 데 관심이 있었다. 인텔 클라이언트 컴퓨팅 그룹 팀은 소프트웨어 파트너와 협력해 공통의 성능, 전력, 사용자 경험에 걸친 병목 현상을 식별하며 미래의 코어 및 플랫폼에 대해 다른 관점을 제시한다.

2019년 나와 인텔 OS 소프트웨어 팀은 스레드 디렉터 검증을 위해 앨더레이크 하드웨어 아키텍처 팀과 함께 이스라엘을 방문했다.

우리 팀은 대상 소프트웨어 최적화를 통해 즉각적인 문제를 해결하지만 하드웨어 팀 및 설계자와 협력해 소프트웨어 분석 결과를 향후 하드웨어 설계 고려사항에 다시 반영하기도 한다.

나와 소프트웨어 팀이 이스라엘의 하드웨어 팀과 협력했던 당시 게임, 스트리밍, 콘텐츠제작, 생산성과 같은 광범위한 공통된 클라이언트 활동을 처리하는 새로운 퍼포먼스 코어와 에피션트 코어를 기반으로 하는 OS가 필요하다는 것을 알고 있었다.

이러한 광범위한 사용법이 새로운 하이브리드 접근 방식의 필요성을 잘 보여준다. 가장 까다로운 애플리케이션 중 많은 부분이 하나 또는 몇 개의 코어에서 잘 실행되지만 새롭게 부상하는 애플리케이션 세트는 가능한 많은 코어를 사용하게 될 것이다. 앨더레이크와 같은 하이브리드 프로세서는 이 두 문제에 대한 해답을 제공한다.

또 소프트웨어 개발자들이 기존 코드를 재활용하지 않고 소프트웨어에서 스케줄링 작업을 처리하는데 드는 오버헤드를 제거하기를 희망했다. 그리고 팀은 하드웨어 솔루션만이 이러한 모든 요구사항을 충족할 수 있다는 것을 빠르게 깨달았다.

이것이 바로 인텔 스레드 디렉터가 탄생한 배경이다.

칩이 명령 혼합, 각 코어의 현재 상태 및 관련 마이크로아키텍처 원격 측정을 세밀한 수준에서 모니터링해 OS를 위한 보다 스마트한 지원을 할 수 있다. OS가 이전에 갖지 못했던 정보와 스케줄 결정 당시 가시성을 활용할 수 있도록 지원한다.

OS는 전통적으로 포그라운드(foreground) 스레드 수가 퍼포먼스 코어 수보다 많을 경우 사용할 수 있는 제한된 정보에 기초해 결정을 내렸을 것이다. 스레드 디렉터는 하드웨어 원격 측정과 함께 새로운 디멘션을 추가해 퍼포먼스 코어로부터 가장 많은 이점을 얻을 수 있는 스레드가 먼저 할당된다.

시중에 나와 있는 하이브리드 차량은 하이브리드 기술을 사용해 연료 효율을 최대로 끌어올려 주행한다. 하이브리드 컴퓨팅의 전통적인 개념은 충전 없이 배터리만으로 가장 오랫동안 컴퓨터를 사용하는 것을 목표로 한다.

포뮬러원 차량은 성능을 극대화하기 위해 하이브리드 기술을 사용한다. 해당 차량의 터보차지 엔진은 한정된 연료를 바탕으로 경기를 완주할 수 있는 충분한 연비와 최고의 속도를 제공한다. 아울러 하이브리드 엔진이 보유한 전력을 바탕으로 기존 엔진으로는 불가능한 가속력을 제공해 코너에서도 쉽게 빠져나올 수 있도록 지원한다.

포뮬라원 자동차는 효율성을 높이기 위해 성능을 줄이지 않는다. 인텔은 하이브리드 설계를 통해 성능과 전력의 균형을 유지하고 있다.

나는 캘리포니아 하프돔(Half Dome), 휘트니 산, 디아블로 산 등을 등반한 경험을 가진 등산 애호가다. 전자기기의 방해 없이 시간을 보내기 위해 남편과 아이들과 함께 등산을 한다. 그러나 이러한 취미로 인해 일에 적용할 수 있는 올바른 태도를 가질 수 있게 됐다.

스레드 디렉터를 보고 하드웨어 아키텍처 및 설계 팀, 머신러닝 및 OS 그룹과 협력해 앨더레이크의 장점을 이끌어 냈을 때 가장 중요했던 것은 바로 ‘과정’이었다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.