애플이 M1칩과 MacOS 빅서가 탑재된 맥북 에어와 맥북 프로를 시장에 선보인지 시간이 꽤 지났다.
벤치마크를 한 결과 인텔의 하이엔드 모바일 프로세서인 i9-9980hk같은 프로세서와 비슷비슷한 성능을 보여주는데 전기도 적게 먹고 발열도 거의 없다시피 하다. 그런데 최근에는 ssd 수명 이슈로 시끌시끌하다.
맥루머스같은 애플 커뮤니티에, M1맥 다수와 인텔맥 극소수에게서 불과 몇달만에 SSD 수명의 10-30%를 사용해버리는 상황이 벌어진 것이다.
ssd이슈를 이해하기 위해서는
1. ssd의 동작 원리
2. 현대 컴퓨터 OS가 사용하는 스왑 메모리라는 기능
3. m1맥의 호환성을 해결해주는 로제타2
이 3가지에 대해 알아야한다.
1. SSD의 동작원리
ssd는 플래시 메모리를 이용한 저장장치다.
정보를 저장할 각 Cell마다, 플로팅 게이트라는 곳에 전자를 가두거나 밀어내거나 할 수 있다.
그리고 전자의 유무에 따라 0과 1을 기록할 수 있다.
그런데 플로팅 게이트에 전자를 넣었다가 뺏다가 하는 것(정보 쓰기)에 횟수의 제한이 있고, 이 횟수의 제한이 곧 셀의 수명 제한과 같다.
따라서 지나치게 많이 쓰기를 할 경우 ssd 수명이 빨리 다하게 된다.
2. OS단에서의 메모리 스왑
일반적으로 사람들이 이용하는 컴퓨터의 램 용량은 8GB에서 16GB정도 되는데, 알게모르게 물리적 램 용량을 초과하는 작업을 할 때가 많다.
이럴 때 운영체제는 ssd의 용량 일부를 빌려서 해당 공간에 일부 프로세스를 옮겨놓는다.
그리고 나중에 사용자가 옮겨졌던 일부 프로세스를 필요로하는 작업을 다시 시작할 경우, 재빠르게 SSD에 옮겨놓았던 정보를 다시 램으로 가져온다.
당연히 SSD에 정보를 썼다가 지운 것이므로 SSD의 수명을 깎아먹는다.
하지만 지금까지 SSD의 수명을 위협할 정도로 빈번한 메모리 스왑을 한 적은 없으므로, 사람들은 이 문제를 사실상 없는 문제로 받아들였다.
그런데 애플이 이번에 선보인 맥미니, 맥북에어, 맥북프로에서 이상한 점이 발견되었다.
한 개발자도 m1 맥미니를 사용하면서 해당 내용을 언급한다.
맥이 사용자의 물리적 메모리가 모두 사용되지 않는 상황에서도 상당수의 프로세스를 SSD로 스왑해서 보내버리고 램을 넉넉하게 유지한다는 사실이 드러났다.
그러면 사용자 입장에서는 어떤 일을 하더라도 매우 쾌적한 환경이라고 느끼게 된다.(조금이라도 안쓰는 기미가 있으면 SSD로 보내 스왑해버리고 새로운 프로세스가 들어올 자리를 깔아놓으니까)
그리고 SSD로 보냈던 프로세스를 다시 램으로 불러오는 속도도 극대화해서, 이게 정말 스왑 메모리를 사용하는게 맞는건지 의심이 될 정도로 빠른 속도를 보여준다.
속도를 얻었지만, 사실 SSD 수명을 죽여가면서 쾌적한 환경을 제공하고 있던 것이다.
3. 그놈의 로제타2
사실 SSD의 수명은 하루에 몇백 GB를 읽고 써도 수년에서 수십년간 사용할 수 있을 정도로 크게 향상되어있었기 때문에 애플이 OS를 저렇게 만든 것일 수 있다.
(삼성의 Pro 시리즈는 8000테라의 쓰기 수명을 보장하고, 256기가 860evo 시리즈도 약 200테라의 쓰기 수명을 보장한다.)
그런데 로제타2에서 예상하지 못한 문제가 발생한 것 같다. (혹은 알면서도 억지로 출시한 것일 수도 있다.)
M1칩은 ARM 아키텍쳐를 사용하고 기존의 맥은 x64 아키텍쳐를 사용하고 있었기에 둘이 명령어셋(쉽게 말하면 언어)가 다르다. 기존의 맥에서 사용하던 프로그램들을 M1에서 사용할 수 있게 해주기 위해 애플은 로제타2라는 명령어셋 번역 도구를 만들었다.
응용프로그램 번역기라고 보면 된다.
당연히 네이티브 언어를 사용한 것이 아니기 때문에, 어느정도 성능 면에서 손해를 볼 수 밖에 없다.
하지만 M1맥은 예상과 다르게 로제타로 구동되는 x64기반의 프로그램도 준수한 속도로 구동시켰다.
문돌이라 컴퓨터 속 사정은 제대로 모르지만, 애플이 로제타2로 구동하는 프로그램의 속도도 포기하기 싫어서 스왑 메모리를 적극 사용하도록 OS를 설계했다가 이 일이 발생한 것이라는게 내 예상이다.
실제로 이와 관련된 실험을 한 미국인의 영상이 있다.
M1 Mac SSD Swap Memory Issue - FIXED! (and how to reduce it) - YouTube
영상을 보면 알 수 있지만, 로제타2로 돌려야하는 인텔 기반의 프로그램을 사용중단하니 메모리 스왑을 위한 SSD쓰기 용량이 확 줄어드는 것을 확인할 수 있다.
로제타2로 번역하는 과정에서 발생하는 속도 손실을 미친 용량의 메모리 스왑으로 커버칠 생각을 하다니... 진짜 애플도 정신 나간 기업인 것 같다.
해결책은?
- Universal 앱만 사용하고 Intel 기반의 앱들은 사용하지 않는다.
- Intel 기반의 앱을 반드시 사용해야하는 경우, 사용 후에 Dock에서 해당 앱을 확실하게 ‘종료’시킨다.
- 현재 맥OS 빅서는 컴퓨터를 사용하지 않는 경우나 잠자기 모드를 사용하는 경우에도 자체적으로 많은 용량의 스왑을 하고 있다. 따라서 맥을 꺼도 되는 경우에는 되도록이면 전원을 꺼놓는다.
애플도 알고있나? 알고있다면 왜 이런 짓을 했나?
모를리가 없다. 소프트웨어 업데이트로 쓰기 빈도가 약간 줄었다고 하니, 애플은 이 문제를 소프트웨어 업데이트로 해결하려는 모양이다.
아마 극단적인 메모리 스왑 정책을 통해, 겉보기에는 M1맥 8기가 모델과 16기가 모델의 성능 차이가 없는 것처럼 보이게 만들어서
사람들로 하여금 깡통 맥북에어를 구매하도록 하고 ARM시장을 활성화시키는 것이 애플의 목표였을 것이다.
SSD의 수명을 희생되겠지만, 그건 찾아보지 않으면 잘 드러나지 않는 문제니까 조용히 묻어갈 수 있다.
그리고 M1맥북 모델로 충분히 ARM시장이 활성화가 되면, 다음세대 맥 라인업에서는 극단적 메모리 스왑 정책을 완화해가면서 하락한 성능을 칩 성능의 향상으로 커버치려는 계획인 것 같다.
아마 SSD이슈와 관련해서 애플이 사과를 하거나 무상수리를 해주지는 않을 것이다. 개인의 사용패턴 문제라고 밀어붙이면 되기 때문이다.
만약 M1 맥북을 살 예정인데, 상당히 무거운 작업을 하는 사용자라면 고민말고 16GB 램 모델을 선택하길 바란다.
성능은 8GB 모델과 똑같을지 몰라도, 기계 속에서 벌어지는 일은 차원이 다르다.
똑같은 성능을 뽑아내는 대신, 8GB모델은 상상 이상으로 심각하게 SSD 수명을 희생시키고 있다.
SSD가 교환 가능하지 않고 온보드 형식으로 납땜되어있다는 점을 고려하면(따라서 SSD 수명이 곧 제품 전체의 수명과 같아졌다는 것을 생각하면), 제품 수명을 생각할 때 16GB모델로 가는 것이 옳다.
물론 정말 라이트한 사용자라면 8GB모델을 사도 되지만. 여유가 된다면 되도록 16GB 모델을 구입하도록 하자.
'TECH' 카테고리의 다른 글
애플의 M1 아이패드 발표에 대한 생각 (0) | 2021.05.06 |
---|---|
리퍼비쉬 로지텍 Mx Keys 일주일 사용기 (0) | 2021.03.29 |
M1 맥북에어 10일 사용기 - 그래서 사? 말아? (0) | 2021.03.22 |
맥 쓴다면 추천하는 필수앱 - (지속 갱신) (0) | 2021.01.24 |
아이맥은 가성비 구린 컴퓨터일까? - 27형 아이맥 (0) | 2021.01.22 |