본문 바로가기

Papyrus/Dizzy Report

ARM vs Atom

ARM 프로세서를 보면, 필연적으로 기존의 IA 프로세서들을 모바일 기기에서 사용할 수 없을까 하는 생각을 하게 된다. 모바일 환경에서 기존의 x86 소프트웨어를 돌릴 수 있다면 얼마나 근사하겠는가? 그러나, 기존 IA 프로세서들은 소비 전력과 발열량 때문에 모바일 환경에 적합하지 않았다.

인텔도 점차 커지는 모바일 환경에서 ARM 코어의 독주를 그냥 둘 수 없었는지, 엄청난 물건을 내놓았는데, 이와 같은 상상을 현실화한 아톰(Atom)이 그것이다. 모바일 기기에 적합하도록 소비 전력과 발열은 엄청나게 낮아졌으며, 기존의 x86 소프트웨어를 그대로 돌릴 수 있다.

사실, ARM이나 아톰이나 gcc 같은 엄청난 크로스 컴파일러가 존재하기 때문에, 응용 프로그램을 개발하는 문제에 있어서 두 프로세서는 큰 차이가 없다. 다만, 이 프로세서를 어떻게 사용해야 최대의 성능을 낼 수 있느냐 하는 문제에 이르러서는, 각 프로세서의 아키텍쳐에 대한 이해가 있어야 한다. 바로 이점에서, 아톰은 ARM의 위협적인 경쟁자가 된다. x86 아키텍쳐(IA-32라고 하는)를 아는 프로그래머는, 지구상에 널려있다. ARM은 모바일 소프트웨어의 대부분이 이미 ARM 기반으로 만들어져 있기 때문에 당장 아톰이 사용할 수 있는 소프트웨어는 많지 않다고 주장하는데, 이것은 기존의 x86 소프트웨어들을 애써 폄하하는 발언이라 할 수 있다.

즉, 과거와 달리, 아무리 모바일 소프트웨어라고 하더라도, 이미 운영체제조차 수행 성능을 논외로, 최소의 수정을 하면 간단히 다른 플랫폼으로 이동할 수 있으며, 그 정도로 소프트웨어는 이식성이란 주제에 대해 많은 발전을 해왔다. 특히, gcc 같은 크로스 컴파일러의 존재는 이러한 이식성의 정점에 있다고 해도 과언이 아닐 것이다.

분명히, 이미 존재하는 모바일 시장은 ARM이 선점하고 있다. 그러나, 넷북으로 대표되는 차세대 모바일 시장에서도 그러한 ARM의 독주가 계속 될지는 더 이상 장담할 수 없다. ARM 아키텍쳐 역시 널리 알려져 있고, 상당수의 프로그래머가 여기에 익숙하다. 그러나, x86을 아는 프로그래머의 수와 비교하면, 그야말로 초라해진다. 아톰의 강점은 바로 여기에 있다.


아톰이 원하는 시장은, 넷북의 가능성 때문에 기존 노트북 환경에 쓰인 Core 2 패밀리와 종종 비교되는데, 이 시장을 목표로 하는 것이 아니다. 바로, ARM이 했던 것처럼, 극소형의 임베디드 기기에도 사용되기를 원하는 것이며, 그런 목적으로 탄생한 아톰에게 당장 Core 2 패밀리의 성능을 바라는 것은 번지수를 잘못 짚은 것이다. 아톰은 Core 2 패밀리와 성능을 겨루기 위한 물건이 아니다. 다시 말해, 아톰은 앞으로 새롭게 모바일 기기에 필요한 소프트웨어를 개발하는데 필요한 진입 장벽 따위란 이미 없는 것이며, 개발이 그만큼 쉬워진다는 것을 뜻한다.

그러면서도, Core 2 기반의 최하위 프로세서들과 비교해봤을 때 그렇게 성능이 처지는 것이 아니다. 소형의 임베디드 기기에 들어갈 목적의 프로세서이면서! 그리고 x86 소프트웨어와 호환성을 가진다니 엄청난 일 아닌가?


임베디드 소프트웨어 개발자들이여, 아톰이 대세를 장악한다면 조금 더 편한 잠을 잘 수 있을 것이다. 다만 이 과도기가 수습되지 않고 플랫폼의 난립이라는 최악의 상황으로 간다면 지옥이겠지만.