중고 맥북 프로 2015 리뷰: flutter 빌드 머신 만들기

최근 flutter를 통해 개발한 안드로이드 앱을 앱스토어에 출시하기로 결정했다. 앱스토어용으로 앱을 빌드하려면 원도우 컴퓨터가 아닌 맥 컴퓨터가 반드시 필요하다. 하지만 애플의 사악한 가격 정책 때문에 새로운 제품을 구입하기 부담스러웠다. 그래서 셀잇 같은 중고 거래 사이트를 뒤져보니 맥북 프로 2015 버전이 하자가 있는 제품은 50만원 이하에도 거래되는 것을 확인할 수 있었다.

과연 2020년 8월 시점에 맥북프로 2015에 flutter 앱 개발 환경을 쾌적하게 만들어 낼 수 있을 것인가?!

맥북 프로 2015 버전의 경우 램이 8GB에 i5-5257u 정도의 5세대 인텔 CPU를 쓰는 것을 알 수 있었다. 원도우가 설치된 i5-5257u에서는 사용이 무리가 있겠지만 mac OS는 원도우에 비해 최적화가 잘되어 있다. 또한 WWDC 2020에서 mac OS Big Sur가 맥북 프로 2013까지 지원하는 것을 보면 향후 새로운 OS가 나오더라다 2~3년 정도는 지원을 받을 수 있을 것이라 예상되므로 기본적인 개발 머신으로서 조건은 충족된다. (Big Sur는 WWDC 2020에서 새롭게 공개한 macOS이다. 명칭은 미국 캘리포니아주 센트럴 코스트 지역에 위치한 산맥에서 따왔다)

다음은 Big Sur에서 지원하는 맥 하드웨어의 사양들이다. 최소 하드웨어 조건이 2013년 모델들인 것을 확인할 수 있다.

당신의 Mac에서 MacOS Big Sur을 실행할 수 있는지 확인하세요.
Mac 하드웨어 요구 사양MacBook (2015년 이후 모델)
MacBook Air (2013년 이후 모델)
MacBook Pro (Late 2013 이후 모델)
Mac mini (2014년 이후 모델)
iMac (2014년 이후 모델)
iMac Pro (모든 모델)
Mac Pro (2013년 이후 모델)

이글에서 개발 환경을 테스트해볼 제품은 셀잇에서 판매중인 디스플레이에 빛샘 현상과 코딩 벗겨짐 그리고 다수에 찍힘이 있고 배터리 사이클 613인 35만원짜리 맥북 프로이다.

이정도 사양에서 큰 하자가 없는 제품은 70만원 정도한다. 나의 경우 집에 놓고 빌드용으로만 쓸 예정이고 워낙 막눈이라 텍스트만 출력되면 신경안쓰는 성격이라 디스플레이 하자는 큰 문제가 아니다. 제품 구입 후 일주일 가량 테스트를 해본 결과는 다음과 같았다.


디스크

구인한 제품이 SSD가 128GB인것이 마음에 걸리지만 정식 애플 제품으로 업그레이드를 하려면 비용이 많이 추가되고 비정식 SSD의 경우 호환성 때문에 문제가 생기는 경우도 있다고 한다. 다음은 안드로이드 스튜디오와 flutter sdk, XCode등을 설치한 후의 디스크 용량이다. 70GB 정도의 용량이 남은 것을 확인할 수 있다. 빌드를 위한 디스크 용량으로는 충분한 것을 확인할 수 있다.


CPU/RAM

최신 CPU에서 보여주는 빠릿한 정도의 느낌은 아니지만 안드로이드 스튜디오와 XCode를 이용하여 프로그래밍을 하는데 큰 불편함이 없을 정도의 반응성을 보여준다. 단 평소 사용시에는 문제가 없지만 앱 배포를 위해 최종 빌드할때는 CPU의 절대적인 성능 한계로인해 시간이 많이 소요되고, 백그라운드에서 프로그램을 설치한다던지 해서 CPU와 I/O 작업을 하면 시스템 속도가 전반적으로 느려져서 반응성이 많이 떨어진다. 여러가지 작업을 동시에 하는 것은 무리라는 판단이다.

CPU 성능의 한계 때문에 다음과 같이 프로그램을 설치하는 도중에 CPU로드가 80%에 육박하는 것을 볼 수 있다.

다음은 아이폰 시뮬레이터가 실행중일때의 시스템 사용량이다. 아이폰 시뮬레이터는 원도우에서 안드로이드 에뮬레이터에 비해서 정말 가볍다.(최신 원도우 노트북에서도 안드로이드 에뮬레이터는 사용하기 부담스럽다). 아이폰 시뮬레이터를 실행시켜놓고도 충분히 개발이 가능하다.

다음은 안드로이드스튜디오, XCode, 아이폰 시뮬레이터를 동시에 실행해 놓은 상태에서의 메모리 사용량이다. 다소 스왑 공간이 잡혀있기는 하지만 메모리 압력에 경고 상황은 발생하지 않는다. mac OS에는 메모리 압력이라는 수치를 이용하여 메모리가 부족한지 아닌지를 판단할 수 있는데 녹색을 유지하면 메모리 부족으로 크게 성능 저하가 없는 상태로 봐도 된다고 한다.


배터리

배터리 사이클이 612로 애플 홈페이지를 보면 1000이 되면 수명이 다 되는 것으로 안내하고 있다. WIFI를 계속 이용하면서 CPU로드를 80%이상 계속 걸어주는 작업을 하면 3시간 가량 사용이 가능했다. 하지만 웹브라우징과 안드로이드 스튜디오와 아이폰 에뮬레이터를 이용하는 등의 일반적인 작업에서는 5시간 가까이 버텨주는 것을 확인할 수 있었다. 중고 제품이라 배터리 성능은 기대하지 않았지만 이정도 시간이면 외부에서도 충분히 사용 가능할 것 같다.


결론

mac OS가 원도우에 가볍다고는 하지만 맥북 프로 2015 버전의 CPU가 워낙 구형이라 헛돈 쓰는것이 아닌가 걱정이 들었다. 하지만 최신 하드웨어의 빠릿한 느낌은 아니지만 현 시점에서 쓸만한 수준의 반응성이 꾸준히 유지된다. 일주일 정도 집과 외부에서 프로그램 개발용으로 테스트해본 결과 빌드 머신용도를 넘어서 중간 규모의 앱 프로젝트 정도는 충분히 사용이 가능한 성능을 보여주었다. 하지만 멀티스레드 성능이 부족하므로 쓰지 않는 프로그램은 바로바로 종료 시켜가며 사용하는 것을 추천한다.

원래는 집에서 iOS 앱의 빌드 머신으로만 쓰려고 했는데 성능도 괜찮고 배터리도 생각외로 오래가기 때문에 외부에서 작업 용도로로 종종 사용하게 될 것 같다.

구형 노트북 성능 높이기

태생적으로 노트북은 전력 관리를 위해 CPU의 성능을 최대한 아끼려고 설계되었다. 노트북 브랜드는 해당 노트북이 출시 되었을때의 프로그램들이 최소 전력상태의 CPU 성능에서 불편하지 않을 정도로 타이트하게 튜닝을 하게 된다. 세월이 흐르고 사용하는 프로그램들이 새로운 하드웨어에 맞게 점점 무거워지게 진다. 그래서 출시 당시의 상황에 타이트하게 설정된 구형 노트북은 성능 저하가 발생하기 마련이다.

따라서 구형 노트북 반응성을 기복없이 유지하려면 내 노트북에 출력중인 사용중인 프로그램에 CPU 성능이 집중되도록 최적화 하는 것이 중요하다. 이 글은 이런 관점을 중심으로 최적화 방법을 다루고 있다.

구글드라이브, 원드라이브, 드랍박스 같은 파일 동기화 프로그램 제거

구형 노트북에게 실시간으로 CPU와 I/O를 잡아 먹는 실시간 동기화 프로그램은 체감 성능을 엄청나게 떨어뜨린다. 이런 류의 실시간으로 실행되는 프로그램은 모두 제거한다. 이런 서비스를 쓰고 싶은 경우 RailDrive같이 네트워크 연결로 클라우드 저장소에 접근할 수 있는 프로그램을 활용하자.

클라우드 저장소를 네트워크 드라이브로 연결할 수 있는 RailDrive(https://www.raidrive.com/)

구형 노트북을 쓸 경우 이런 백그라운드에서 일어나는 방식의 프로그램들은 모두 삭제한다.

SSD 하드디스크 교체

구형 노트북에는 디스크 방식의 하드디스크가 장착되어 있는 경우가 많다. 이를 SSD 방식의 데스크로만 교체해도 체감속도는 상승한다. 유명하지 않는 브랜드의 128GB SSD의 경우 3만원 이하의 가격으로 구매할 수 있다.

노트북의 램 슬롯이 남아 있다면 램도 업그레이드 하면 좋은데 구형 노트북의 경우 중고로 구하기도 힘든 경우도 많고 가격이 싼것도 아니다. SSD 구입외의 지출은 추천하지 않는다.

컴퓨터 관리 프로그램 설치

레지스트리 정리, 시작 프로그램 관리, 정그 파일 제거 등을 수행하는 관리 프로그램을 설치해서 컴퓨터 최적화를 수행한다. 시스템의 성능을 잡아먹는 시작 프로그램 등록 이나 서비스 상주형 프로그램 설치시에 알려주는 기능도 있어서 편리하다.

원도우 재설치를 통해 처리하는 방법도 있겠지만 우리는 모두 시간이 없다. 내가 추천하는 프로그램은 Advanced SystemCare 13 Free 버전이다. 왠만한 상용 프로그램의 기능에 맘먹는 기능을 제공하며 노트북에 부담도 적다.

프로그램 다운로드: https://www.iobit.com/en/advancedsystemcarefree.php

사용 방법은 다음과 같다.

  1. 프로그램 설치후 “검사” 버튼을 클릭한다.

2. 검사 결과가 나오면 “수정” 버튼을 클릭하면 최적화를 시작한다.

3. 최적화가 완료되었으면 시작 프로그램을 최소화하는 작업도 한다. 도구상자 > 시작 프로그램 관리자를 선택한다.

시작항목 탭에서 컴퓨터 부팅시에 실행할 프로그램들을 비활성하여 최소하시킨다.

서비스탭에서 백그라운드로 실행되는 프로그램을 비활성화하여 최소화 시킨다.

“고성능” 전원 설정으로 바꾸기

원도우의 전원 설정은 일반적으로 중요하게 생각하지 않는 부분이다. 하지만 저전력 CPU를 사용하는 노트북이라면 이야기가 달라진다.

CPU에 U나 M이 붙는다면 저전력으로 설계되있는 것임

인텔의 저전력 CPU를 사용할 경우 최대한 밧데리 사용량을 줄이기 위해 바쁜 작업을 수행할때만 클럭을 올리는 스피드스텝 기술(터보 부스트)이 적용되어 있다. 하지만 전원 설정 변경을 통해 CPU의 클럭을 최대한 이용하게 만들 수 있다. CPU 클럭을 최대로 이용하면 밧데리 사용량이 많아지고 발열과 소음이 증가하겠지만 웹브라우저 창하나 여는데 힘들어하는 당신의 노트북에게는 선택의 여지가 없다.

제어판 > 시스템 및 보안 > 전원 옵셥 창을 열면 다음과 같이 “균형 조절”, “절전”, “고성능”의 메뉴가 보이는 것을 알 수 있다. 대부분 다음과 같이 “균형 조절”이 체크되어 있을 것이다. 이 옵션을 “고성능”으로 선택한다.

간혹 고성능 메뉴 선택지가 아예 없는 상태인 경우도 있다. 이럴 때는 전원 옵션 왼쪽 메뉴중에 “전원 관리 옵션 만들기”를 클릭한다.

그리고 고성능 메뉴에 체크하고 “다음”버튼을 눌러서 고성능 메뉴 옵션을 추가할 수 있다.

원도우 디펜더 제어

원도우 디펜더는 원도우에 기본 탑재되어 있는 백신 프로그램이다. 다른 백신 프로그램에 비해 성능을 크게 잡아먹는 것은 아니지만 실시간으로 CPU, I/O를 잡아먹어서 컴퓨터를 느려지게 만든다는 점에서는 차이가 없다.

따라서 용량이 큰 데이터를 복사하거나 프로그램을 설치할때는 실시간 감시를 잠시 사용하지 않는 방식으로 운용할 수 있다. 하지만 원도우 디펜더 실시간 감시를 On/Off 하는과정은 여러번의 클릭이 필요해서 괴장히 번거롭다. Defender Control 이라는 프로그램을 이용하면 클릭 1번으로 On/Off가 가능해진다.

다운로드 : https://www.sordum.org/downloads/?st-defender-control

웹서핑 정도만을 이용할 경우 원도우 디펜더를 위와 같이 끄고 사용하는 것도 나쁘지 않지만 보안을 희생하면서 까지 컴퓨터를 사용하는건 그리 권장할 만한 행동은 아니다. 따라서 다음 과정을 통해 원도우 디펜터가 특정 파일이나 폴더를 검사하지 않도록 해서 사용하는 방법을 더 권장한다.

  1. 원도우 설정 > 업데이트 및 보안을 클릭한다.

2. Windwos 보안 메뉴를 클릭한 후 “바이러스 및 위협 방지”를 선택

3. 설정 관리를 클릭한다.

4. 제외 추가 또는 제거를 선택한다.

5. “제외 사항 추가”를 클릭한 후 “폴더” 메뉴를 선택한다. 그리고 바이러스 검사에서 제외할 폴더를 선택한다.

다음과 같이 제외 페이지에 추가한 폴더가 나타나면 제외가 완료된 것이다. 이후 폴더와 해당 폴더의 서브 폴더 모두에 들어 있는 파일을 접근할때는 원도우 디펜드가 검사를 하지 않는다.

특정 폴더 단위가 아니라 특정 프로그램에서 백신의 파일 검사를 제외하고 싶을 수 있다. 이경우 해당 프로세스가 접근하는 파일들에 대해서 원도우 디펜드가 검사를 하지 않는다. 다음과 같이 작업 관리자에 나오는 프로세스 파일 이름을 찾아서 입력해 주면 된다.

위 과정을 거치고 현재 접근하는 파일이 없더라도 원도우 디펜더는 실시간으로 처리를 수행한다.

따라서 위 과정후에도 별다른 효과가 없다면 현재 컴퓨터를 사용하지 않을 경우에만 원도우 디펜터가 백그라운드에서 검사할 수 있도록 설정할 수 있다. “작업 스케쥴러” 앱을 찾아서 실행하거나 원도우 검색창에 taskschd.msc를 입력해서 작업 스케쥴러 앱을 실행한다. 그리고 “작업 스케줄러 라이브러리 > Microsfot > Windows > Window Defender” 메뉴로 이동후 “Windows Defender Scheduled Scan” 옵션을 다음과 같이 수정한다.

해당 옵션을 설정하면 10분간 컴퓨터 사용이 없는 경우에만 백그라운드에서 일어난 원도우 디펜더 검사가 실행된다.

단 스케쥴러 조건 설정은 원도우 업데이트가 일어날때 마다 초기화므로 업데이트 마다 재설정해줘야 하는 점이 번거롭낟.

터보부스트 강제 동작(가능한 사람만)

Throttle stop같이 터보 부스트 기능을 강제로 활성화 시키고 CPU 전압을 변경하거나 언더볼팅하여 스토틀링을 막아서 성능을 향상시키는 프로그램도 존재한다. 하지만 노트북은 이런 상황에서 버틸 수 있도록 쿨러가 제작되지 않았기 때문에 설정이 잘못되면 컴퓨터가 다운되어 버릴 수 있다.

따라서 이 프로그램은 사용하길 권장 하지는 않는다. 글쓴이의 경우 성능 향상의 목적보다는 CPU 클럭을 최대로 낮춰서 외부에서 배터리 시간을 최대로 늘리는데 활용하고 있다.

CPU 쓰로틀링 제어 소프트웨어인 “ThrottleStop”

Chrome OS로 운영체제를 변경

여러 최적화 단계를 거쳐도 쓸만한 성능이 나오지 않는다면 운영체제를 Chrome OS로 변경하도록 한다. 글쓴이가 사용하는 i5-4500U CPU를 가진 노트북에 Chrome OS를 설치하고 나니 데스크탑 못지 않게 쾌적한 웹서핑 속도를 얻을 수 있었다. 게다가 전원 관리에서 배터리 절약모드로 사용해도 2시간30분 정도 한계이던 노트북이 4시간 이상 속도저하 없이 사용할 수 있었다.

특히 ATOM 같은 CPU를 쓰는 저가 노트북에 Chrome OS를 설치하면 효과적이다. 싸구려 CPU를 쓴 노트북들이 성능이 별로지만 그만큼 쿨링에 신경을 안써도 되고 메인보드 일체형으로 나오기 때문에 일반적으로 굉장히 가볍다. 따라서 Chrome OS 설치를 통해 생산성 작업등을 하는데는 충분한 성능을 얻게 되면 가벼운 무게 때문에 외출시에 유용한 장비로 탈바꿈하게 될 수 있다.

자세한 설치 방법은 다음 유투브 영상을 참고한다.

결론

내 노트북이 아직도 사용할 수 있느냐는 사용 목적에 있지 절대적인 성능에 달려있지는 않다. 매달마다 쏟아지는 새로운 노트북 사양을 보면 자꾸 눈이 가기 마련이지만 위 방법들을 이용해 본 후 자신이 사용하는 목적에 무리가 없는지 판단 후 교체를 해도 늦지 않을 것이다.