이 글을 작성하게 된 계기로 매일 어떤 맥을 살까 알아보다가, Costco에서 교육할인보다도 더 싸게 팔길래 m1 맥미니를 구입해서 사용하고 있다. 예전 같았으면 무조건 고성능 CPU에 많은 램을 달아서 썼겠지만, 그렇게 여러 대의 컴퓨터를 써오면서 내가 집에서 쓰는 컴퓨터는 더 이상 그런 성능이 필요없다는 걸 깨달았다. 한때는 게임을 하기 위해 GTX 1070에 라이젠5, 그리고 램 32기가를 구입해서 게임을 하곤했으나, 점점 전기세가 부담이 되면서 데스크탑으로 게임을 돌리는 걸 주저하기 시작했으며 새로 출시한 GTX 3070의 소비자 가격 구입이 사실상 불가능해졌으며, 또한 상대적으로 무소음에 발열도 거의 없고 전기도 압도적으로 덜 쓰는 엑스박스 시리즈 S/X를 주로 쓰다보니 더 이상 게임을 위한 데스크탑이 필요없어졌다. 결국 내가 컴퓨터로 하는 일이라곤 웹브라우저, 문서 정리, 음악 듣기, 영화 감상, 프로그래밍 등 고성능 컴퓨팅 파워가 필요없는 업무가 대부분이라는 걸 깨닫았고, 나에게 필요한 건 저전력의 m1칩이 달린 맥북 에어 정도만 있으면 되겠다는 판단이 들었다. 그래서 맥북 에어를 구입하려다가, 이미 모니터도 큰 게 여럿 있는데 굳이 배터리 관리 때문에 골치아플 에어를 사기보단 차라리 더 나은 성능에 더 저렴한 가격의 맥미니를 사서 써보자 라고 생각하게 됐다.

m1 맥 구입 전부터 m1 맥에 대해 많은 영상과 글을 보아왔다. 2018년도부터 맥 사용을 그만두고 윈도우 10과 리눅스만 써왔으므로 어떤 부분들이 바뀌고 개선됐는지 모르는 게 많은데다 m1의 경우 아키텍쳐가 다르니 알아둘 필요가 있었다. 이미 수많은 블로그나 유튜브 영상 등에서 언급한 내용은, 메모리는 다소 적지만 스왑의 성능이 엄청나서 메모리가 적더라도 크게 지장이 없다는 내용이 가장 눈에 띄였다. 기존에 쓰던 윈도우 10 데스크탑엔 32기가 램이 달려있어서 메모리는 아예 신경쓰지 않고 써왔는데, 이번 m1 맥은 램이 8기가 밖에 안되더라도 16기가랑 아무런 차이를 못느꼈다는 반응이 대다수여서 나도 역시 8기가로 주문했고, 제품을 받아서 한창 사용할 때도 램은 별로 신경쓰지 않고 사용했다.

예전에 맥을 써왔던 환경을 다시 복원하고 여러가지 초기 세팅을 하는 과정 중에 Apache Directory Studio가 제대로 작동하지 않아서 골치가 아픈 와중에, Eclipse는 제대로 작동하는 것을 보고 뭔가 이상하다 싶었다. Apache Directory Studio는 아파치 재단에서 Eclipse를 기반으로 만든 LDAP Browser인데, Eclipse는 자바로 만들어진 프로그램이고, Apache Directory Studio 역시 당연하지만 JDK나 JRE가 설치되어있어야 작동한다. 그런데, Eclipse는 작동하는데 Eclipse 기반으로 만들어진 Apache Directory Studio는 자바 관련된 에러를 내뿜으면서 작동이 안되니, 그렇다면 Eclipse에서 Apache Directory Studio를 띄울 수 있지않을까 싶어 구글링을 해봤고, 역시나 Apache Directory Studio를 마치 Eclipse의 플러그인으로 실행할 수 있었다.

그렇게 쓰면서 Apache Directory Studio를 열어놓고 작업하게 됐는데, 문득 Eclipse가 무거운 프로그램일텐데 구글 크롬까지 띄워놓은데다 드랍박스, 넥스트 클라우드, 구글 드라이브, 카카오톡, 디스코드, 슬랙 등 수많은 프로그램을 항상 띄워놓고 쓰는 내 작업환경에서 8기가의 램이 충분하지 않을 거라는 생각이 갑자기 들었다. 더군다나 m1이라는 칩은 ARM, 즉 다시 말해 RISC 계열의 칩셋이니 분명 바이너리의 크기가 더 클테고, 명령어셋의 갯수가 적은만큼 분명 메모리 소모도 더 클텐데, 8기가로 충분할 리가 없다는 생각에 Activity Monitor를 열어서 각 앱들의 메모리 사용량을 확인해봤다.

메모리 사용량은 상상 이상이었다. 일단 사용 중인 스왑메모리는 대략 2.5기가 정도였으며, 사실상 여유 메모리라고 할 수 있는 캐싱된 메모리는 1기가에 불과했다. 구글 메일 계정 2개, ircCloud, 구글 검색창 이렇게 총 4개의 탭을 띄운 구글 크롬의 메모리 사용량은 무려 3기가를 넘었으며 디스코드가 1.5기가, 드랍박스는 0.5기가, 구글 드라이브 1기가, 백그라운드로 실행 중인 데본씽크도 역시 0.5기가 등 사용하지 않더라도 평상시에 띄워놓는 프로그램들이 사용하는 메모리의 양은 내 생각보다 훨씬 컸다. 구글 크롬이야 원래 태생적으로 메모리를 많이 잡아먹는 웹브라우저, 즉 다시 말하자면 메모리를 최대한 활용하여 최대한 빠른 속도를 내는 것을 목표로 하는 웹브라우저이므로 메모리를 많이 쓰는 건 원래도 알고있었지만, 그렇다고 지메일 계정 탭 하나가 메모리를 600메가나 사용할 줄은 전혀 몰랐던 것이다. 구글링해서 알아본 바 맥에서는 오페라와 사파리가 그나마 메모리를 가장 적게 먹는데, 오페라는 여러가지 플러그인 문제로 인해 사파리를 선택했다. 사파리의 경우 크롬의 메모리 사용량에 비해 절반 밖에 되지 않았다. 크롬을 끄고 기본 웹브라우저를 사파리로 변경한 뒤 북마크 등을 모두 사파리로 옮겨와서 사용했음에도 불구하고 지메일 탭 하나의 메모리 사용량은 500메가나 됐다.

이건 지메일의 웹 인터페이스 자체의 문제라 생각하여, 그렇다면 메일 클라이언트를 사용하면 해결되지 않을까 싶어서 맥에서 널리 쓰이기로 유명한 Spark라는 메일 클라이언트를 앱스토어에서 설치해서 사용해봤다. 주로 사용하는 지메일 계정 2개를 모두 연결시켰는데, 램 사용량이 300메가 밖에 되지 않아서 웹브라우저로 계정 2개를 열어두는 것보다 압도적으로 적은 램을 사용하니, 바로 Spark를 메일 클라이언트로 사용을 시작했다.

Discord의 경우도 메모리 사용량이 엄청나게 높았는데, 그냥 채팅만 하는 프로그램에 메모리를 1.5기가나 줘야한다는 게 컴퓨터의 성능을 너무 낭비하는 것 같았다. 구글링을 해보니 디스코드는 예전에 메모리 누수 문제가 있었는데, 그게 해결이 되지않았거나 아니면 로제타2를 통한 실행에서 뭔가 여전히 메모리 관리 문제가 있는 게 아닌가 싶었다. 그래서 디스코드는 웹브라우저에서 띄워놓기로 했고, 평소에는 잘 쓰지않는 구글 드라이브와 드랍박스는 종료시켰으며 데본씽크 또한 쓸 때만 실행하는 걸로 해서 백그라운드에서 돌아가던 걸 종료시켰다.

그리하여 결론은 스왑 사용량이 2.5기가에서 500메가로 줄어들었으며 SSD 수명에 많은 도움을 줄 것이라고 생각한다. 메모리 클리너라던가 하는 프로그램을 쓰는 것이 낫지않을까 하는 사람들이 있지만, 사실 그런 프로그램들이 하는 역할이 캐싱된 메모리를 삭제한다거나 하는 식으로 작동하는데 그건 운영체제에 나쁜 결과를 가져오기 때문에 좋은 방법이 안된다. 캐시 메모리라는게, 사용자가 임의로 삭제하더라도 결국은 운영체제의 동작으로 인해 다시 캐싱이 돌아가고 메모리 압축작업이 다시 돌아갈텐데, 그걸 건드려서 운영체제에 부하를 주는 것보단 그냥 알아서 잘 조율하게 두는 것이 성능상 더 낫다.

그럼에도 불구하고 부족한 램으로 인해 보이는 이상한 현상들이 종종 생기는데, 예를 들면 줌 미팅 중 카메라가 자꾸만 꺼진다거나, 사파리로 웹서핑 중 다른 탭에서 열기를 눌렀는데 안열리길래 계속 눌러도 안열리는데 왜그러지? 싶어서 이것저것 보는데 그동안 눌렀었던 탭 수십개가 갑자기 한꺼번에 열린다거나, 유튜브 영상을 보고있는데 갑자기 영상이 리프레쉬 된다거나 하는 증상이 보였다. 유튜브 뿐만 아니라 다른 어플리케이션에서도 리소스 부족으로 인한 리프레쉬가 종종 목격되는 게 역시나 8GB 램으로 지금까지 쓰던 것들 그대로 쓰려는 건 좀 무리가 있지않나 싶은 생각이 들었다. 유튜버들의 리뷰와 다른 게, 유튜버들의 리뷰는 대부분 영상 편집 프로그램을 사용하면서 겪는 일들을 중점으로 얘기했는데, 개인적인 의견으로는 영상 편집 중에는 아무래도 하나 혹은 몇 개의 프로그램만 중점적으로 쓸테니 아무래도 백그라운드에서 돌아가는 프로그램들의 램사용부분을 압축해서 관리할 수 있겠지만, 나처럼 여러 프로그램을 계속 띄워놓고 수시로 계속 보는 상황에서라면 메모리 관리가 어렵지 않나 싶었다. iStat Menus에서도 메모리 양보단 메모리 부하 (Memory Pressure)를 놓고 보는데, 평소 늘 쓰는 프로그램들을 띄워놓은 상태에서 유튜브 하나만 더 열면 Pressure Level이 바로 바뀌는 걸로 봐서 확실히 8기가는 부족한 듯 싶다.

아무래도 시스템 어드민이라는 직업상 CPU 사용률, 메모리 점유율 등에 좀 민감한 편이고, 서버 관리라는 부분에서 전통적인 상식으로 놓고보자면 사실 스왑이 돌아가는 상황 자체가 좋지않은데, 그것도 수백 메가를 넘어서서 기가급 용량으로 스왑이 돌아간다면 관리 중인 서버의 경우 무슨 일이 일어나는지 상황을 확인해봐야하는 사태일 정도다. 물론 하드웨어 자원의 양과 종류가 다른만큼 같은 개념을 대입시키긴 무리가 있지만, 직업병인지 램 사용 CPU 사용에 늘 신경이 쓰여서 항상 iStat Menus 같은 모니터링 프로그램을 띄워놓고 쓰는 내 입장에서 구글 크롬 3기가, 디스코드 1.5기가는 좀 선을 넘지 않았나 싶었다.

m1 맥의 칩셋이 RISC 계열이므로 아무래도 메모리 사용량은 좀 더 많긴 하겠지만, 압도적인 성능의 SSD에서 나오는 스와핑 속도에다, 램만 16기가를 장착했으면 어지간한 프로그램들은 다 띄워놓고 써도 될 것 같다는 생각이 들었다. 3년 후에는 좀 더 나은 성능의 맥미니를 추가로 구입할 계획인데, 그때 m1 맥 미니는 꼭 16기가로 선택해서 메모리만큼은 조금은 더 쾌적한 환경에서 써야겠다.