구글 크롬은 왜 이리 메모리를 많이 차지하나요?
[IT동아 강일용 기자] 구글 크롬 웹 브라우저를 오래 이용한 사용자라면 대부분 알겠지만, 크롬은 메모리(RAM)를 많이 요구한다. 단순히 많이 요구한다는 표현만으론 부족하다. 탭을 10개 이상 띄워놓는 사용자라면 반드시 8GB 이상의 메모리를 갖춘 PC와 노트북에서 크롬을 이용해야 한다. 4GB 메모리 이하의 PC와 노트북에선 메모리가 꽉차서 처리 속도가 느려지는 현상이 발생하기 일쑤다. 좀 오래된 PC에선 사용하지 말라는 얘기나 다름없다.
그렇다고 간편한 사용자 환경, 지메일을 통한 동기화, 다양한 확장 프로그램, 빠른 업데이트, 웹 표준 준수 등의 장점을 갖춘 크롬을 포기할 순 없는 노릇이다. 크롬 웹 브라우저가 다른 웹 브라우저보다 얼마나 많은 메모리를 요구하는지, 왜 많은 메모리를 요구하는지, 어떻게 메모리 사용량을 줄일 수 있는지 등에 대해 자세히 알아보자.
적게 띄우든 많이 띄우든 메모리 사용량은 1등
먼저 크롬 웹 브라우저가 다른 웹 브라우저보다 얼마나 많은 메모리를 요구하는지 알아보자. 인터넷 익스플로러(IE), 크롬, 파이어폭스, 오페라 등 대표적인 웹 브라우저 4가지를 실행하고 웹 페이지(네이버 홈 화면)를 하나 띄웠다. 그 결과 IE 78,532KB, 크롬 219,028KB, 파이어폭스 112,996KB, 오페라 163,260KB의 메모리를 점유하는 것으로 측정됐다. 크롬 > 오페라 > 파이어폭스 > IE 순이었다. 크롬이 IE 대비 2.5배 더 많은 메모리를 요구하는 것으로 드러났다.
그 다음 네이버, 다음, IT동아, 동아일보, 스포츠동아 등 총 7개의 웹 페이지를 동시에 띄운 후 메모리 사용량을 비교했다. 그 결과 IE 286,076KB, 크롬 455,428KB, 파이어폭스 234,224KB, 오페라 432,980KB였다. 크롬 > 오페라 > IE > 파이어폭스 순으로 메모리를 많이 요구하는 것으로 나타났다. 크롬이 파이어폭스 대비 2배 더 많은 메모리를 요구했다.
탭마다 독립된 처리환경과 프리렌더링이 메모리 사용량의 비밀
크롬은 왜 이렇게 메모리 사용량이 많은걸까. 이유는 '탭마다 독립된 프로세스'다. 크롬은 각각의 탭이 독립된 응용 프로그램처럼 작동한다. IE는 모든 탭이 하나의 '응용 프로그램 코어(웹 페이지를 표시하기 위한 필수적인 부분)'를 공유하고 있다. 반면 크롬은 각각의 탭이 별도의 응용 프로그램 코어 위에서 실행된다. 때문에 크롬은 응용 프로그램 코어가 늘어나면 늘어날 수록 메모리 사용량도 급격히 늘어난다. 대신 크롬은 탭 하나에서 문제가 발생하면 응용 프로그램 전체에 영향을 끼치는 IE와 달리 하나의 탭에서 문제가 발생해도 다른 탭이나 응용 프로그램에서 문제가 발생하지 않는다. 예를 들어 IE는 웹 서핑 도중 플래시 플레이어가 멈추면 플래시 플레이어를 다시 실행하기 위해 웹 브라우저를 종료 후 다시 시작해야 하지만, 크롬은 하나의 탭에서 플래시 플레이어가 멈추더라도 나머지 탭에선 플래시 플레이어가 정상 작동한다.
'프리렌더링' 같이 메모리를 많이 요구하는 신기술이 적용된 것도 하나의 이유다. 프리렌더링이란 사용자가 이전에 방문한 페이지를 메모리에 저장해뒀다가 다시 해당 페이지로 돌아가면 웹 대신 메모리에서 웹 페이지를 불러오는 기술이다. 크롬으로 특정 웹 페이지를 자주 방문하면 방문할 수록 웹 페이지 표시속도가 빨라지는 이유다. 프리렌더링 때문에 크롬 사용자는 크롬 웹 브라우저의 실제 표시 속도보다 더 빠르게 웹 페이지를 볼 수 있고, 이는 크롬 웹 브라우저가 다른 웹 브라우저보다 빠르다는 인식을 심어주는데 도움을 줬다.
크롬의 설계 사상도 높은 메모리 사용량에 한몫했다. 프로세서는 성능을 끌어내면 끌어낼 수록 전력 소모량이 늘어나지만, 메모리는 많이 사용한다고 해서 전력 소모량이 크게 늘어나지 않는다. 사실 거의 늘어나지 않는다는 표현이 어울린다. 8GB 메모리 가운데 1GB를 사용하든 7.5GB를 사용하든 전력 소모량은 거의 차이나지 않는다. 구글 안드로이드가 이점을 적극 활용하는 운영체제다. 최대한 많은 앱을 메모리에 상주시키고, 사용자가 요구할 때 해당 앱을 재빠르게 불러온다. 새로 실행한 앱이 메모리를 요구하면 가장 예전에 사용한 앱을 메모리에서 지우고 그 자리에 새 앱을 채운다. 크롬 역시 이러한 설계 철학이 고스란히 반영되어 있다. 여유 메모리를 웹 페이지를 빠르게 표시하는 기능이나 사용자 편의 기능을 실행하는데 할당하고 있다. 다만 이렇게 사용한 여유 메모리를 윈도 운영체제에 제대로 반납하지 못하는 문제(메모리 누수)가 있다는 지적을 받기도 했다. 메모리 누수 문제는 최신 크롬 웹 브라우저에선 해결된 상태다.
확장 프로그램(익스텐션)을 너무 많이 설치해서 메모리 사용량이 많은 것일 수도 있다. 크롬은 웹 브라우저의 기능을 더욱 풍부하게 해주는 확장 프로그램을 추가할 수 있다. 예를 들어 인터넷 광고를 차단하거나, 지메일을 오프라인에서 사용하거나, 페이스북 메시지가 오면 팝업창을 띄워주는 등 유용한 기능이 많다. 유용하지만 모두 메모리 사용량을 늘리는 주범이다.
크롬 메모리 사용량을 줄이는 방법
이제 크롬 메모리 사용량을 줄이는 방법에 대해 알아보자. 가장 쉬운 방법은 윈도 작업 관리자에서 '메모리를 많이 차지하는 탭을 강제 종료'하는 것이다. Ctrl +Alt+Del를 누르면 윈도 작업 관리자를 실행할 수 있다. 여기서 프로세스에 들어가 크롬 웹 브라우저를 찾고 메모리 사용량이 높은 순서대로 종료하면 된다. 탭보다 확장 프로그램을 종료하는 것이 메모리 사용량을 줄이는데 도움이 된다.
<작업 관리자에서 메모리를 많이
사용하는 프로세스를 제거하자>
송효진 독자님이 윈도 작업 관리자보다 크롬 작업 관리자로 불필요한 프로세스를 제거하는 것이 더 편하다고 지적해주셨습니다. 실제로 크롬 작업 관리자로 불필요한 프로세스를 제거하는 것이 윈도 작업 관리자로 제거하는 것보다 더 쉽고 간단합니다.* 크롬 작업 관리자는 '시프트+ESC'를 누르면 불러낼 수 있습니다. 좋은 팁을 공유해주신 송효진 독자님께 감사드립니다.
<크롬 작업 관리자,
윈도 작업 관리자보다 여기서 불필요한 프로세스를 제거하는게 더 편리하다>
두 번째 방법은 '플러그인 사용 중단'이다. 플러그인이란 액티브X, NPAPI, 자바 애플릿, 플래시 플레이어, 실버라이트 등 웹 페이지를 표시하기 위해 추가로 설치해야 하는 확장 프로그램이다. 플러그인이 많이 설치되어 있을 수록 메모리 사용량이 늘어나며, 특히 플래시 플레이어의 경우 매우 많은 메모리를 요구한다. 크롬 오른쪽 상단의 메뉴창을 누르고 설정 > 고급 설정 표시 > 콘텐츠 설정 창에 들어가 플러그인 메뉴에서 '플러그인 콘텐츠 실행 시기를 선택해주세요'를 선택하면 된다. 번역이 조금 이상하게 되어 있는데, 사실 이 메뉴는 평소에는 플러그인을 사용하지 않다가 사용자가 해당 창을 더블 클릭하면 그제야 플러그인이 활성화되는 설정이다. 또, 크롬 주소창에 'chrome://plugins/'라고 입력하면 현재 크롬에 설치되어 있는 모든 플러그인 목록을 확인할 수 있다. 여기서 NPAPI, 어도비 플래시 플레이어, 크롬 PDF 뷰어, 크롬 리모트 데스크톱 뷰어 등을 '사용 중지'하면 메모리 사용량을 더욱 줄일 수 있다. (다만 NPAPI를 꺼두면 인터넷 뱅킹이 아예 불가능하니 참고할 것)
<오른쪽 상단 메뉴 버튼 > 설정>
<설정 > 고급 설정 표시 > 콘텐츠 설정 > 플러그인>
<크롬 주소창에
'chrome://plugins/'라고 입력하면 플러그인 설정창에 들어갈 수 있다>
세 번째 방법은 '확장 프로그램 사용 중단'이다. 확장 프로그램을 꺼두면 저사양 PC에서도 크롬을 쾌적하게 이용할 수 있다. 크롬 오른쪽 상단의 메뉴창을 누르고 설정 > 확장 프로그램에 들어가 '사용 설정됨' 버튼을 눌러 자주 사용하지 않는 확장 프로그램을 꺼두자.
네 번째는 매우 극단적인 방법인데, '크롬의 메모리 사용량을 줄여주는 확장 프로그램을 설치'하는 것이다. 크롬 웹 스토어에 접속해 'The Great Suspender' 앱을 내려받자. 이 확장 프로그램은 사용자가 보고 있지 않은 탭을 강제로 정지시켜 메모리 사용량을 줄여준다. 사용자가 직접 탭을 정지시킬 수도 있다. 강제로 정지된 탭은 화면 상단의 아이콘이 흐릿하게 변경된다.
*구글 크롬 웹 브라우저에 관한 대해 궁금한점이 있다면 '구글로 똑똑해지는 방법 제 3강 '크롬의 모든 것' 기사(http://it.donga.com/20890/)'를 참고하세요.
글 / IT동아 강일용(zero@itdonga.com)