사용기

애플 M1 칩의 비밀 - Unified Memory, 통합 메모리

드리프트 2020. 12. 1. 22:04
728x170

 

"통합 메모리"가 Apple의 M1 ARM Mac 속도를 높이는 방법

 

 

 

애플은 각각의 부품 컴포넌트가 (메모리 등) 어떻게 랩탑에서 실재하고 다른 컴포넌트와 상호 작용하는지에 대해 재정의 했는데요, 최근에 나온 ARM 아키텍처 칩인 M1 칩을 보면 애플이 "Unified Memory Architecture" (UMA)를 통해 어떻게 극적인 메모리 속도를 올렸는지 알 수 있다.

 

애플 실리콘이 램 (RAM)을 다루는 방법

아직 소식을 듣지 못했다면 Apple은 2020 년 11 월에 새로운 Mac 라인업을 발표했습니다. MacBook Air, MacBook Pro 및 Mac Mini 모델은 M1이라는 Apple이 맞춤 설계 한 ARM 기반 프로세서를 사용하고 있습니다. 이러한 변화는 오랫동안 예상된 것이 었으며 iPhone 및 iPad 용 ARM 기반 프로세서를 설계하는 데 소요된 Apple의 10 년의 정점입니다.

 

M1은 SoC (시스템 온 칩)입니다. 즉, 프로세서 내부에 CPU가 있을 뿐만 아니라 GPU, I/O 컨트롤러, AI 작업을 위한 Apple의 Neural Engine, 그리고 실제 RAM은 동일한 패키지의 일부입니다. 분명히 RAM은 SoC의 기본 부분과 동일한 실리콘에 있지 않습니다. 대신, 위 그림과 같이 옆으로 떨어져 있습니다.

 

SoC에 RAM을 추가하는 것은 새로운 것이 아닙니다. 스마트 폰 SoC에는 RAM이 포함될 수 있으며, RAM 모듈을 옆으로 분리하기로 한 Apple의 결정은 최소한 2018 년부터 회사에서 확인한 것입니다. 아래 사진처럼 iPad Pro 11 용 분해도를 보면 A12X 프로세서와 함께 측면에 배치된 RAM을 볼 수 있습니다.

다른 점은 이러한 접근 방식이 더 많은 작업 부하를 위해 설계된 컴퓨터인 Mac에도 적용된다는 것입니다.

 

기초적인 질문 : 램 (RAM)과 메모리 (Memory)는 무엇인가?

RAM은 Random Access Memory를 나타냅니다. 시스템 메모리의 주요 구성 요소로, 현재 컴퓨터에서 사용 중인 데이터를 위한 임시 저장 공간입니다. 운영 체제를 실행하는 데 필요한 파일부터 현재 편집 중인 스프레드 시트, 열려있는 브라우저 탭의 내용까지 모두 가능합니다.

 

텍스트 파일을 열면 CPU는 이러한 명령과 사용할 프로그램을 수신합니다. 그런 다음 CPU는 이러한 작업에 필요한 모든 데이터를 가져와 필요한 정보를 메모리에 로드합니다. 그런 다음 CPU는 메모리에 있는 항목에 액세스하고 조작하여 파일에 대한 변경 사항을 관리합니다.

 

일반적으로 RAM은 위 그림과 같이 랩톱 또는 데스크톱 마더 보드의 특수 슬롯에 맞는 길고 얇은 스틱 형태로 존재합니다. RAM은 마더 보드에 납땜된 단순한 정사각형 또는 직사각형 모듈 일 수도 있습니다. 어느 쪽이든 PC 및 Mac 용 RAM은 전통적으로 마더 보드에 자체 공간이 있는 개별 구성 요소였습니다.

 

M1 RAM : Discrete 룸메이트

물리적 RAM 모듈은 여전히 별도의 엔티티이지만 프로세서와 동일한 녹색 기판에 있습니다. 이것은 메모리에 대한 더 빠른 액세스를 의미하며 필연적으로 성능을 향상시킵니다. 또한 Apple은 시스템 내에서 메모리가 사용되는 방식을 조정하고 있습니다.

 

애플은 자사의 접근 방식을“통합 메모리 아키텍처”(UMA)라고 부릅니다. 기본 개념은 M1의 RAM이 프로세서의 모든 부분이 액세스 할 수 있는 단일 메모리 풀이라는 것입니다. 첫째, 이는 GPU에 더 많은 시스템 메모리가 필요한 경우 SoC의 다른 부분이 감소하는 동안 사용량을 늘릴 수 있음을 의미합니다. 더 좋은 점은 SoC의 각 부분에 대해 메모리 부분을 분할 한 다음 프로세서의 다른 부분에 대해 두 공간 간에 데이터를 이동할 필요가 없다는 것입니다. 대신 GPU, CPU 및 프로세서의 다른 부분이 동일한 메모리 주소에서 동일한 데이터에 액세스 할 수 있습니다.

 

이것이 왜 중요한지 알아 보려면 비디오 게임이 실행되는 방식에 대해 상상해 보십시오. CPU는 먼저 게임에 대한 모든 명령을 수신 한 다음 GPU에 필요한 데이터를 그래픽 카드로 오프로드합니다. 그런 다음 그래픽 카드는 모든 데이터를 가져와 자체 프로세서 (GPU) 및 내장 RAM 내에서 작동합니다.

 

CPU에 내장 그래픽이 있더라도 GPU는 일반적으로 프로세서와 마찬가지로 자체 메모리 청크를 유지합니다. 둘 다 동일한 데이터에 대해 독립적으로 작업 한 다음 결과를 기억의 영역 사이에서 왕복합니다. 만약 데이터를 앞뒤로 이동해야 하는 불필요한 행위를 없애고, 모든 항목을 동일한 가상 파일 캐비닛에 보관하면 성능이 어떻게 향상되는지 쉽게 알 수 있습니다.

 

예를 들어, Apple이 공식 M1 웹 사이트에서 통합 메모리 아키텍처를 설명하는 방법은 다음과 같습니다.

 

“M1은 통합 메모리 아키텍처 (UMA)를 특징으로 합니다. M1은 고 대역폭, 저 지연 메모리를 사용자 지정 패키지 내의 단일 풀로 통합합니다. 결과적으로 SoC의 모든 기술은 여러 메모리 풀간에 복사하지 않고도 동일한 데이터에 액세스 할 수 있습니다. 이는 성능과 전력 효율성을 크게 향상시킵니다. 비디오 앱은 더 빠릅니다. 게임은 더 풍부하고 상세합니다. 이미지 처리는 번개처럼 빠릅니다. 그리고 전체 시스템이 더 빠르게 반응합니다. "

 

그리고 모든 구성 요소가 동일한 장소에서 동일한 메모리에 액세스 할 수 있는 것은 아닙니다. Apple은 여기에서 고 대역폭 메모리를 사용하고 있습니다. 메모리는 CPU (및 기타 구성 요소)에 더 가깝고 소켓 인터페이스를 통해 마더 보드에 연결된 기존 RAM 칩에 액세스 하는 것보다 액세스가 더 빠릅니다.

 

 

 

 

Apple은 통합 메모리를 시도한 최초의 회사가 아닙니다.

애플이 이 문제에 접근 한 최초의 회사는 아닙니다. 예를 들어 NVIDIA는 약 6 년 전에 개발자에게 통합 메모리라는 하드웨어 및 소프트웨어 솔루션을 제공하기 시작했습니다.

 

NVIDIA의 경우 통합 메모리는 "시스템의 모든 프로세서에서 액세스 할 수 있는" 단일 메모리 위치를 제공합니다. NVIDIA의 세계에서는 CPU와 GPU에 관한 한 동일한 데이터를 위해 동일한 위치로 이동합니다. 그러나 배후에서 시스템은 별도의 CPU와 GPU 메모리 간에 필요한 데이터를 페이징 합니다.

 

우리가 아는 한 Apple은 비하인드 스토리 기술을 사용하여 접근하지 않습니다. 대신 SoC의 각 부분은 메모리의 데이터에 대해 정확히 동일한 위치에 액세스 할 수 있습니다.

 

Apple UMA의 결론은 RAM에 대한 빠른 액세스와 데이터를 다른 주소로 이동하는 데 따른 성능 불이익을 제거하는 공유 메모리 풀로 인한 성능 향상입니다.

 

 

얼마나 많은 RAM이 필요합니까?

Apple의 해결책은 만능이 아닙니다. M1에는 RAM 모듈이 매우 긴밀하게 통합되어 있기 때문에 구매 후 업그레이드할 수 없습니다. 8GB MacBook Air를 선택하면 나중에 해당 기기의 RAM을 늘릴 필요가 없습니다. 공정하게 말하면 RAM 업그레이드는 당분간 MacBook에서 할 수 있는 일이 아닙니다. 이전 Mac Mini가 할 수있는 일이었지만 새로운 M1 버전은 아닙니다.

 

최초의 M1 Mac은 16GB로 최고입니다. 8GB 또는 16GB 메모리를 갖춘 M1 Mac을 얻을 수 있지만 그 이상은 얻을 수 없습니다. 더 이상 RAM 모듈을 슬롯에 꽂는 문제가 아닙니다.

 

그렇다면 얼마나 많은 RAM이 필요합니까? Windows PC에 대해 이야기할 때 일반적인 조언은 8GB가 기본적인 컴퓨팅 작업에 충분하다는 것입니다. 게이머는 이를 최대 16GB까지 늘리는 것이 좋으며, 대형 고해상도 비디오 파일 편집과 같은 작업을 위해 "프로슈머"활동을 다시 두 배로 늘려야 합니다.

 

마찬가지로 M1 Mac의 경우 8GB 기본 모델이면 대부분의 사람들에게 충분합니다. 사실, 일상적인 사용 중 가장 하드 코어 한 것조차 다룰 수 있습니다.

 

정말 중요한 것은 M1 Mac이 여러 프로그램과 여러 브라우저 탭을 한 번에 열어 두는 것을 얼마나 잘 처리하는지입니다. 소프트웨어 최적화는 이러한 종류의 성능을 향상하는 데 큰 도움이 될 수 있으므로 하드웨어를 테스트하는 것만이 아닙니다. 따라서 하드웨어를 실제로 밀어낼 수 있는 벤치 마크에 집중하고 있습니다. 그러나 결국 대부분의 사람들은 새로운 Mac이 "실제"사용을 어떻게 처리하는지 보고 싶어 할 것입니다.

 

9to5 Mac의 한 유저는 8GB RAM이 장착된 M1 MacBook Air로 인상적인 결과를 보여줬습니다. 노트북이 흔들 리기 시작하려면 24 개의 웹 사이트 탭이 있는 하나의 Safari 창, 2160p 비디오를 재생하는 6 개의 Safari 창, 백그라운드에서 실행되는 Spotify가 있어야 했습니다. 그는 또 스크린 샷을 찍었습니다. “이제서야 컴퓨터가 마침내 작동을 멈췄습니다.

 

TechCrunch의 한 유저는 16GB RAM을 탑재 한 M1 MacBook Pro로 한층 더 나아갔습니다. 그는 Safari에서 400 개의 탭을 열었고 (그리고 몇 가지 다른 프로그램을 열었습니다) 아무 문제없이 잘 실행되었습니다. 흥미롭게도 그는 Chrome으로 동일한 실험을 시도했지만 Chrome이 불타 올랐습니다. 하지만 나머지 시스템은 Google 브라우저 문제에도 불구하고 계속해서 잘 작동한다고 말했습니다. 실제로 테스트 중에 그는 노트북이 성능 저하 없이 스왑 공간을 사용하는 것을 발견했습니다.

 

PC에 RAM이 부족하면 사용 가능한 SSD 또는 하드 드라이브 스토리지를 임시 메모리 풀로 분할합니다. 이것은 M1 Mac에서는 일어나지 않지만 다른 기기에서는 눈에 띄는 성능 저하를 일으킵니다.

 

이것은 공식적인 테스트가 아닌 일상적인 경험입니다. 그럼에도 불구하고 그들은 일상적인 사용에 대한 기대치를 대표할 가능성이 높으며 메모리에 대한 조정된 접근 방식을 고려할 때 수백에서 브라우저 탭을 열지 않는 대부분의 사람들에게 8GB RAM이 적합할 것입니다.

 

그러나 대용량 또는 수 기가바이트 이미지나 비디오 파일을 편집하면서 수십 개의 탭을 탐색하고 외부 모니터에서 배경으로 영화를 스트리밍 하는 경우 16GB 모델을 선택하는 것이 더 나은 선택 일 것입니다.

그리드형