# [[GPU 가속(GPU Acceleration)]] ## πŸ“Œ Brief Summary GPU 가속(GPU Acceleration)은 μ›Ή λΈŒλΌμš°μ €μ˜ λ Œλ”λ§ 및 μ• λ‹ˆλ©”μ΄μ…˜ μž‘μ—…μ„ 메인 μŠ€λ ˆλ“œμ—μ„œ λΆ„λ¦¬ν•˜μ—¬ λ””λ°”μ΄μŠ€μ˜ κ·Έλž˜ν”½ 처리 μž₯치(GPU)둜 λ„˜κ²¨ μ²˜λ¦¬ν•˜λŠ” μ„±λŠ₯ μ΅œμ ν™” 기법이닀 [1]. λΈŒλΌμš°μ €κ°€ κ°’λΉ„μ‹Ό λ ˆμ΄μ•„μ›ƒ(Reflow) 및 페인트(Repaint) 단계λ₯Ό κ±΄λ„ˆλ›°κ³  μ»΄ν¬μ§€νŒ…(Compositing) κ³Όμ •λ§Œ μˆ˜ν–‰ν•˜λ„λ‘ μœ λ„ν•˜μ—¬ μ‹œμŠ€ν…œ λΆ€ν•˜λ₯Ό λŒ€ν­ 쀄인닀 [2]. 특히 λͺ¨λ°”일 ν™˜κ²½μ΄λ‚˜ λΆ€ν•˜κ°€ 큰 μΈν„°λž™μ…˜μ—μ„œ λΆ€λ“œλŸ½κ³  λΉ λ₯Έ μ‚¬μš©μž κ²½ν—˜(예: 60FPS)을 μ œκ³΅ν•˜λŠ” 데 ν•„μˆ˜μ μΈ 역할을 ν•œλ‹€ [3, 4]. ## πŸ“– Core Content - **GPU κ°€μ†μ˜ 원리 및 이점:** λΈŒλΌμš°μ €μ˜ λ Œλ”λ§ νŒŒμ΄ν”„λΌμΈμ—μ„œ μ• λ‹ˆλ©”μ΄μ…˜ μž‘μ—…μ„ μ²˜λ¦¬ν•  λ•Œ, `transform`μ΄λ‚˜ `opacity`와 같은 νŠΉμ • CSS 속성을 μ‚¬μš©ν•˜λ©΄ λΈŒλΌμš°μ €λŠ” λ³΅μž‘ν•œ λ ˆμ΄μ•„μ›ƒ μž¬κ³„μ‚°κ³Ό νŽ˜μΈνŒ… 과정을 μ™„μ „νžˆ μš°νšŒν•  수 μžˆλ‹€ [2, 5]. λŒ€μ‹  이 μž‘μ—…λ“€μ€ GPU둜 μ˜€ν”„λ‘œλ“œ(offload)λ˜μ–΄ 처리되며, 이 방식을 μ»΄ν¬μ§€νŒ…(Compositing)이라고 λΆ€λ₯Έλ‹€ [1, 2]. GPU 가속을 νŠΈλ¦¬κ±°ν•˜λ©΄ λ ˆμ΄μ•„μ›ƒ μž¬κ³„μ‚°μ΄ μ΅œμ†Œν™”λ˜μ–΄ μ„±λŠ₯이 ν–₯μƒλ˜κ³ , μ• λ‹ˆλ©”μ΄μ…˜μ˜ λŠκΉ€ ν˜„μƒ(Jank)을 λ°©μ§€ν•  수 μžˆλ‹€ [5]. - **GPU 가속을 νŠΈλ¦¬κ±°ν•˜λŠ” 속성 및 μš”μ†Œ:** λΈŒλΌμš°μ €κ°€ μžλ™μœΌλ‘œ GPU에 처리λ₯Ό λ„˜κΈ°λŠ” μ£Όμš” μ• λ‹ˆλ©”μ΄μ…˜ 및 μš”μ†ŒλŠ” λ‹€μŒκ³Ό κ°™λ‹€. - `transform: translateZ()` 및 `rotate3d()` 같은 3D λ³€ν˜•(transform) μ• λ‹ˆλ©”μ΄μ…˜ [3]. - `transform`, `scale`, `opacity`의 λ³€κ²½ [2, 5]. - `position: fixed` λ“± νŠΉμ • 속성이 μ μš©λ˜μ–΄ 독립적인 λ ˆμ΄μ–΄λ‘œ λ Œλ”λ§λ˜λŠ” μš”μ†Œ [3]. - λΈŒλΌμš°μ €μ— λ Œλ”λ§ 힌트λ₯Ό μ œκ³΅ν•˜λŠ” `will-change` 속성이 적용된 μš”μ†Œ [3]. - `