x86의 64-bit가 이토록 빨리 보급되었어야했나 싶습니다.
2012.11.27 23:06
제가 사용하는 컴퓨터가 다들 좀 년식이 있는 것들입니다.
집에서 사용하는 데스크탑 PC (2007년 구입)
AMD Athlon 64 X2 4200+ 코드네임은 오래되어서 기억이 안나는군요.
노트북 (2006년산)
Intel Core Duo Yonah 2.00GHz
성능 자체는 AMD쪽이 좋은데, 사실 이놈을 오랫동안 써 오면서 항상 문제가 됐던게
'버스속도가 제대로 나오지 않음', 'IDE/SATA 컨트롤러 성능이 거지같음', 'USB 컨트롤러 호환성이 나쁨'
'버스에 로드가 걸리면 시스템 전체가 불안정해짐' 'ACPI 지원이 불안정함' 등등..
기저대역에서 불안한 모습을 자주 목격하고 있습니다.
물론 이놈과 함께 한 시간이 2007년부터 한세월이라, 특성은 잘 파악하고 있어서 잘 쓰고 있긴 합니다.
노트북은 2006년산인데, Intel Core Duo 코드네임 Yonah입니다. 나름 듀얼코어인데,
이놈이 펜티엄3의 모바일판인 베니아스 코어 -> 공정개선한 도선코어 -> 도선을 두개 붙인 요나(Yonah) 코어 요렇게 발전해 왔습니다.
쉽게 말해서 '공정이 개선된 펜티엄3 듀얼코어'입니다.
성능은 제가 쓰기에 무리가 없습니다.
가끔 컴파일 할 때 답답하고, 논문작성시 수식입력이 심하게 느리다는 것을 제외하면 쓰는데 지장은 없습니다.
물론 롤이 안되는 것은 지극히 심각한 단점이나, 업무효율의 극단적 향상을 가져다 주므로 꼭 나쁘기만 한 것은 아닙니다. (?)
아무튼 이놈은 년식이 오래됐는데도 불편함 없이 쓰는 이유가
기저대역 안정성이 AMD와 비교할 수 없을 정도로 탄탄하기 때문입니다.
부하를 아무리 걸어도 절대 시스템이 불안정해지지 않습니다.
뭐 사실 AMD가 그래서 싼 것이고, Intel이 그래서 비싼 것이지만요.
AMD는 제가 유치원 다닐 때도 불안정하다고 소문이 났는데,
이제 슬슬 늙어가는 처지인데도 여전히 불안정한 것을 보면 이놈들은 당최 고칠 생각이 없는 모양입니다.
아무튼 AMD가 역사상 단 한 차례 빛을 본 적이 있었는데,
바로 478소켓 말년과 775소켓 초기의 프레스핫 프레슬러 시절이었습니다. 아주 프렛셔가 팍팍 느껴지지 않습니까?
온갖 집에 보일러를 하나씩 놔 두고, 쓸데없이 파워의 전력량을 400W 이상씩 올려버린 주범이었습니다.
인텔이 넷버스트 아키텍쳐로 한참 삽을 퍼던 시절에
AMD는 어떻게든 시장을 뒤엎어 보고자 노력을 하는데요,
그중 하나가 x86-64 또는 AMD64라 불리우는 64-bit 아키텍처의 도입이었습니다.
아키텍처라는게 하루이틀만에 나올 수도 없는 것이고
더군다나 x86의 다큐멘테이션만 A4용지의 '높이'로 50cm은 될 정도로 아주 복잡할 뿐더러
별 희안한 사이드이펙트까지 다 있습니다.
가령 ZF는 Zero Flag를 의미하는데, Result가 Zero라면 Flag가 Enable됨을 의미합니다.
그런데 Bit Shift Zero의 Result가 Zero라면 Zero Flag는 False입니다. 별 희안한 사이드이펙트가 다 있죠.
상황이 이렇다보니 AMD64에 대응할 수 있는 인텔 고유의 x86-64 아키텍처를 '빠른 시간 내에' 만들 수 없게 되고
여론이 어떻게 불리해 지다 보니 인텔은 어쩔 수 없이 AMD가 만든 AMD64를 채택하게 됩니다.
여기까진 있을법한 이야기인데,
상황이 이렇게 돌아가다보니 재미있는 현상이 나타납니다.
여기저기서 32-bit 프로세서는 4GB이상의 메모리를 사용할 수 없다는 괴소문이 떠돌고
지금도 여기저기서, 소위 자칭 컴퓨터의 신 파코즈에서도 그런 괴소문이 떠돌아다닙니다.
32-bit 프로세서는 사실 1개의 프로세스가 4GB이상의 메모리를 점유할 수 없을 뿐,
시스템 전체가 인식할 수 있는 메모리의 용량은 MMU(Memory Management Unit)에 달려있는데 말이죠.
(사실 이 부분은 '학부수준'의 운영체제론을 들으면 곧바로 알 수 있는 부분인데 소위 인터넷, 특히 파코즈의 '자칭' 전문가들이 저런 소리를 하고 다니는 것을 보면 그들이 얼마나 입만 살아있는지 알 수 있습니다.)
당시에는 MMU가 인식할 수 있는 용량조차 2GB 또는 4GB가 맥시멈이긴 했습니다만,
지금처럼 CPU에 MMU가 내장된게 아니라 그냥 메인보드만 바꿔주면 끝이었습니다.
x86에서 64비트를 네이티브로 지원할 수 있게 되자
MS는 32비트 커널에서 4GB이상을 사용할 수 없도록 제한을 겁니다. (개인사용자용에 한하여, 기업용은 32-bit 커널도 4GB를 초과하는 시스템 메모리를 인식할 수 있음)
소프트웨어 회사에서는 '리거시를 떨쳐내는 것'이 큰 도움이 되기에 MS로선 좋은 기회였죠.
x86-64는 이처럼, 필요에 의해 도입된게 아니라 다분히 AMD의 작업(?)에 의해 도입되었습니다.
문제는 이 AMD64가 아키텍처상으로 별볼일 없는 수준이었다는 점입니다.
레지스터 크기가 32비트에서 64비트로 늘어나면 참 좋은데.. 실제로는 이 장점을 제대로 활용하지 못합니다.
AMD64라는건 인텔을 까기 위해 나온거니까요. 어디서나 그렇지만, 까기 위해 나온 것 중에선 제대로 된게 없습니다.
AMD64는 그저 레지스터 크기가 두 배로 증가했을 뿐, 여기서 얻는 어드벤티지는 없습니다.
더군다나 대부분의 64비트 커널에서는 Integer값은 사실 8-byte(64-bit)가 되어야 하지만
소프트웨어의 호환성을 위해 32비트, 즉 4-byte(32-bit)로 동일하게 정의하고 있습니다.
뿐만 아니라 64비트 프로세서가 32비트 프로세서를 돌리는 일이 비일비재 하기 때문에
레지스터의 크기가 64비트로 증가했다고 해서 항상 그 64비트를 다 쓰는건 아닙니다.
많은 경우엔 32비트 프로세스가 돌아가므로 32비트만 필요할 뿐입니다.
이처럼 64비트 프로세서가 32비트로 동작할 경우 인텔의 64비트 아키텍처인 IA-64는 64비트 레지스터에 32비트 Integer를 담고, 다른 32비트에는 또 다른 값을 담아서 1사이클에 2개의 연산을 할 수 있는 구조를 채택하고 있습니다. 물론 그 효율성은 매우 처참해서, 인텔도 버린 것이 IA-64이긴 합니다.
큰 레지스터 크기를 활용하는 스케줄링이 AMD64에는 없습니다.
64비트 프로세서에서 32비트 어플리케이션을 사용할 때, IA-64에서 사용한 스케줄링 기법을 도입하면 소프트웨어의 변화 없이 성능을 약 1.2배 -_-; 향상시킬 수 있으나, AMD64는 이런게 전혀 없습니다.
결국 사이드이펙트만 수십만가지인 복잡하디 복잡하고 레지스터의 수도 8개로 극도로 제한적인 비효율적인 CPU 아키텍처의 대명사 x86은, 그 오명을 조금이라도 씻을 수 있는 64비트로의 전환에서도 AMD의 작업으로 인해 개판이 되고야 맙니다.
사실 64비트 프로세서는 이제야 조금 필요할 뿐입니다. 아니, 보수적으로 보면 지금도 별 필요 없습니다.
32비트 프로세서도 16GB, 64GB의 램을 인식할 수 있고 모두 사용할 수 있습니다.
다만 1개의 프로세스가 이론상 최대 4GB, 윈도우와 리눅스에서는 최대 3GB까지만 사용할 수 있을 뿐입니다.
그보다 더 많은 메모리를 사용하려면 프로세스를 여러개 만들면 되는 것이고요.
특수한 용도, 이미지 처리나 각종 연구용으로는 따로 64비트 프로세서를 쓰면 됩니다.
아니면 프로세스당 3GB의 메모리를 쓸 수 있으니, 여러 개의 프로세스를 띄우는 방식으로 구현했으면 됐습니다.
어차피 그런 쪽의 수요는 전체에 비하면 매우 적으니 크게 문제가 될 사안도 아니라고 보고요.
오랜 기간동안 64비트로의 이행을 준비해 오고, CPU아키텍처도 더 잘 설계했다면 프로세서의 효율이 높아졌을텐데..
역시 세상 일은 깔끔하게 돌아가는게 몇 없나봅니다.
ps. 지금의 64비트 프로세서도 MMU의 한계로 2^64만큼의 메모리를 다 인식하지는 못합니다.
MMU가 40-bit정도의 어드레스 스페이스를 인식할 수 있다고 하네요.
코멘트 20
-
언이아빠
11.27 23:34
-
에스비
11.27 23:40
공감합니다. 아마 인텔은 요 몇년 전 부터 AMD를 거의 증오하기 시작했을 법도 합니다.
특히 도저히 AMD가 따라잡을 수 없도록 기술격차를 확 늘리는걸 보면 더 그렇습니다.
64-bit ONLY 프로세서로도 사용가능한 상황이 언젠가는 올 것인데,
AMD64로 인해 64-bit only로 가더라도 엉망진창인 명령어 셋은 그대로 유지할 수 밖에 없게 되었고
그 결과로 64비트에서도 ARM과의 경쟁이 버거워진 측면이 크니까요.
만약 당시 AMD가 씨앗 수준의 초급 아키텍처인 AMD64를 들고 언론플레이를 하지 않았다면
인텔 주도로 설계된 64-bit only x86으로 또 다시 시장주도권을 잡았을지도 모르고, 충분히 가능성 있어보이는 얘기인데.. 지금으로선 영... ARM에게 안방마저 내어줄 위기해 처했으니, 인텔도 참 답답할것 같습니다.
-
PointP
11.28 16:20
그럼... 제가 예전에 쓰다 창고에 묵힌 ibook도 다시 빛을 볼수 있을까요? ㅎㅎ
PPC여 영원하라~ ㅎㅎ
-
아기곰
11.28 00:06
음... 컴퓨팅 성능의 효율을 견줄만한 다른 아키텍쳐는 존재하지도 않는 만큼 비효율 적이라기 보단 오래된, 구식 아키텍쳐라는 표현이 보다 적절할 것 같습니다. AMD64 역시 기존의 IA32를 성능저하 없이 완벽하게 호환하면서도 64비트 컴퓨팅을 가능케 한데 의의를 두는게 보다 적절할 것 같습니다. 원래 인텔과 AMD는 AVX 도 그랬듯이 서로 크로스 라이센싱을 해오고 있었으니, 인텔쪽에서 '울며 겨자먹기'로 AMD64를 도입하진 않았을거 같습니다. 64비트 레지스터는 vectorization 등으로 활용되고 있는걸로 압니다.
-
에스비
11.28 00:23
목표치를 낮게 잡으면 AMD64도 괜찮은 아키텍처입니다. 하지만 IA-64로 64-bit 프로세서에서 32-bit를 효율적으로 구동할 수 있는 능력을 보유한 인텔이 x86-64를 정의했다면 그 결과는 적잖케 달라졌을 것으로 보입니다.
만약 인텔이 IA-64의 기술을 x86-64에 도입했다면, IA-64를 만들며 들인 비용이 단순한 '매몰비용'은 아니었을테니 인텔 입장에서도 아쉬울 것이 없었을 것입니다. 반대로 AMD64를 도입함으로써 IA-64는 그저 '실패만 한 초 대형 프로젝트'가 되어버렸습니다.
뿐만 아니라 IA-64의 기술을 접목시켰다면 64-bit 프로세서를 사용해서 32-bit 어플리케이션이 더 빨리 동작하기도 했을테니 사용자에게도 이득이었을 것입니다.
크로스라이센싱 부분도 AMD64를 이후로 사실 이렇다할 거리를 못 찾고 있습니다.
크로스라이센싱 할 정도로 가치있는 무언가를 AMD가 가지고 있지 않습니다.
인텔로선 이제 AMD는 그냥 껍데기만 남은, 시장 과점유를 방지하기 위한 기업밖에 되지 못합니다.
-
아기곰
11.28 00:35
IA-64는 x86을 에뮬레이션을 통해 호환을 지원했습니다만, 그 성능은 형편 없었다고 합니다. ( http://www.theregister.co.uk/2001/01/23/benchmarks_itanic_32bit_emulation/ ) 아이테니엄 서버가 시장에서 버림받고 있는 것은 AMD64와는 아무런 상관이 없지 않을까 싶습니다.
-
에스비
11.28 00:43
IA-64의 접근개념은 64비트 프로세서에서 32비트 인스트럭션 셋 두 개를 동시에 처리하자 입니다.
서로 independent한 명령어셋은 동시에 처리할 수 있기 때문입니다.
IA-64는 x86을 위해 나온 아키텍처라기보다는 완전히 새로운 아키텍처로 보아야 합니다.
그 위에 x86을 올리는 것은 다분히 실험적이며, 성능이 나빠질 것을 각오해야 하는 상황입니다.
IA-64가 올바르게 동작하기 위해서는 컴파일러 단위에서부터 최적화가 들어가야 하는데, 현재의 x86컴파일러는 당연하게도 IA-64를 고려하지 않은 채 작성되었습니다. 물론 현재는 IA-64마저 사라졌으니 더 의미가 없습니다.
IA-64의 기술 자체는 쓸모있지만 지금의 x86에 그대로 적용하기에는 한계가 있다는 의미입니다.
만약 x86-64를 정의할 때 IA-64의 기술을 사용했다면
1. x86-64이 새로이 정의되기 때문에, 상대적으로 컴파일러단의 최적화 문제를 수월하게 해결할 수 있습니다. 따라서 IA-64에 x86을 올리는 것 처럼 처참한 성능이 나지 않을 것입니다.
2. 64비트 프로세서에서 32비트 어플리케이션이 더 빠르게 동작할 수 있습니다.
3. 아무리 못해도 본전치기보다는 조금 낫습니다.
-
purity
11.28 00:44
IA-64의 실제 성능이 그렇게 우수한지는 솔직히 개인적으로는 '갸우뚱' 입니다. 동일 세대의 아이태니움과 x86 서버의 스르풋을 보면 분명 개당은 아이태니엄이 우수한 것 같지만 서버 집단을 놓고 비용대비 스르풋을 보면 IA-64가 현저하게 뒤집니다. 이건 자칫 계란이 먼저냐 닭이 먼저냐 류의 논쟁으로 흐를 수도 있겠습니다만, 아키텍처의 우수성을 떠나 분명 상용 시장에서의 성공에는 도입비, TCO 등의 소요 비용이 고려되어야 하고 IA-64는 해당 시장에서 인상적인 모습을 보이지 못했습니다. 이 책임은 실상 선택하는 소비자, 과장된 언론 들 보다는 그 아키텍처를 전개하였던 당사자인 인텔과 HP에 책임을 물어야 한다고 보구요.아직도 잔재가 남아있어 HP IA-64는 물론 IBM Power 머신들이 아무리 봐도 마케팅 용어로 밖에는 느껴지지 않는 '유닉스 다운사이징'이란 이름으로 공급되고는 있습니다만, 냉정하게 보아서 이러한 기기가 필요한 상황은 굉장히 제한적이며 그 입지는 점차 줄어들고 있습니다(국내의 경우 사업비 10억 이내의 소규모 사업들의 경우 기기에서 마진을 남기기 위해서 오버스펙으로 공급된 경우도 상당히 많습니다). -
에스비
11.28 00:51
IA-64의 설계는 아름답지만, 범용성의 문제에서는 한계가 있는 것이 사실입니다.
이 글에서는 잘 해 봐야 본전치기인 AMD64보다는, 시간을 들여서 조금 더 나은 IA-64기반 x86-64가 도입되었으면 더 좋지 않겠냐였습니다. AMD64는 32비트로 동작할 때 그저 네이티브32비트로 동작할 뿐이지만, IA-64는 CPU단에서 최적화가 한번 더 들어가니까요. 놀고 있는 자원을 최대한 활용하는게 더 좋지 않겠습니까?
IA-64로 완전히 이행하기 위해서는 바이너리 최적화 방법이 변경되어야 하기 때문에 단기간에 큰 성능향상을 바라기는 어렵고, 리거시의 잔재가 희미해질 때 쯤에나 가능하지 않을까 싶습니다. 이미 자리잡은 시장에서의 급격한 성능향상을 가져오기 힘든 아키텍처임에는 반론의 여지가 없습니다.
-
purity
11.28 01:02
도시전설이라는 평도 있고 최적화하면 다르다는 평도 있고는 한 성능 관련 담론입니다만, 적어도 현시점에서는 비록 벤치마크 상이기는 하나 AMD64도 OS와 최적화된 컴파일을 통한다면 성능 차이가 크게는 배까지 발생하고 있으며, 현실 적용에 있어서도 서버 사이드에서는 64비트를 적용하는게 보편화되고 있습니다. 물론 여기에는 인스트럭션의 실행 성능 외에도 풍부한 메모리 어드레싱에 기반한 히트레이트 상승도 주요했을테지만 말입니다. 대략 AMD64도 본전치기보다는 얼마간은 향상된 듯 한 느낌입니다. ㅎㅎ;;;
말씀 잘 들었습니다~ 좋은 글 감사합니다~
-
에스비
11.28 01:10
64비트를 부정하는 것은 아닙니다. 저도 작업용 PC(?)는 64-bit는 물론이고 8-core CPU, 64GB램을 사용하고 있으며 매우 큰 고마움을 느끼고 있습니다. 대규모의 처리에 있어서 64-bit는 큰 폭의 성능향상을 가져다줄 수 있지만, 굳이 x86을 써야하는 경우가 그렇게 많은 것 같지는 않습니다. SPARC같은 추억의(...) 프로세서도 얼마든지 있는데 이젠 x86에 뭍혀서 보이지도 않네요. ㅠㅠ
일반사용자에게마저 64-bit 32-bit로 혼란을 주는게 모양새가 좀 좋지 않아 보였습니다. 저는 일반사용자가 혼란을 최소로 느끼는 방향으로 발전하는게 올바른 공학의 발전방향이라고 생각해서, 기업들이 이런 쪽으로는 혼란을 좀 적게 줬으면 하는 바람입니다.
좋은 말씀 잘 들었습니다. 감사합니다.
-
Azraile
11.28 00:30
아하... 이런 비하인드 스토리가 있었군요. 어쩐지 64bit 시스템이지만 int값이 동일해서 이상하다 싶었는데...
어쩌면 후에 64bit에 대한 재정립이 일어날 수도 있겠네요. 그것보단 128bit가 빠르려나 (...)
-
에스비
11.28 01:15
64-bit 커널에서 4-byte의 integer는 AMD나 Intel의 문제라기보다는 MS의 영향력이 컸습니다.
제가 마지막으로 확인한 시점이 아마 제작년인가 그럴텐데, 리눅스는 64-bit에서의 Integer값이 8-byte가 기본값이었습니다.
지금은 모르겠네요. 그냥.. 알아서 잘 해주겠거니 하고 씁니다.
아무튼 코딩하다보면 Integer값을 4-byte로 가정하고 코딩할 수도 있기 때문에
리거시 포괄의 대명사(이지만 요즘에는 명맥을 잇지 못하는) MS로서는 성능보다는 호환성을 위해 4-byte기본값을 채택했다고 알고 있습니다.
-
purity
11.28 00:32
필요한 상황에서 필요한 운영 체제를 선택하면 될 듯 싶습니다. 딱히 필요 없다면 32비트를 쓰고 필요하다면 64비트를 쓰고 뭐 그런 것이겠지요. 운영체제 비트 타입에 연연하지 않다보니 별 생각이 없습니다. 그런데 윈도우즈의 경우 32비트나 64비트나 OS가 차지하는 리소스 점유가 그 나물에 그 밥인데다 메모리 가격이 원체 싸져서 비트 타입 구분은 현실적으로 의미가 없는 듯 싶습니다.
-
에스비
11.28 01:20
OS X의 커널 구조는 모르지만, 64-bit와 32-bit를 사용자가 웬만해서는 구별할 수 없도록 만든 애플의 방식이 참 좋았습니다. 64-bit 윈도우에서는 드라이버 또한 64-bit를 써야 해서 혼란이 컸는데 - 특히 프린터 스캐너 류 - , 애플은 64-bit 운영체제라도 32-bit 드라이버를 그대로 쓸 수 있게 해 뒀더라구요.
아무튼 스티브잡스 시절의 애플은 사용자가 시스템을 깊숙히 알 필요가 없다는 점에서 대단했습니다.
-
왕초보
11.28 03:52
옛날 8비트 시절에도 16비트 주소를 사용할 수 있었던 것을 생각해보면 32비트 에서 32비트 주소밖에 사용할 수 없다는 것은 개그지요. 6502 수준도 아니라는 얘기라니.
OSX는 BSD니까 GUI이외에는 애플의 공헌이라고는 BSD를 선택했다는 것이겠네요. 스티브잡스는 OS를 잘 선택했다는 점에서 대단했습니다.
-
PointP
11.28 07:02
아웅 32비트 컴퓨터 광고를 보면서 와 미래다 하는 게 엊그제 같은데... ㅜ.ㅜ
이젠 벌써 64비트가 정착을 했으니 ㅜ,.ㅜ
그런데 왜 저는 아직도 32비트를 써서 밥벌이 하는지... 에혀 ㅜ.ㅜ
-
김강욱
11.28 12:52
헐~
무슨 말인지 하나도 모르겠어요...는 아니지만, 이런 디테일함은 대단들 하심다~
-
지금이야 Address Block을 나눠서 메모리를 관리하는 개발방식이 별로 선호되지 않기 때문에, 32bit에서 4GB 이상을 인식할 수 없다는 말이 완전히 틀리다고 볼순 없겠죠.
-
달리나음
11.29 02:53
1. shift 연산의 오퍼랜드를 보시면 알겠지만 power of 2로 처리됩니다. 0로 shift를 한다는 것은 인텔 칩에 존재하지 않습니다.2. 32비트 시절 이전에도 인텔 칩은 MMU가 내장되어 있었습니다.3. 4기가 메모리 문제는 인텔이 설계한 X86 Paging 모델에 의해 결정되는 것입니다.http://en.wikipedia.org/w/index.php?title=File:X86_Paging_4K.svg4. 4기가 이상의 메모리를 사용하려면 PAE (Physical Address Extension)과 PSE (Page Size Extension)이 필요합니다. 512개의 페이지 테이블 밖에 지원할 수 없기 때문에 현실적으로 PAE를 관리하는 일은 쉬운 일이 아닙니다. 페이지 당 할당할 수 있는 크기가 4메가가 최대이기 때문에 부지런히 페이지 테이블을 재조정하면서 비용을 지출해야합니다. 운영체제는 가능한 공평하게 여러 프로세스를 스케쥴링 하는데 이 과정에 상당히 많은 페이지 테이블 재조정이 필요하기 때문에 비효율적입니다.5. LLP64이든 LP64이든 ILP64이든 SILP64이든 포인터는 64비트입니다. 포인트 연산 없는 프로그램은 없고 64비트 레지스터는 부지런히 사용되고 있습니다.6. 32비트 모드를 사용한다고 해서 레지스터가 낭비되는 것은 아닙니다. 최근의 칩은 모두 레지스터 리네이밍을 하고 있고 동일 시점에 같은 명칭을 가진 레지스터가 다른 문맥으로 존재합니다. 즉 남는 레지스터 걱정할 필요는 전혀없습니다.7. 40비트 메모리 사용은 Physical Address에 의한 것으로 MMU의 문제는 아닙니다. x86-64가 도입되었을 때 부터 MMU는 48비트 이상의 Virtual Address를 지원해왔습니다.
그런 면에서 깔끔한 risc스트럭처인 arm으로 주도권이 넘어갈지도 모르죠. 현재까지는 압도적인 우위를 보이고 있는 x86의 성능, 그리고 sw호환성 이 두 가지가 걸림돌이기는 합니다. 하지만 x86의 걸레가 된 명령어 셋, 그리고 arm역시 주류로 떠올랐기 때문에 장기간 성능개선이 이뤄질 것이라는 점, 이 두 가지를 생각하면 arm의 성능이 x86의 그것을 따라잡는 시점이 올 겁니다. sw 문제는 마침 운영체제의 주류가 바뀌고 있는 시점이기 때문에 (그것이 windows 8이 되었건 ios나 안드로이드같은 unix계열이 되었건) 더 빨리 해결될 것으로 보이고요.