애플 M1 칩의 장점과 단점, 소프트웨어와 하드웨어의 정의
소프트웨어에 진심인 사람은 자신만의 하드웨어를 만들어야 한다.
애플이 드디어 최신 맥북 프로(2021)를 공개했어!! 바로 M1 Pro, M1 Pro Max를 탑재했지!~ 그리고 많은 개발자들이 주문하려고 줄 서고 있어! 애플이 이전에 했던 실수를 만회하는게 재미있는데, 유저들이 원하던 이전 기능들을 다시 가져오고 있지!! 예를 들면, 포트 들이 돌아왔고, 터치바가 사라졌고! 키보드를 재설계하고 마치 신규 기능인것 마냥 떠들어대는게 웃기긴해!! >.<
사실 그들이 망쳐놓고, 되돌려놓은 것뿐인데 말이지!! 어쨌든, 그게 중요한건 아니고!! 오늘의 주제는 바로 M1 칩에 대한 것이야. 도대체 애플이 만드는 M1 칩이 무엇이길래! 이렇게나 무지막지하게 빠르고, 현제 노트북 경쟁사들을 몽땅 물리치고 있는지!! 어떻게 최신 M1 칩이 약간 오래되었지만, 더 비싼, 인텔 맥북보다 빠를 수 있는지!!
999달러 M1 맥북 에어에서 Xcode로 코딩하는 것이 4,000불 인텔 맥북 프로에서 작업하는 것 보다 빨라!!~ 참고로, 아직 최신 M1 칩이랑 비교한 것이 아니라는 것!! 이건 작년에 나온 M1칩이랑 비교한거야!!~~
바로, 이것이 오늘의 주제야! 도대체 무슨 짓을 했길래, M1 칩은 이렇게 빠른가?
M1 칩의 마법을 이해하려면, System on a chip(SoC)을 알아야해, 다른 노트북들을 열어보면, 컴퓨터를 구성하는 파트들을 찾을 수 있어, RAM 메모리를 볼수 있고, GPU, 그래픽 카드, 프로세서 같은 것들이 '마더보드'에 연결된 걸 볼 수 있어! '마더보드' 가 이것들을 서로 연결하게끔 해주지.
그러나 M1 칩이 탑재된 노트북을 열어보면? 그렇게 파트를 발견할 수 없을꺼야, M1칩은 SoC(System on a chip)인데, 바로 이 M1 칩 안에 전체 컴퓨터 파트를 다 넣을 수 있어, M1칩 안에 CPU, RAM, 그래픽카드... 등등이 모두 그 안에 들어가 있는거야!! SoC는 새로운 아이디어는 아니야!! iOS/Android 휴대폰들은 SoC로 구동되고 있어!!
애플은 바로 이걸 모바일에서 노트북으로 구현한 것이지!! 사실 이 계획은 오래전부터 진행되어왔어, 애플은 서드파트 다자인에서, 서서히 그들의 커스텀메이드 아키텍쳐로 이동해왔지! 아이패드 1세대 시절 부터 말이야! 그건 2010년인데, 그 때 이미 애플이 인하우스로 제작한 칩을 선보였어, A4 칩이라고 하는데, 현재는 A13 Bionic 인데, 최신 아이폰에 탑재되어 있지, 보시다시피, 이미 자신만의 칩을 만들고 있었다구....
자신만의 칩을 디자인 할 수 있다는 것은, 즉, 하드웨어를! 이는, 소프트웨어의 니즈에 맞춰서 커스터마이징 할 수 있다는 것을 뜻해! M1의 예를 들면, 보통의 컴퓨터에서 볼 수 있는 프로세싱, 그래픽 유닛 외에 특별하게 커스커마이징 되고, 추가된 엔진들이 있어, 이들은 특정한 태스크들을 최정화 하는 데 쓰이지.
예를 들면, 영상편집! M1 칩에는 '미디어 엔진' 이라는 것이 있는데, 이 엔진의 역할은 4K, 8K영상을 인코딩하고, 디코딩하는 것에 최적화 되어있어. 또한 '뉴럴 엔진'은 머신러닝 AI태스크를 최적화하지, 그리고 Secure Enclave 라는 것은, 인증, 암호화, 시큐리티 분야를 최적화 하고 있어.
뿐만 아니라 '이미징 프로세싱 유닛' 이라는 것은, 포토샵과 같은 이미지 프로세싱 앱을 최적화하는데 쓰여, 이와 같은 수많은 엔진과 유닛들은 애플이 생각하기에, 유저에게 필요한 태스크들을 최적화하기 위해 존재해!!
이 모든 것은 니즈에 맞춰서, 직접 칩을 개발할 수 있는 능력이 있기에 가능한 것이지!! M1 칩은 '통합 메모리 아키텍처' 를 사용하는데 이는 더 빠른 스피드와 배터리 향상에 도움을 주지. 보통 컴퓨터에서는 CPU 그리고 GPU는 각각 별개로 구분 되어있어. 따라서 만약 CPU가 GPU의 도움이 필요하다면, CPU는 해당 데이터를 복사해서, GPU에 보내야 하는데, 이는 좀 느리고 비효율적인 프로세스이지.
그러나 애플의 '통합 메모리 아키텍처' 에서는 CPU와 GPU는 같은 메모리를 공유해, 따라서 CPU가 GPU에게서 도움이 필요하면 데이터를 복사해서 주고받고 할 필요가 없는거지!! 왜냐면 둘다 같은걸 공유하니까! 즉, 이와 같은 SoC장점 덕분에 애플은 커스터마이징이 자유롭게 가능하고, 원하는걸 최적화 시키고, 스피드를 향상시키는 아키텍처를 설계할 수 있는 것이지!
다만 유저로서의 단점은 M1 이 탑재된 맥북을 구입하면 원하는대로 맥북 스펙을 수정 및 업그레이드 하는게 불가능해!! 다른 컴퓨터들의 경우 그냥 열어서, 예를 들면, 램 메모리를 원하는데로 교체하거나, 혹은 컴이 느리거나 고성늘 게임을 즐기고 싶다면, 용산에 가서 그래픽카드를 사 넣으면 되지. 일반 컴퓨터에선 그렇게 할 수 있어.
하지만 SoC의 경우, 모든것이 안에 있어. 그래서 정해진 스펙으로 맥을 사면 바꿀 수가 없어, 업그레이드를 할 수는 없지, 또한 인텔과 M1 칩이 다른 것은, M1은 ARM 아키텍처를 사용한다는 것이야. ARM설명은 너무 전문적이여서 다음에 따로 얘기할께!!
보시다시피 M1 칩은 엄청난 최적화가 달린 무시무시한 녀석이야! 영상 편집을 하거나 AI 모델을 짜거나 이미지 프로세싱을 하는 전문가들에게 최적화 되어있지!!
iOS / Android 시뮬레이터로 작업을 하는 개발자들이거나, 유니티, 언리얼 엔진 작업하는 게임 개발자, VR작업, AI 작업하는 개발자, 이러한 개발자들은 최신 M1 Pro, Pro Max.... 맥에게 엄청난 도움을 받을거야. 영상작업, 시뮬레이터, 게임개발도 하니까. 최신 맥을 장만할 듯한데, 만약 당신이 웹사이트를 개발한다면, 이러한 파워가 꼭 필요할지는 모르겠어!
하지만 사람들은 자주 기기 교체를 안하고, 맥은 어마무시하게 비싸기도 하니까, 그냥 이번에 최신으로 장만해서 액스트라 파워를 장착하면 혹시나 만약 필요할 때를 대비해서, 제한이 없게끔 말이야. 혹시 알아? 덕분에 VR 게임도 개발하고, 언리얼 엔진으로 개발하고 부담으로 작용해서 더 멋진 개발자가 될수도 있지.
꽤나 비싸니까. 예산에 맞춰서 해야겠지! M1 칩의 엄청난 성능은 뒤로하고 애플의 계획과 꿈이 착착 이뤄지는 모습이 흥미로워, 오랜 세월동안, 엄청난 돈을 R&D에 투자한 덕분에 마침내 전체 프로덕트 라인을 통제할 수 있게 된거지! 생각해보면, 정말 엄청난거야! 애플은 이제 아이폰 칩 만드는 전문가, 맥 OS 시스템을 만드는 전문가, 노트북을 만드는 하드웨어 전문가, 이 모든 전문가들을 이제 한군데 모을 수 있는거야.
"어떻게 더 빠르게 할 수 있을까?" 혁신이 가능하게 된거지, 정말 대단해!! 인텔은 M1과 경쟁할 수가 없어, 인텔은 다른 모든 컴퓨터에서 작동하는 제너럴 프로세서를 만들어야 하니까, 반면 애플은 하드웨어부터 소프트웨어까지, 그 전체를 통제하고 커스터마이징 한 컴퓨터를 만들게 된거야!!
이건 정말 경쟁하기 힘들겠지!! 하드웨어부터 소프트웨어까지! 전체 커스터마이징 하는건.. 바로 스티브 잡스의 숙원이었어. 아이폰을 처음 출시했을 때 스티브 잡스는 Alan Kay를 인용하며 말했지, "소프트웨어에 진심인 사람은, 자신만의 하드웨어를 만들어야 한다." 그리고 그 결과가 M1 인 것이야!!
애플을 좋아하든 싫어하든, 그들의 제품을 사든 말든, 경쟁과 혁신이 계속되는 것은 좋은 것이고, 특히 개발자들은 전산학의 한계에 도전하는 회사가 있다는 사실에 기뻐해야 할거야! 결국 유저의 입장으로서는 멋진 일이지. 작업을 더 빠르게 할 수 있고, 쉽게 할 수 있지! 따라서 정말 좋은 소식이라고 생각해!