미국 캘리포니아주 San Jose Convention Center에서 개최된 AMD의 개발자 이벤트 APU13에서 AMD는 몇가지 발표를 했습니다. PC 사용자와 직접 관련된 내용은 카베리의 정보와 출시 시기, 그리고 2014년 상반기에 Beema/Mullins을 출시한다는 것입니다.

 

하지만 그런 화려한 발표와 대조적으로 조용히 지나간 것이 있는데 그게 바로 맨틀과 HSA입니다. 모두 이미 발표가 됐던 기술로 이번 APU13에서 처음으로 공개된 것은 아니지만, 이번에 AMD는 앞으로 PC나 스마트폰까지 포함한 클라이언트 기기의 구조를 크게 바꿀만한 제안을 했습니다. 여기선 거기에 대해 정리하고자 합니다.

 

이를 통해서 로리 리드 CEO의 부임 이후 대담하게 변하려 하는 AMD의 새로운 모습을 엿볼 수 있었으며, 그 흐름 속에서 맨틀과 HSA라는 새로운 기술을 앞세워 다른 회사와의 경쟁애 나가려는 AMD의 계획도 확인할 수 있었습니다.

 

 

대담하게 바뀐 AMD의 기본 전략. SoC와 커스텀 칩

 

최근 1~2년 동안 AMD는 크게 바뀌고 있다는 인상을 주고 있습니다. 2003년에 인텔보다 한발 먼저 x86 프로세서를 출시하던 시절처럼 인텔을 기술적으로 앞섰던 그런 분위기가 짙어지고 있다는 것입니다. 그리고 그때 그 시절이 다시 오지 않을까 생각되는 기회가 늘어나고 있습니다. 이런 AMD의 새로운 분위기를 주도하는 건 2012년에 AMD의 사장 겸 CEO에 취임한 로리 리드입니다. AMD에 오기 전 레노버의 사장 겸 COO였던 로리 리드는 AMD에 와서 착실하게 AMD를 바꾸고 있습니다.

 

로리 리드가 제일 먼저 한 일이 AMD를 SoC를 개발하는 제조사로 탈바꿈시켰다는 것입니다. 원래 AMD는 인텔과 경쟁하기 위해 모든 것을 직접 개발하고, 인텔처럼 자사 팹에서 생산해 PC 제조사에 판매하는 등 인텔과 같은 수익 모델을 갖고 있었습니다. 자체 Fab은 로리 리드가 AMD에 부임하기 전에 글로벌 파운드리로 독립했고, AMD는 소유 주식까지 정리했지만 여전히 AMD의 개발 과정은 자체 Fab을 가지고 있을 때와 크게 달라진 것이 없습니다.

 

그러나 현재 이것은 완전히 바뀌었습니다. 로리 리드의 AMD는 CPU나 GPU의 디자인을 IP(지적 소유권)으로 보고, 자사 IP의 장점을 이용하는 한편 타사 IP의 라이센스를 사와 제품을 개발하는, 다른 ARM 반도체 제조사가 수행하는 보통의 SoC 개발 모델로 사업을 바꿨습니다.

 

그 대표적인 사례는 2012년 10월에 발표된 ARM과의 파트너십으로, ARMv8(64비트 ARM 아키텍처)를 채용한 서버용 ARM 프로세서를 개발하겠다고 밝힌 것입니다. 코드네임 시애틀로 알려진 이 제품은 곧 테이프 아웃되어 2014년에는 엔지니어링 샘플이 OEM 회사에 제공될 예정입니다. 서버 CPU 시장은 원래 AMD와 인텔이 시장을 나눠 갖고 있었지만, 지금은 인텔의 독점 시장에 가까워지고 있습니다. AMD는 ARM과 파트너십을 맺어 다른 ARM계 제조사와 연합해서 서버 시장을 탈환하려는 것입니다.

 

그리고 이 SoC 전략은 범용 프로세서 뿐만 아니라 특정 제조사만을 위한 커스텀 제품을 만들기 쉽다는 장점도 있습니다. CPU, GPU 등의 범용 프로세서 시대에는 어쨌건 고성능 제품을 만들면 OEM 제조사가 이를 매입해 나가는 식이었지만, 현재 시장은 달라지고 있습니다.

 

SoC 시대에도 여전히 CPU와 GPU의 성능이 중요하다는 건 말할 게 없지만, 동시에 어느 IP를 SoC에 통합하는지도 중요합니다. 예를 들어 어떤 회사는 CPU만 좋으면 됐고 GPU는 크게 필요하지 않다거나, 다른 회사는 강력한 CPU와 GPU는 물론 오디오 DSP가 필요하다던가 등등. 이렇게 SoC에 통합을 원하는 기능이 OEM 회사마다 달라 이를 일일이 맞춰줘야 합니다.

 

AMD는 그런 고객에 맞춰 커스텀 칩을 설계해 제공하는 전략을 밝혔으며, 이미 그 성과로 소니 PS4와 마이크로소프트 Xbox One이 있다고 밝혔습니다. 모두 APU를 쓰지만 그 구성은 각자 회사에 맞춘 커스텀 칩입니다.

 

AMD가 이런 콘솔 게임기 시장을 확보했다는 건 2가지 큰 의미가 있습니다. 하나는 반도체 판매량이 늘어나고 매출이 증가한다는 것입니다. 이게 수익으로 이어질지는 두고 봐야 하지만, 반도체 사업에서 규모가 중요한 역할을 하는 만큼 이것은 큰 의미가 있습니다. 다른 하나는 콘솔 게임기 플랫폼을 휘어잡아, 콘솔 게임용 타이틀을 개발하는 쪽과 연결이 된다는 것입니다.

 

01.jpg

 

AMD의 사장 겸 CEO 로리 리드

 

02.jpg

 

APU 13에는 소니 컴퓨터 엔터테인먼트의 도미니크 마리송이 기조 강연에 나와-

 

03.jpg

 

AMD APU를 채용한 PS4를 소개했습니다.

 

 

1~2%가 아닌, 놀랄만한 성능 향상을 실현하는 맨틀

 

SoC 전략과 커스텀 칩 전략에서 성공을 거둔 AMD는 결정타를 날렸습니다. 바로 9월에 하와이에서 발표한 새로운 3D 애플리케이션 전용 API인 캔틀입니다. 윈도우와 리눅스 같은 범용 OS에서 현재 3D 애플리케이션 전용 API는 Direct3D(DirectX)나 OpenGL등이 잘 알려져 있는데, 맨틀 역시 이런 API입니다.

 

이러한 API의 역할은 하드웨어와 애플리케이션 소프트웨어 사이에 위치해, 어떤 하드웨어건 같은 애플리케이션을 사용할 수 있도록 중간 매개체가 되는 것입니다. 지금은 AMD, 인텔, NVIDIA 같은 GPU 제조사가 있지만, 애플리케이션 제조사가 다이렉트 3D나 오픈 GL을 지원하도록 애플리케이션을 프로그래밍해 서로 다른 GPU에서 소프트웨어가 동작하도록 설계합니다.

 

그러나 사실 이 Direct3D, OpenGL 같은 기본적인 설계는 1990년대에 나온 것으로, 그 이후 하위 호환성을 어느 정도 확보하면서 기능을 확장해 왔습니다. 하지만 호환성을 확보하기 위해선 계속해서 표준을 추가로 붙이는 식으로 작업할 수밖에 없었고, 그러다보니 최신 하드웨어의 기능을 모두 쓸 수 없게 됐습니다.

 

맨틀은 그런 기존 API의 약점을 보완한 것입니다. APU13에서 맨틀의 치프 아키텍처는 기존 API의 문제점으로 '오버헤드, 적절한 쓰레드 관리가 부족함, 메모리 관리가 어려움, 직접 GPU를 관리하기 어려움'을 지적했습니다. 다이렉트 3D나 오픈GL의 기본적인 설계가 90년대 GPU에 최적하되어 만들어졌고, 이후 그런 구형 표준을 확장하면서 생겨난 제한이라 할 수 있겠습니다.

 

그래서 맨틀은 이를 해결하는 시스템을 도입합니다. 예를 들자면 메모리 관리, 커맨드 실행, 렌더링 등을 소프트웨어 측에서 컨트롤할 수 있습니다. 이에 따라 프로그래머의 자유도가 늘어나고 GPU를 효율적으로 이용할 수 있습니다. 이러한 점이 "현대의 GPU"에 최적화됐다는 맨틀의 핵심입니다. 프로그래머의 자유도가 늘어난다는 건 프로그래머의 부담이 늘어나는 이야기와도 이어지지만, 콘솔 게임기와 공통점이 늘어나 게임을 이식하는 작업은 줄어들어 프로그래머의 작업 시간이 줄어든다는 게 AMD의 주장입니다.

 

그럼 최종 사용자가 얻는 소득은 무엇일까요? 간단하게 말하면 성능 향상입니다. "맨틀은 모두에게 추천하는 것이 아니라, 기존의 APU를 옳겨 놓은 게 싫은 성능 위주의 사용자, GPU를 보다 효율적으로 사용하고 싶은 사람, 다른 플랫폼 사이에 이식을 편리하게 하고 싶은 사람, 그리고 그런 프로그래머를 위한 API가 됩니다"라고 말해, 기본적으로는 맨틀이 Direct3D나 OpenGL을 대체하는 것이 아니라 높은 성능을 추구하거나 콘솔 이식을 중시하는 프로그램을 위해 나오는 것임을 확실히 했습니다.

 

그럼 도대체 성능 향상은 어느 정도일까요? AMD는 이번 APU13에서 이 점에 대해 아무것도 밝히지 않았습니다. 최초의 맨틀 사용 PC 게임인 배틀필드 4를 개발한 DICE의 요한 앤더슨 씨가 등장하는 3일째의 기조 강연에서 발표가 있을 것으로 기대했지만, 거기서도 구체적인 성능 향상 지표나 시연 영상이 없었습니다.

 

다이렉트 3D에서 맨틀로 오면서 어느 정도 성능이 향상되는지를 밝힌 건 이번 컨퍼런스가 아니라 하와이 발표회 후에 배포한 맨틀의 백서였습니다. "맨틀은 1, 2% 정도의 자잘한 성능 향상을 목표로 설계한 것이 아니라 현 시점에서는 발표하지 않지만, 실제 숫자를 보면 놀랄 것"라고 설명한 것이 전부지만, 이건 2자리의 성능 향상도 가능하다는 이야기 아닐까 기대해 봅니다.

 

DICE의 요한 앤더슨 씨는 배틀필드 4의 맨틀 버전이 12월 말에 나올 것이라 밝혔습니다. 만약 여기서 큰 성능 향상이 있다면 GPU의 성능이 한등급 올라가게 되는 것이니 그 파급 효과는 결코 적지 않습니다. 앞으로 NVIDIA와 GPU 경쟁에서 매우 강력한 무기가 될 것입니다.

 

04.jpg

 

배틀필드 4를 개발한 DICE의 요한 앤더슨

 

05.jpg

 

비틀필드 4 맨틀 버전은 12월 말 출시를 목표로 개발이 진행 중

 

06.jpg

 

배틀필드 4의 엔진인 프로스트바이트 3를 쓴 게임은 앞으로도 맨틀을 지원하게 됩니다.

 

07.jpg

 

맨틀은 기존의 API를 옮겨둔 것이 아니라 고성능 보급이 목표

 

08.jpg

 

맨틀을 이용하면 멀티 GPU도 보다 효율적으로 사용 가능. 애플리케이션이 GPU를 할당할 수 있게 됩니다.

 

09.jpg

 

APU와 싱글 그래픽 환경에서는 싱글 그래픽에 렌더링을, APU의 내장 GPU에 물리 연산을 돌리는 등, 기존보다 유연한 처리가 가능합니다.

 

 

HSA의 개발 환경은 내년 1월에 출시. 소프트웨어와 하드웨어 모두.

 

그리고 AMD가 세번째로 준비 중인 무기가 2014년 1월에 정식으로 발표 예정인 카베리에서 지원할 HSA(Heterogeneous System Architecture)입니다.

 

HSA는 한마디로 말해서 CPU, GPU, DSP등의 다양한 종류의 프로세서를 1개의 언어로 정리해 다루도록 하는 프로그래밍 모델입니다. 지금까지 프로그래머가 CPU와 GPU를 동시에 다루는 어플리케이션을 프로그램할 경우에는 CPU를 이용하는 기본 프로그램으로 C++ 등을 공부하고 거기에 더해 CUDA나 OpenCL 등의 GPU를 다루는 프로그래밍 모델을 따로 공부할 필요가 있었습니다. 하지만 HSA는 CPU, GPU, DSP등의 여러 프로세서에 가상 ISA라고 할 수 있는 레이어를 넣고 프로그래머가 HSA를 지원하는 소프트웨어를 통해 자신이 쓰고 싶은 언어를 골라 쉽게 프로그램을 짤 수 있게 됩니다.

 

그런 HSA의 플랫폼이 이제 완성을 보게 된 것입니다. AMD가 1월에 내놓는 카베리는 HSA를 이용하는데 필요한 하드웨어 기능이 내장되어 있으며, 프로그래머가 HSA를 실제 환경에서 테스트할 수 있습니다. AMD는 이번 APU13에서 HSA의 프로그래밍 환경이 내년 초에 정식 버전으로 출시된다는 것을 밝혔고, 프로그래머는 정식 버전의 HSA 개발 환경을 카베리에서 시험해 개발을 이끌어 갈 수 있게 됩니다. 이것은 HSA의 매우 큰 진보입니다.

 

또 이번 APU13에서는 AMD가 업계와 협력하여 HSA의 보급을 추진하고 있는 업계 단체 HSA Foundation에 새로운 멤버가 추가된 것이 밝혀졌습니다. 웹 서비스나 휴대기기용 OS에서 일반적으로 사용하는 프로그래밍 언어 자바의 개발사인 오라클이 협조자의 위치에서 정식 멤버로 올라선 것입니다. 자바가 얼마나 중요한 언어인지는 말할 필요도 없겠지요. AMD는 자바 가상 머신에 HSA의 기능을 구현하는 방안(코드네임 프로젝트 수마트라)을 내놨으며, 앞으로도 이런 대처를 오라클과 공동으로 해 나갈 것이라는 게 이번 발표의 요지입니다.

 

10.jpg

 

카베리 동작 시스템. HSA 개발 환경에서 만든 HSA 애플리케이션이 실행중. 카베리는 내년 1월 14일에 발표할 예정.

 

13.jpg

 

프로젝트 수마트라의 데모. 이름을 세는 데모 프로그램을 실행했을 때 CPU는 45초가 걸리지만 GPU는 10초 안에 끝납니다. 이렇게 자바의 고속화가 가능해진다는 게 특징.

 

14.jpg

 

APU13 이틀째 기조 강연에 등장한 오라클의 자바 플랫폼 담당 부사장.

 

15.jpg

 

오라클이 HSA 재단에 컨트리뷰터로 참가한다는 사실을 밝혔습니다.

 

 

x86-64의 영광을 재현할 것인가? HSA의 움직임

 

이처럼 HSA를 착실하게 진척시키고 있지만 이게 AMD의 뜻대로 잘 될지는 시장 반응에 따라 달라질 것입니다. HSA의 보급에는 긴 시간이 필요하고, 카베리가 나와 HSA의 개발 환경을 갖춘다고 한들 그걸로 끝나는 게 아니라 오히려 지금부터 시작이니까요.

 

PC 업계를 보면 x86 아키텍처의 프로세서에서 AMD의 시장 점유율은 20%도 안됩니다. 그리고 GPU 컴퓨팅 업계의 1위는 NVIDIA의 CUDA입니다. 지금까지 IT 업계에서는 선두 주자가 항상 강력한 제품을 내놓고, 2인자는 오픈 플랫폼을 구축해 연합을 만들어 대항하는 사례가 많았지만 그게 성공하는 경우는 많지 않았습니다.

 

16.jpg

 

HSA 재단에 가입한 제조사는 SoC 관련 회사가 대다수입니다.

 

그럼 AMD의 HSA도 결국 실패로 돌아서게 될까요? 그렇게 볼 수 없습니다. 왜냐하면 HSA 재단은 약자들의 연합이 아니라 강자의 연합이기 때문입니다. 첫날 기조 강연에서 AMD 수석 부사장 겸 글로벌 비즈니스 사업부 사업 본부장인 리사 수는 HSA 재단에 속하는 기업에 전세계 클라이언트 시장의 2/3을 차지하며 인텔과 NVIDIA는 1/3밖에 안 된다고 설명했습니다.

 

그 말은 맞습니다. 지금 스마트폰은 PC의 판매량을 앞질렀으며 앞으로도 이런 상황은 변하지 않을 것입니다. 이러한 스마트폰 시장의 리더는 반도체 제조사의 경우 퀄컴이고, CPU 아키텍처의 경우 ARM이며, GPU 아키텍처의 경우 Imagination Technologies입니다. 그리고 이들 회사는 모두 HSA 재단에 속해 있습니다. 이들 제조사가 제공하는 솔루션을 다 합하면 전세계 시장의 2/3을 커버한다는 건 분명 맞는 말입니다. (모바일 시장에 큰 영향을 주는 애플은 여기에 없지만)

 

그럼 HSA가 차세대 프로그램의 표준이 되려면 어떻게 해야 할까요? 프로그램을 실행하는 OS와, 개발 환경을 제공하는 OS 제조사가 어떤 선택을 하느냐에 따라 달라질 것입니다. 즉 마이크로소프트, 구글, 애플이 HSA를 선택하느냐 외면하느냐에 따라 모든 것이 결정될 것입니다.

 

실제로 AMD는 예전에도 비슷한 성공을 거둔 적이 있습니다.  2000년대 초반에 AMD는 인텔의 64비트 ISA인 IA-64에 맞서 x86을 64비트로 확장한 x86-64(지금의 x64, AMD64, Intel64)을 내세워 인텔과 경쟁했고, 결국 마이크로소프트가 x64를 선택하면서 승부가 갈렸습니다. 2003년 CeBIT에서 마이크로소프트가 윈도우 XP의 x64 버전을 공개했을 때 많은 사람들은 이것으로 시장이 크게 달라질 것이란 충격을 느꼈습니다. 그후 인텔은 x64를 쓰지 않을 수가 없었고(이름을 Intel64으로 붙이긴 했지만), x64를 보급시키며 인텔보다 앞서 나간 AMD는 서버용 프로세서 옵테론으로 인텔 서버 프로세서를 능가했으며 시장 점유율을 확대시켰습니다.

 

HSA에서 그런 일이 벌어진다면 트렌드가 달라질 가능성은 충분히 있습니다. 그리고 HSA 재단은 이미 시장의 리더에 속합니다. 그럼 HSA의 지원을 내세운 AMD는 충분한 인기를 얻을 수 있을 것이며 그것이 바로 AMD가 HSA를 내세우는 이유이기도 합니다. 이것이 과연 이루어 질지는 OS 제조사의 움직임에 따라 달라질 것입니다.

기글하드웨어(http://gigglehd.com/zbxe)에 올라온 모든 뉴스와 정보 글은 다른 곳으로 퍼가실 때 작성자의 허락을 받아야 합니다. 번역한 뉴스와 정보 글을 작성자 동의 없이 무단 전재와 무단 수정하는 행위를 금지합니다.