애플의 새로운 맥북/맥미니에 들어간 M1 칩이 빠른 이유
본문 바로가기
IT/정보

애플의 새로운 맥북/맥미니에 들어간 M1 칩이 빠른 이유

by [아마군] 2020. 12. 8.
반응형

 


Apple M1

 M1 칩이란?

이번에 새로 출시된 애플의 신형 맥북 에어와 맥북 프로 13인치, 맥미니 에 채용 되는 M1 칩은 애플이 자사의 맥용으로 설계된 최초의 ARM 기반 SoC (System on a Chip) 입니다.

 

세계 최대의 파운드리(반도체 위탁생산) 업체인 대만의 TSMC 에서 5 나노미터 공정으로 제조된 세계 최초의 컴퓨터용 칩셋이며 애플에서는 세계에서 가장 빠르며 성능 대비 가장 저전력의 성능을 갖추고 있다고 발표했습니다.

 

실제로 여러 벤치마크 결과를 살펴 보면 기존 인텔 CPU 를 장착한 맥과 IBM PC 들에 비해 어마어마한 고성능, 저전력의 결과를 볼 수 있습니다.

 

인텔은 수십년간 CPU 만 만들어 온 세계 최고의 CPU 기업인데 애플이 한방에 뒤집어 버린 셈이죠.

 

그렇다면 M1 칩은 왜 이렇게 빠른 걸까요?

 


1. M1 칩의 성능은 CPU 하나의 성능 차이에서 나오는게 아닙니다.

 

    - 대형 실리콘 패키지에 여러개의 칩들을 넣은 전체 시스템이 M1 이며 CPU는 그중의 일부일 뿐 입니다.

 

ㅤ - M1 칩은 CPU, GPU, 메모리, IO콘트롤러 등을 묶은 SoC(System on a Chip) 이며 이 조합이 기존 시스템에 비해 월등한 효율을 낼 수 있도록 설계되어 있습니다.


2. 범용 코어 대신, 특정 작업에 특화된 칩들을 사용했습니다.


ㅤ- CPU : OS와 앱들을 실행

 

ㅤ- GPU : 그래픽 작업을 수행

 

ㅤ- ISP(Image Processing Unit) : 이미지 프로세싱 속도 증가

 

ㅤ- DSP(Digital Signal Processor) : CPU보다 더 수학집약적인 기능을 수행. 인코딩 / 디코딩 등

 

ㅤ- NPU(Neural Processing Unit) : 머신러닝, 음성인식, 카메라 처리등을 가속

 

ㅤ- Video Encoder/Decoder : 저전력으로 비디오 파일/포맷 처리

 

ㅤ- Secure Enclave - 암호화, 인증, 보안

 

ㅤ- UMA(Unified Memory Architecture) : CPU, GPU 및 다른 코어들이 빠르게 정보 교환

 

ㅤ기존 CPU / GPU 가 모든 걸 다하던 시스템에 비해 M1에 포함 된 이런 칩들의 조합이 이미지/비디오 편집 및 큰 비디오 인코딩에서 성능이 뛰어난 이유 입니다.



3. Unified Memory Architecture(UMA) 가 특별한 이유.


ㅤ- 이전의 CPU / GPU 통합 칩들은 하나의 칩에 통합 되어 있다해도 실제로는 서로 다른 메모리 영역을 서로 다른 방식으로 사용했기 때문에 같은 데이터라도 복사를 통해 서로간에 전달해야 했고 고성능 GPU 일수록 서로간에 많은 데이터를 복사해야 하다보니 PCIe 같은 버스가 필요해집니다.

 

ㅤ- Unified Memory 는 CPU / GPU를 위해 따로 할당하지 않고 함께 사용하며 Shared Memory 와 다르게 CPU와 GPU가 동시에 접근이 가능하고 위치 정보 교환만으로 접근해서 복사가 필요 없는 점이 M1 칩의 놀라운 속도 향상에 큰 기여를 하고 있습니다.



4. 이렇게 SoC 방식이 좋은데 인텔이나 AMD 는 왜 이렇게 못할까요?


ㅤ- AMD 의 경우 CPU/GPU를 같은 실리콘 다이에 올린 APU형태를 만들기 시작했지만 현실적으로는 그리 낙관적이지 않습니다.

      SoC 는 컴퓨터의 대부분의 기능을 하나의 칩에 올리는 건데 AMD 나 인텔의 비지니스 모델은 컴퓨터를 제조하는게 아니라  CPU 와 GPU, 메모리 정도만 개발해서 메인보드에 장착할 수 있게 범용 부품으로 컴퓨터 제조사나 개인에게 판매하기 때문입니다.

      즉, 컴퓨터 전체 기능을 조합하는 SoC 는 HP 나 델 등의 컴퓨터 제조사에 더 어울리는 모델입니다.

ㅤ- 반대로 HP 나 델 등의 컴퓨터 제조사는 CPU / GPU 등을 설계 및 제조할 능력이 없기 때문에 인텔 / AMD / Nvidia 가 라이센스를 제공해 줘야 가능할 겁니다. 하지만 이들이 라이센스를 따로 제공할 가능성은 제로겠죠.

 

ㅤ- 물론 인텔과 AMD가 완성된 SoC를 판매할수 있지만 델이나 HP 같은 각 PC 제조업체 마다 필요한 스펙이 다른데다(같은 업체 제품이라도 가격대 별로 다양한 바리에이션 필요) 신제품 발매, 판매량 등등 다양한 요인으로 수시로 수십 수백 종류의 SoC 를 설계하고 생산라인을 갖춰야 하기에 가성비가 나오지 않습니다. 게다가 범용 부품이 아니니 OS (MS...) 단 에서의 지원도 문제가 될 수 있습니다.


ㅤ- 하지만 애플에겐 간단한 이슈. 자신이 칩, PC, 운영체제 모든걸 만듭니다. "They control the whole widget"


5. CPU를 빠르게 만드는 가장 근본적인 도전


ㅤ- SoC 구조의 강점도 중요하지만 일단 M1 칩의 빠른 범용 CPU 코어인 Firestorm 이 진짜로 빠릅니다.

 

ㅤ- Firestorm은 ARM 기반 CPU 임에도 대부분의 인텔 / AMD Ryzen 코어를 속도면에서 다 이기는데, 기존 상식으로는 상상할 수 없었던 일입니다.

 

ㅤ- 빠른 CPU를 만드는 전략
ㅤㅤㅤ1. 순차적으로 더 빠르게 명령을 실행
ㅤㅤㅤ2. 여러개의 명령을 병렬로 실행

ㅤㅤ과거 펜티엄 시대에는 그냥 클럭주파수만 높이면 명령이 빨리 실행됐습니다.
ㅤㅤ컴퓨터는 클럭 사이클당 뭔가를 하는데, 이 "뭔가"는 아주 작아서, 명령 하나가 몇개의 클럭 사이클이 필요하기도 합니다.
ㅤㅤ하지만 기술의 현실적 한계로 인해 이제는 더이상 클럭 주파수를 올릴 수 없게 되어 무어의 법칙도 끝나고 이젠 최대한 많은 명령을 병렬로 실행하는 것이 중요해 졌습니다.

   - 병렬실행엔 두가지 접근 방법이 있습니다.
ㅤㅤㅤ1. 더 많은 CPU코어를 넣는 것 (개발자 관점에서는 쓰레드를 더 추가하는 것 )
ㅤㅤㅤㅤ멀티 코어(Multi Core) 의 경우 더 많은 쓰레드를 사용하게 되므로 동시에 여러 작업을 수행할 수 있게 되어 속도가 빨라지지만, 개발자가 이를 활용하기 위한 코드를 작성해야 합니다.
ㅤㅤㅤㅤ서버 및 클라우드에서는 이 모델이 적합하며 그래서 Ampere 같은 회사가 128코어를 가지는 Altra Max 같은 클라우드용 ARM CPU를 제조합니다.

ㅤㅤㅤㅤㅤ반면 애플은 정 반대로 싱글 사용자를 위한 개인용 컴퓨터 기기를 만드는 회사 입니다.
ㅤㅤㅤㅤㅤ데스크탑 소프트웨어들은 대부분 많은 코어를 활용하도록 만들어지지 않기 때문에 예를 들어 게임은 8코어에서는 성능 향상이 되겠지만, 128 코어까지 장착하면 대부분은 활용하지 못하여 낭비에 불과할 뿐입니다.
ㅤㅤㅤㅤㅤ그래서 차라리 더 적은수의 강력한(클럭 주파수가 높은) 코어가 더 효율이 좋습니다.


ㅤㅤㅤ2. 비순차 실행 (Out-of-Order Execution, OoO)

ㅤㅤㅤㅤㅤCPU는 실행할때 여러 덩어리의 명령어들을 한번에 실행하게 되는데, 이 명령어들은 원래 순차적으로 실행하게 작성되어 있습니다.
ㅤㅤㅤㅤㅤ반면 최신 마이크로프로세서들은 비순차 실행(Out-Of-Order Execution) 을 하는데요.
ㅤㅤㅤㅤㅤ이는 여러개의 명령어들을 분석해서, 서로간에 의존성이 있는지를 알아내서 의존성이 없는 명령은 순서에 상관없이 병렬 작업 목록에 바로 던져 넣습니다.
ㅤㅤㅤㅤㅤ이렇게 수백 수천개의 명령을 하나씩 기다리지 않고 순서 상관 없이 바로 시작할 수있는 명령들을 동시에 처리해 나가는 거죠.
ㅤㅤㅤㅤㅤM1의 Firestrom 코어가 엄청난 속도를 내는 이유는 인텔이나 AMD 등등 누구보다도 훨씬 뛰어난 Out-of-Order 실행을 하기 때문입니다. (애플이 진짜 대단한 이유...)


6. AMD 와 Intel 의 Out-of-Order 실행이 M1보다 느린 이유는?


ㅤ- 앞에서 얘기한건 실제로는 ROB(Reorder Buffer) 라고 하며 일반적인 기계어 코드 명령이 아닌 CPU Instruction Set Architecture(ISA) 라는 우리가 x86, ARM, PowerPC 라고 부르는 것들 입니다.

    - CPU 내부에서는 프로그래머가 모르는 완전히 다른 명령어 세트인 micro-operations (마이크로 명령어, micro-ops or μops)로 실행되며, ROB는 이 micro-ops 로 가득 차 있습니다.


ㅤ- ARM/x86 명령어는 공개 API, micro-ops 는 비공개 API라고 생각하면 됩니다.


ㅤ- CISC 는 명령어가 크고 복잡하기 때문에 micro-ops를 꼭 써야하지만, RISC는 쓸지말지 선택할 수 있습니다.
ㅤㅤ(예를 들어, 작은 ARM CPU들은 micro-ops를 안써도 되며 그렇다고 OoO를 못하는 것도 아닙니다)

ㅤ- 이게 왜 중요하냐하면 "빠른 속도는 ROB를 얼마나 빨리, 많이 채울수 있는지"가 중요 합니다.

 

ㅤ- 더 빠르게 채울수록, 더 많은 명령어를 병렬로 실행할수 있는 기회가 많아져서 성능이 향상 됩니다.

 

ㅤ- 기계어 코드들은 디코더에 의해서 micro-ops 로 분할이 됩니다.

ㅤ- 인텔 / AMD 코어는 4개의 디코더가 있는데 애플은 무려 8개의 디코더가 있고, ROB가 3배 더 커서 기본적으로 3배 더 많은 명령어들을 담을 수 있습니다!


7. 그럼 왜 인텔과 AMD는 더 많은 명령어 디코더를 안 넣을까요?


ㅤ- 여기서 RISC의 반격이 시작됩니다. M1 Firestorm 코어에 ARM RISC가 있다는게 중요합니다.

 

ㅤ- x86 명령어의 길이는 1~15바이트이고, RISC는 고정 사이즈 입니다.

    - 모든 명령어의 길이가 같으면 그냥 8개의 다른 디코더에다 잘라서 던지면 그만이지만 x86은 한 명령어의 다음 명령어가 언제 시작하는지를 알 수 없기 때문에(명령어의 길이가 가변이므로) 실제로 각 명령어를 분석하는 수 밖에 없습니다.

ㅤ- 인텔과 AMD는 이 때문에 모든 명령어의 시작마다 디코딩 하는데 이는 잘못된 추측이나 실수를 계속 버려야 한다는 것이므로 더 많은 디코더를 추가하기가 어렵지만, 애플은 반대로 아주 쉽습니다.(고정 사이즈이므로 크기로 자르면 되니까)

ㅤ- 이게 기본적으로 동일한 클럭 주파수에서 AMD / Intel CPU보다 두 배 많은 명령을 처리할수 있게 하는 비결 입니다.


ㅤ- 현실에선 x86은 복잡한 CISC는 잘 안쓰고 RISC 처럼 짧은 명령을 주로 쓰기는 하지만, 저 15바이트짜리 명령어를 처리는 해야하기 때문에 어쩔 수 없는 복잡성이 있습니다.


8. 근데 AMD의 Zen3 코어가 아직 더 빠른데?

    - 벤치마크에서 Zen3 가 Firestorm 보다 빠른건 사실이지만 Zen3는 5Ghz고 Firestorm은 3.2Ghz 입니다.


ㅤ- 애플이 클럭주파수를 높이지 않는건 칩이 뜨거워 지기 때문이며(맥북과 맥미니 같은 저전력, 약한 쿨링 성능 등을 감안) 기본적으로 Zen3 보다 Firestorm 코어가 더 우수합니다.


ㅤ- Zen3는 더 많은 전력을 소비하고 열을 내면서 게임에 사용할수 있지만, "애플은 그걸 하지 않기로 한 것" 이니까요.


ㅤ- 즉, 애플이 더 높은 성능을 원한다면 더 많은 코어를 추가할 수 있고 이를 통해 더 높은 성능을 더 적은 전력으로 낼수 있기에 얼마든지 Zen3 이상의 성능을 낼 수 있을 겁니다.


9. M1 칩으로 인해 변화될 미래

    - M1 칩이 나오면서 기존 CPU 제조의 절대 강자였던 AMD / 인텔이 두가지 부분에서 자신들을 코너에 몰아 넣은 것을 확인할 수있게 되었습니다,
ㅤㅤ1. 이기종 컴퓨팅 및 SoC 설계를 밀어줄 비즈니스 모델이 없음
ㅤㅤ2. 복잡한 x86 CISC 명령어들이 레거시가 되어 OoO 성능을 개선하기 어렵게 만듦


ㅤ- 물론 그렇다고 기존 아키텍쳐의 CPU 시장이 망하진 않을 겁니다. 더 클럭을 올리고 냉각을 더 하고, 더 많은 코어를 사용하면 되니까..

   - 인텔의 경우 이미 코어속도에서 Firestorm에 밀리는데다가 SoC에 넣은 GPU가 후지기 때문에 더욱 안좋은 상황 입니다.


ㅤ- 많은 코어는 당연히 서버에 좋지만, 아마존과 Ampere가 128코어로 공격하고 있습니다. 결국 인텔 / AMD는 양쪽과 다 싸워야 하는 상황 이죠.

ㅤ- (인텔과 AMD 에게는)다행스럽게도 애플은 자신들이 만든 칩을 시장에 판매할리가 없으므로 윈도우 PC 를 사용하려는 유저들은 여전히 기존의 CPU 를 구매해야 합니다.


ㅤ- 예전에는 맥은 운영체제와 디자인 감성은 좋지만 가격 대비 성능이 떨어진다고 했으나 앞으로는 개쩌는 성능 덕에 가성비 얘기는 더이상 안나올 겁니다.

 

   - 당장은 아니라 하더라도 PC사용자들은 서서히 애플의 맥으로 이동하게 될 것이고, 애플은 PC마켓에서 더 많은 비중을 차지 하게 될 겁니다.

 

최신완전판 유튜브 밴스드(Youtube Vanced) 다운로드 및 설치 방법 총정리

 

최신완전판 유튜브 밴스드(Youtube Vanced) 다운로드 및 설치 방법 총정리

이제 우리 생활에 뗄레야 뗄 수 없는 위치를 차지하고 있는 유튜브(Youtube) 의 광고 제거 및 백그라운드 재생 등의 혜택을 위해 월 만원에 가까운 금액을 지불해야 하는 유튜브 프리미엄 서비스를

skuld2000.tistory.com

마나모아(manamoa) 대체 사이트 - 마나토끼 최신 접속주소

 

마나모아(manamoa) 대체 사이트 - 마나토끼 최신 접속주소

일본 만화를 좋아하는 사람들에게 있어서 성지와도 같았던 마나모아(Manamoa). 하지만 저작권법상 불법이기 때문에 정부의 단속으로 매번 도메인 주소를 바꾸며 해외 서버를 통해 운영해왔었는데

skuld2000.tistory.com

갤럭시 버즈 라이브 구매 후 사용 및 노캔 음질 후기 - 에어팟 프로의 강력한 경쟁자!

 

갤럭시 버즈 라이브 구매 후 사용 및 노캔 음질 후기 - 에어팟 프로의 강력한 경쟁자!

어제 새벽, 삼성의 신제품 발표회인 갤럭시 언팩 행사에서 갤럭시노트20, 갤럭시 폴더2, 갤럭시탭S7, 갤럭시워치3 와 함께 삼성의 새로운 블루투스 무선 이어폰 제품인 갤럭시 버즈 라이브(Galaxy Bu

skuld2000.tistory.com

YouTube Vanced 유튜브 밴스드 설치 방법 및 로그인 문제, 오류 해결 방법 총 정리

 

YouTube Vanced 유튜브 밴스드 설치 방법 및 로그인 문제, 오류 해결 방법 총 정리

유튜브 프리미엄을 공짜로 사용할 수 있게 해주는 막강한 기능의 꿀앱 유튜브 밴스드(Youtube Vanced). 제가 처음 사용할 때만 해도 유튜브 밴스드를 아는 사람이 거의 없었는데 이젠 제 주위에도 많

skuld2000.tistory.com

 

반응형

댓글