--- id: P-REINFORCE-AUTO-7025AF category: "10_Wiki/๐Ÿ’ก Topics/Graphics & Performance" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - Chromium WebGPU Implementation" --- # [[Chromium WebGPU Implementation|Chromium WebGPU Implementation]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > Chromium์˜ WebGPU ๊ตฌํ˜„์€ **Dawn**์ด๋ผ๋Š” ๋ฐฑ์—”๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์ฐจ์„ธ๋Œ€ ์›น ๊ทธ๋ž˜ํ”ฝ ๋ฐ ์ปดํ“จํŒ… API์ž…๋‹ˆ๋‹ค [1, 2]. ๋ณด์•ˆ ์ด์Šˆ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ํƒ€์ž„์Šคํƒฌํ”„ ์–‘์žํ™”(Timestamp Quantization)์™€ ๊ฐ™์€ ์„ธ๋ฐ€ํ•œ ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„๋˜์–ด ์žˆ์œผ๋ฉฐ, ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ๊ธฐ๋ฐ˜์ธ WebGL์˜ ํ•œ๊ณ„๋ฅผ ๋„˜์–ด ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ ๋ช…๋ น ์ƒ์„ฑ๊ณผ ๊ฐ•๋ ฅํ•œ ์ปดํ“จํŠธ ์…ฐ์ด๋” ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋ธŒ๋ผ์šฐ์ € ๋‚ด์—์„œ ๊ณ ์„ฑ๋Šฅ ๊ทธ๋ž˜ํ”ฝ๊ณผ ๋ณ‘๋ ฌ ์—ฐ์‚ฐ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค [1, 3, 4]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) * **Dawn ๋ฐฑ์—”๋“œ ๋ฐ ๊ตฌ์กฐ:** Chromium์—์„œ WebGPU API๋ฅผ ๊ตฌ๋™ํ•˜๋Š” ๋‚ด๋ถ€ ๋ฐฑ์—”๋“œ ์—”์ง„์˜ ์ด๋ฆ„์€ Dawn์ž…๋‹ˆ๋‹ค [1, 2]. ์ด ๊ตฌํ˜„์ฒด๋Š” WebGL์˜ ๊ธฐ์กด ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ๋ช…๋ น ์ œ์ถœ ๋ชจ๋ธ์—์„œ ๋ฒ—์–ด๋‚˜, ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ์—์„œ ๋™์‹œ์— ๋ Œ๋”๋ง ๋ช…๋ น์„ ์ค€๋น„(Multi-Threaded Command Generation)ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์–ด CPU ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ๋Œ€ํญ ์ค„์ด๊ณ  GPU ํ™œ์šฉ๋„๋ฅผ ๊ทน๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค [3]. * **๋ณด์•ˆ ๋ฐ ํƒ€์ž„์Šคํƒฌํ”„ ์–‘์žํ™” (Timestamp Quantization):** ๊ณ ์ •๋ฐ€ ํƒ€์ด๋จธ๋ฅผ ์•…์šฉํ•œ ์บ์‹œ ์‚ฌ์ด๋“œ ์ฑ„๋„ ๊ณต๊ฒฉ(์˜ˆ: Spectre ๋ฐ Meltdown)์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด, Blink ๋ฐ Dawn ๊ตฌํ˜„์ฒด๋Š” ํƒ€์ž„์Šคํƒฌํ”„ ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ์˜ ํ•ด์ƒ๋„๋ฅผ 100 ๋งˆ์ดํฌ๋กœ์ดˆ(ยตs)๋กœ ์–‘์žํ™”(Coarsening)ํ•˜์—ฌ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค [1, 5, 6]. Chrome์€ ์ดˆ๊ธฐ์—๋Š” ๋ณด์•ˆ์„ ์œ„ํ•ด ๊ฒฉ๋ฆฌ๋˜์ง€ ์•Š์€ ์ปจํ…์ŠคํŠธ(non-isolated contexts)์—์„œ ์ด๋ฅผ ์™„์ „ํžˆ ๋น„ํ™œ์„ฑํ™”ํ•˜๋ ค ํ–ˆ์œผ๋‚˜, ์ตœ์ข…์ ์œผ๋กœ ์›น ํ‘œ์ค€ ์ƒํ˜ธ ์šด์šฉ์„ฑ์„ ๊ณ ๋ คํ•ด ๊ฒฉ๋ฆฌ ์—ฌ๋ถ€์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ 100ยตs ํ•ด์ƒ๋„๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ•ฉ์˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค [5-7]. ๋‹จ, ๋กœ์ปฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ •๋ฐ€ํ•œ ์„ฑ๋Šฅ ํ”„๋กœํŒŒ์ผ๋ง์ด ํ•„์š”ํ•  ๋•Œ๋Š” `chrome://flags`์—์„œ "WebGPU Developer Features" ๋ฐ "Unsafe WebGPU Support" ํ”Œ๋ž˜๊ทธ๋ฅผ ์ผœ์„œ ์ด ์–‘์žํ™”๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [1, 2]. * **๋ฒ„์ „๋ณ„ ์ฃผ์š” ์ง„ํ™” ๊ณผ์ •:** Chrome 113 ๋ฒ„์ „์—์„œ WebGPU๊ฐ€ ์ตœ์ดˆ๋กœ ๊ธฐ๋ณธ ํ™œ์„ฑํ™”๋œ ์ดํ›„, Chromium ํŒ€์€ ๋ Œ๋”๋ง ๋ฐ ๋จธ์‹ ๋Ÿฌ๋‹ ๊ธฐ๋Šฅ ํ™•์žฅ์„ ์ง€์†ํ•ด ์™”์Šต๋‹ˆ๋‹ค [8, 9]. ์˜ˆ๋ฅผ ๋“ค์–ด, Chrome 120์—์„œ๋Š” WGSL ๋‚ด 16๋น„ํŠธ ๋ถ€๋™์†Œ์ˆ˜์ (`f16`) ์ง€์›์„ ์ถ”๊ฐ€ํ•˜์—ฌ Llama2 ๋ชจ๋ธ๊ณผ ๊ฐ™์€ LLM ์ถ”๋ก  ์†๋„๋ฅผ ๋น„์•ฝ์ ์œผ๋กœ ํ–ฅ์ƒ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค [10]. ์ดํ›„ ๋ฒ„์ „๋“ค์—์„œ๋Š” ์„œ๋ธŒ๊ทธ๋ฃน(Subgroup) ์—ฐ์‚ฐ ํ™•์žฅ, 3D ํ…์Šค์ฒ˜ ํฌ๋งท ์ง€์›, OpenGL ES 3.1 ํ˜ธํ™˜์„ฑ ๋ชจ๋“œ ๋“ฑ ๋‹ค์–‘ํ•œ GPU ๋ฉ”๋ชจ๋ฆฌ ๋ฐ ํŒŒ์ดํ”„๋ผ์ธ ํ•œ๋„(limits)๋ฅผ ์ƒํ–ฅ ์กฐ์ •ํ•ด๋‚˜๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค [11-14]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** Graphics & Performance ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[WebGPU|WebGPU]], Dawn, [[Timestamp Quantization|Timestamp Quantization]], WGSL - **Projects/Contexts:** Chromium Project, [[GPU for the Web Community Group|GPU for the Web Community Group]] - **Contradictions/Notes:** ํƒ€์ž„์Šคํƒฌํ”„ ์ฟผ๋ฆฌ ๊ธฐ๋Šฅ ๋…ธ์ถœ๊ณผ ๊ด€๋ จํ•˜์—ฌ, ์ดˆ๊ธฐ Chromium(Blink) ์ธํ…ํŠธ๋Š” Cross-Origin ๊ฒฉ๋ฆฌ๋˜์ง€ ์•Š์€ ์ปจํ…์ŠคํŠธ์—์„œ ํƒ€์ž„์Šคํƒฌํ”„ ์ฟผ๋ฆฌ๋ฅผ ์™„์ „ํžˆ ๋น„ํ™œ์„ฑํ™”ํ•  ๊ณ„ํš์„ ์„ธ์› ์œผ๋‚˜(๋ณด์•ˆ ์šฐ๋ ค), ๋‹ค๋ฅธ ๋ธŒ๋ผ์šฐ์ € ๋ฒค๋” ๋ฐ W3C ๊ทธ๋ฃน๊ณผ์˜ ์ƒํ˜ธ ์šด์šฉ์„ฑ ๋…ผ์˜๋ฅผ ๊ฑฐ์ณ ๊ฒฉ๋ฆฌ ์—ฌ๋ถ€์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ hr-time๊ณผ ๋™์ผํ•œ 100ยตs ๋‹จ์œ„๋กœ ๋…ธ์ถœํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์ŠคํŽ™ ๋ฐ ๊ตฌํ˜„ ๋ฐฉ์นจ์ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค [5-7]. --- *Last updated: 2026-04-19* - Raw Source: 00_Raw/2026-04-20/Chromium WebGPU Implementation.md ---