본문 바로가기

Papyrus/Dizzy Report

Hotchips 22, More About Bulldozer and Bobcat

이번 핫칩스(Hotchips) 컨퍼런스에서 AMD는 불도저에 대해 보다 자세한 정보를 공개하였다. 단도직입적으로 말해 밥캣의 성공 가능성은 매우 높고, 불도저는 '이게 다야?'라고 할 수 있다.

좀 더 자세하게 이야기하면, 밥캣과 불도저에 적용된 디자인은 인텔의 하이퍼스레딩에 비해 훨씬 멀티스레딩에 친화적이다. 특히, 밥캣이 대상으로 하는 플랫폼은 주로 저전력 소형기기인데, 이와 같은 환경에서는 칩의 성능을 100% 모두 활용하는 코드를 작성하는 것은 부담스럽다. 멀티 코어를 모두 활용하는 코드는 전력을 많이 소모하기 때문이다. 또 이와 같은 환경에서 팔리는 칩은 싱글 코어인 경우가 많다. 인텔이 아톰에 멀티 코어 구성을 적용한 것은 그리 오래된 일은 아니며, 더구나 하이퍼스레딩은 아톰에 어울리는 물건이 아니다.

AMD는 완전히 새롭게 디자인된 '모듈'이라는 개념으로, 이 숙제를 멋지게 풀어냈다. 이 모듈이란 것을 과하게 축약해서 말한다면, NVIDIA의 페르미에 적용된 CUDA 코어와 아키텍처가 상당히 비슷하다. 모듈은 강력한 벡터 연산 기능이 제외되어 있고, 근본적으로 병렬 SIMD 구조가 아니라는 점에서 CUDA 코어와 차이가 있지만(이 부분이 불도저에 대해 조금 실망한 이유다), 인텔의 하이퍼스레딩에 비해 더 작은 다이 면적으로 훨씬 확장성(scalability)이 뛰어나다. 여기까지가 밥캣이 목표로 하는 시장이 요구하는 사항이다. 밥캣은 대단히 매력적이다.




그러나, 불도저가 목표로 하는 시장은 멀티스레딩에 좀 더 친화적이라는 사항만으로는 부족하다. 그 이유는 좀 더 강력한 CPU SIMD 명령을 탑재한 코어의 단순한 확장만으로는 GPU의 병렬 SIMD 명령어 처리 속도를 따라갈 수 없기 때문이다. x86 SIMD 진화 가능성은 아직 좀 더 지켜봐야 하지만, 아직은 인텔의 8코어 네할렘의 H.264 인코딩 성능은 CUDA를 사용한 NVIDIA의 G80에도 미치지 못한다. 이외에도 불도저는 확실히 코어 수 증가가 쉽고, 코어 수 증가에 따라 선형적인 성능 향상이 좋은 구조지만 현실적으로 그에 맞는 소프트웨어는 많지 않다. 즉, 코어 수가 늘어난다고 하더라도 대부분의 소프트웨어는 어디서나 동작할 수 있도록 제한된 코어 수를 기준으로 작성되기 마련이고(스레드풀과 같은), 미친듯이 스레드를 생성하는 소프트웨어가 아니라면 불도저의 장점을 완전히 사용하기 힘들다. 더구나, 불도저의 장점을 완전히 사용하는 소프트웨어라 하더라도 불도저 모듈의 FPU는 단순히 x86 SIMD 명령어인 SSE, AVX를 포함할 뿐이며, AVX가 어느 정도일지는 모르겠지만 GPU와 같은 특화된 병렬 SIMD 처리 성능을 넘어서기 힘들 것이다. 즉, 인텔의 샌디브릿지 자체의 GPU 코어(인텔에서는 이제 GPU보다는 벡터 연산용 병렬 SIMD 코어로 보겠지만)는 대단하지 않겠지만, 좀 더 강력한 2세대 라라비 멀티 코어 조합에 대항할 수 있을지 의문이 든다.






결국, 불도저는 인텔이 네할렘 아키텍처를 통해 이뤄냈던 것을 훨씬 세련되게 풀어낸 것이지만, 차세대 아키텍처라고 하기에는 조금 부족하다. 그러나, 결국 인텔과 AMD가 걸어갈 길은 대충 비슷하게 수렴하는 것 같다. 인텔도 바보가 아닌 이상 하이퍼스레딩 구조를 그대로 가져가지는 않을 것이며, AMD도 단순한 x86 SIMD 명령어 처리 능력의 선형 증가만으로 GPU 기능(= 병렬 벡터 연산 처리 특화)을 대신할 수 있다고 생각하지 않을 것이다. 이것은 셀(Cell Broadband Engine)이 실패했던 접근법이다. 인텔은 이미 샌디브릿지를 통해 실패한 그래픽 코어(GMA)를 붙이는 경험을 쌓고 있고, 시장 투입 적기를 노리며 다듬고 있는 라라비가 있다. 즉, 인텔은 GPU 코어를 새롭게 접목시켜야 하는 AMD보다 약간 앞서 나가고 있다. 그러나, AMD는 불도저 아키텍처를 아주 깨끗하게 뽑아낸 만큼, 발전 가능성은 훨씬 좋다. 문제는 불도저의 첫 출하 시기다.

가장 불쌍한 처지로 전락한 것은 NVIDIA다. 우여곡절 끝에 제대로 된 메인스트림급 페르미를 런칭했지만, 시기가 너무 늦어버려서 애초에 약속했던 기술적인 임팩트가 퇴색해버렸다. 시간의 문제일 뿐이지 인텔, AMD는 모두 CPU에 성공적으로 GPU 기능을 붙일 것이며, 결정적으로 이 아키텍처를 활용하기 위한 프로그래밍 모델은 CUDA에 비해 월등하다. NVIDIA가 살아남을 수 있는 유일한 방법은 압도적인 병렬 벡터 연산 처리 능력으로 3D 그래픽스에서 경쟁사들의 대응 코어들을 눌러버리는 것 뿐이다. 비현실적인 방법으로는 x86 명령어를 실행할 수 있는 CPU를 자체 제작하여 인텔이나 AMD와 마찬가지로 '통합', '퓨전'의 길을 걷는 것인데, 페르미 정도의 칩을 만드는데 겪었던 북새통을 생각하면 회의적이다. 더구나 NVIDIA는 팹리스(Fabless) 업체다. 이와 같은 점을 생각하면, 최후에는 인텔이 NVIDIA를 인수할지도 모를 일이다(물론, 황 회장은 절대로 그렇게 만만한 사람이 아니지만).


여튼, 위의 의견은 소프트웨어 개발자의 입장에서 생각해 본 것이고, 일반 소비자의 입장에서 본다면 불도저는 애슬론의 영광을 재현할만한 충분한 잠재력을, 그것도 훨씬 더 강렬하게 가지고 있다. 일반 소비자들에게 중요한 것은 지금 손에 쥐고 있는 소프트웨어를 얼마나 빠르게 돌릴 수 있느냐와 가격일 뿐이다. 이점에서, 밥캣과 불도저는 즐겁게 기다릴만한 가치가 있을 것이다.