- Published on
Chrome GPU Rasterization 꺼짐 원인과 복구 체크리스트
- Authors
- Name
- 스타차일드
- https://x.com/ETFBITX
서론
Chrome에서 스크롤이 뻑뻑해지고, 애니메이션이 끊기며, 캔버스/웹GL이 버벅일 때 chrome://gpu를 열어보면 GPU Rasterization: Disabled가 찍혀 있는 경우가 많습니다. 문제는 “하드웨어 가속 켰는데 왜 GPU Rasterization만 꺼져 있지?” 같은 애매한 상태가 흔하다는 점입니다.
이 글은 다음을 목표로 합니다.
- GPU Rasterization이 무슨 조건에서 자동으로 꺼지는지(Chrome의 판단 로직)
chrome://gpu에서 원인을 역추적하는 법- Windows/macOS/Linux/원격 데스크톱/가상환경에서 복구를 위한 우선순위 있는 체크리스트
진단 방식은 Kubernetes 장애 분석처럼 “증상 → 근거 로그 → 가설 → 빠른 실험” 흐름이 중요합니다. (비슷한 접근으로 캐시 꼬임을 추적하는 글도 참고할 만합니다: GitLab CI 캐시 꼬임 - 빌드 완전 초기화 가이드)
GPU Rasterization이란? (왜 중요할까)
Chrome 렌더링 파이프라인을 아주 단순화하면:
- Layout/Style 계산: CPU 중심
- Rasterization(래스터화): 벡터/텍스트/그림을 픽셀로 “찍어내는” 과정
- Compositing(합성): 레이어를 GPU에서 합성해 화면에 출력
여기서 GPU Rasterization은 “래스터화 자체를 GPU에서 하도록” 하는 기능입니다. 켜지면 스크롤/줌/애니메이션에서 CPU 병목이 줄고, 특히 고해상도 디스플레이나 복잡한 페이지에서 체감이 큽니다.
다만 GPU Rasterization은 드라이버/OS/원격세션/샌드박스/블랙리스트 영향이 크고, Chrome은 안정성을 위해 조건이 나쁘면 자동으로 끕니다.
현재 상태 확인: chrome://gpu에서 봐야 할 것
가장 먼저 아래 3곳을 확인하세요.
chrome://gpu상단 Graphics Feature StatusGPU rasterization: DisabledHardware accelerated: true/false
- 같은 페이지 하단 Problems Detected
- “Disabled due to …” 형태로 원인 문구가 뜨는 경우가 많습니다.
chrome://gpu→ Log Messages- 실제로 “왜 껐는지” 힌트가 더 구체적으로 나옵니다.
추가로, 실행 플래그를 확인하려면 chrome://version에서 Command Line 항목을 봅니다. 여기에 --disable-gpu 같은 플래그가 있으면 게임 끝입니다.
GPU Rasterization이 꺼지는 대표 원인 9가지
1) 하드웨어 가속 자체가 꺼져 있음
가장 흔한 실수입니다.
- 설정 → 시스템 → 가능한 경우 하드웨어 가속 사용 토글
- 토글 후 브라우저 재시작 필수
단, 하드웨어 가속이 켜져도 Rasterization만 꺼질 수 있으니 다음 항목으로 넘어갑니다.
2) Chrome 플래그/커맨드라인에 의해 강제 비활성화
아래 중 하나라도 있으면 GPU Rasterization이 꺼질 수 있습니다.
--disable-gpu--disable-gpu-compositing--disable-features=...에 raster 관련 기능 포함- 확장 프로그램/회사 정책이 플래그를 주입
확인 방법:
chrome://version→ Command Linechrome://policy에서 정책 강제 여부 확인
복구 방법(테스트용):
# Windows (PowerShell) - 임시로 사용자 데이터 분리해서 실행
& "C:\Program Files\Google\Chrome\Application\chrome.exe" `
--user-data-dir="$env:TEMP\chrome-gpu-test" `
--no-first-run
이렇게 “깨끗한 프로필”로 띄웠을 때 GPU Rasterization이 켜지면, 원인은 기존 프로필/정책/확장 쪽일 확률이 높습니다.
3) GPU 블랙리스트(차단 목록) 적용
Chrome은 크래시/그래픽 깨짐 이슈가 보고된 GPU/드라이버 조합을 내부 리스트로 관리하며, 해당 조건이면 특정 기능을 자동으로 끕니다.
chrome://gpu의 Problems Detected에 다음과 같은 문구가 나오면 블랙리스트 가능성이 큽니다.
- “Disabled due to GPU driver bug”
- “Disabled due to blocklist”
복구 우선순위:
- GPU 드라이버 업데이트(가장 권장)
- OS 업데이트
- Chrome 업데이트
- (테스트용) blocklist 무시 플래그
테스트 플래그(권장하진 않음):
# 블랙리스트 무시(안정성 저하 가능)
chrome --ignore-gpu-blocklist
업무 환경에서 이 플래그를 상시 적용하는 건 “증상 숨기기”가 될 수 있습니다. 드라이버/OS 조합을 먼저 해결하는 게 정석입니다.
4) 원격 데스크톱(RDP), VDI, 가상 머신 환경
원격 세션에서는 GPU가 가상 어댑터로 노출되거나, 하드웨어 가속 경로가 제한됩니다. 특히 Windows RDP/VDI에서 자주 발생합니다.
체크 포인트:
- 로컬 로그인에서는 Enabled인데 RDP에서만 Disabled
chrome://gpu에 SwiftShader(소프트웨어 렌더러) 언급
복구 옵션:
- 가능하면 로컬 콘솔/물리 세션에서 테스트
- VDI 정책에서 GPU 패스스루/가속 옵션 활성화
- Windows의 경우 그룹 정책/원격 세션 GPU 가속 설정(환경마다 다름)
5) Linux에서 Wayland/X11, Mesa/ANGLE 조합 문제
Linux는 조합이 많습니다.
- Wayland 세션에서 특정 드라이버 조합이 불안정
- Mesa 버전이 낮거나, distro 패키지와 Chrome이 기대하는 EGL 경로가 다를 때
진단 힌트:
chrome://gpuLog Messages에 EGL/GLX 실패- Vulkan/GL 초기화 실패
테스트 실행 예:
# X11로 강제하거나(환경에 따라) Ozone 플랫폼을 바꿔 테스트
google-chrome --ozone-platform=x11
# 또는 Wayland
google-chrome --ozone-platform=wayland
또는 ANGLE 백엔드를 바꿔보는 것도 원인 분리에 도움 됩니다.
# OpenGL 경로로 테스트(환경에 따라 효과)
google-chrome --use-angle=gl
# D3D11/Metal/Vulkan 등은 OS별로 다르게 적용
6) 배터리/전원 정책, 절전 모드, 저전력 GPU 강제
노트북에서 전원 정책이 “절전”으로 고정되면 고성능 GPU 대신 iGPU로 고정되거나, 특정 가속 기능이 제한될 수 있습니다.
- Windows: 그래픽 설정에서 Chrome을 고성능 GPU로 지정
- macOS: 저전력 모드/배터리 설정 확인
이 케이스는 완전히 Disabled보다는 성능 저하/부분 비활성화로 나타나지만, 드라이버 버그가 겹치면 Rasterization이 꺼지기도 합니다.
7) 샌드박스/보안 제품 충돌
일부 보안 제품(EDR), 화면 캡처/오버레이 프로그램, 가상 디스플레이 드라이버가 D3D/GL 경로를 후킹하면서 Chrome이 안전을 위해 기능을 끄는 경우가 있습니다.
진단 팁:
- 시크릿/새 프로필에서도 동일
- 특정 보안 에이전트 설치 후부터 재현
해결은 “충돌 소프트웨어 식별 → 예외 처리/업데이트”가 핵심입니다. 네트워크 장애에서 SNAT/NAT GW를 추적하듯이, 원인 후보를 하나씩 격리하는 방식이 필요합니다: EKS Pod egress 간헐 끊김 - SNAT·NAT GW 추적법
8) 프로필/캐시/Preferences 꼬임
Chrome은 GPU 관련 상태를 내부적으로 캐시하거나, 프로필 설정/실험 플래그가 꼬여서 이상 상태가 유지되는 경우가 있습니다.
가장 안전한 분리 테스트는 “새 사용자 데이터 디렉터리” 실행입니다.
# macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \
--user-data-dir="/tmp/chrome-gpu-test" --no-first-run
# Linux
google-chrome --user-data-dir=/tmp/chrome-gpu-test --no-first-run
새 프로필에서 정상이라면:
- 기존 프로필의 확장/플래그/설정 문제
- 또는 GPUCache/ShaderCache 쪽 손상
이때는 “프로필 리셋” 또는 문제 확장을 비활성화하며 범위를 좁히는 게 좋습니다.
9) Chrome 버그/특정 버전 회귀(regression)
드물지만 특정 Chrome 버전에서만 GPU Rasterization이 비정상적으로 꺼지는 회귀가 생길 수 있습니다.
- Stable ↔ Beta/Dev 전환 테스트
- 동일 PC에서 Chrome 버전만 바꿔 재현 여부 확인
이 경우 chrome://gpu의 로그와 chrome://version 정보(버전/OS/커맨드라인)를 첨부해 Chromium 이슈 트래커를 찾는 게 빠릅니다.
복구 체크리스트(우선순위 순)
아래 순서대로 진행하면 “헛수고”를 줄일 수 있습니다.
1) 상태 스냅샷 확보
chrome://gpu전체 캡처chrome://version의 Command Line 캡처- OS/GPU/드라이버 버전 기록
2) 하드웨어 가속 토글 + 재시작
- 설정에서 토글 → 완전 종료 후 재실행
3) 새 프로필(user-data-dir)로 재현 분리
- 새 프로필에서 정상 → 확장/정책/프로필 문제
- 새 프로필에서도 비정상 → 드라이버/OS/원격환경 가능성
4) 확장/정책 점검
chrome://policy확인- 의심 확장 전체 OFF 후 재확인
5) 드라이버/OS/Chrome 업데이트
- GPU 드라이버를 “제조사 최신”으로(Windows Update만으로 부족한 경우 많음)
- macOS는 OS 업데이트가 드라이버 업데이트 역할
- Linux는 Mesa/커널/드라이버 스택 정합성 확인
6) 원격/가상 환경이면 로컬 세션으로 비교
- 로컬에서는 Enabled, 원격에서 Disabled면 환경 제약이 원인
7) 최후의 테스트: blocklist 무시/ANGLE 변경
--ignore-gpu-blocklist로 원인 분리--use-angle=gl등으로 렌더 경로 변경
테스트 후에는 플래그를 원복하고, 근본 원인(드라이버/환경)을 해결하세요.
“Enabled인데도 느린” 경우: Rasterization 외 병목 확인
GPU Rasterization이 켜졌더라도 체감이 없거나 여전히 끊기면 다음도 같이 봐야 합니다.
Performance탭에서 메인 스레드 long task- CSS
filter,backdrop-filter, 큰 box-shadow 등 비용 높은 효과 - 캔버스/웹GL에서 과도한 드로우 콜
- 레이어 과다 생성(합성 비용 증가)
이건 브라우저 설정 문제가 아니라 “웹앱 성능 문제”일 수 있습니다.
결론
Chrome의 GPU Rasterization은 단순 토글이 아니라 드라이버 안정성, 블랙리스트, 원격/가상 환경, 정책/확장 같은 조건에 따라 자동으로 꺼질 수 있습니다. 가장 빠른 복구 루트는:
chrome://gpu에서 Disabled 사유를 확인하고--user-data-dir로 프로필 문제를 분리한 뒤- 드라이버/OS/원격환경 제약을 우선 해결하는 것입니다.
원인을 “감”으로 추측하기보다 로그와 분리 테스트로 좁히면, GPU Rasterization 문제도 재현 가능한 장애로 바뀌고 해결 속도가 확 올라갑니다.