--- id: P-REINFORCE-AUTO-EF52CE category: "10_Wiki/๐Ÿ’ก Topics/AI" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - Chrome DevTools ๋ฉ”๋ชจ๋ฆฌ ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ ํž™ ์Šค๋ƒ…์ƒท ๋ถ„์„" --- # [[Chrome DevTools แ„†แ…ฆแ„†แ…ฉแ„…แ…ต แ„‘แ…ณแ„…แ…ฉแ„‘แ…กแ„‹แ…ตแ†ฏแ„…แ…ตแ†ผ แ„†แ…ตแ†พ แ„’แ…ตแ†ธ แ„‰แ…ณแ„‚แ…ขแ†ธแ„‰แ…ฃแ†บ แ„‡แ…ฎแ†ซแ„‰แ…ฅแ†จ|Chrome DevTools ๋ฉ”๋ชจ๋ฆฌ ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ ํž™ ์Šค๋ƒ…์ƒท ๋ถ„์„]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > Chrome DevTools์˜ ๋ฉ”๋ชจ๋ฆฌ ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ ํž™ ์Šค๋ƒ…์ƒท ๋ถ„์„์€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ Node.js ํ™˜๊ฒฝ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ์ฐพ์•„๋‚ด๊ณ  ๊ฐ์ฒด์˜ ๋ณด์กด ์ƒํƒœ๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ•ต์‹ฌ ๋””๋ฒ„๊น… ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ํŒจ๋„์€ ์ „์ฒด ๊ฐ์ฒด ๊ทธ๋ž˜ํ”„๋ฅผ ์บก์ฒ˜ํ•˜๋Š” ํž™ ์Šค๋ƒ…์ƒท, ์‹œ๊ฐ„์— ๋”ฐ๋ฅธ ํ• ๋‹น์„ ์ถ”์ ํ•˜๋Š” ํƒ€์ž„๋ผ์ธ ๊ณ„์ธก, ๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ๋•์…˜์— ์ ํ•ฉํ•œ ์ƒ˜ํ”Œ๋ง ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” ์ด๋Ÿฌํ•œ ๋„๊ตฌ์™€ ๊ฐ์ฒด์˜ ์ฐธ์กฐ ์ฒด์ธ(Retaining path)์„ ๋ถ„์„ํ•˜์—ฌ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ(GC)์— ์˜ํ•ด ํ•ด์ œ๋˜์–ด์•ผ ํ•  ๊ฐ์ฒด๊ฐ€ ์™œ ๋ฉ”๋ชจ๋ฆฌ์— ๋‚จ์•„์žˆ๋Š”์ง€ ๊ทผ๋ณธ ์›์ธ์„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) - **DevTools ๋ฉ”๋ชจ๋ฆฌ ํŒจ๋„์˜ ํ•ต์‹ฌ ๋„๊ตฌ** Chrome DevTools์˜ Memory ํŒจ๋„์€ ์ฃผ๋กœ ์„ธ ๊ฐ€์ง€ ๋ถ„์„ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 1. **Heap snapshot (ํž™ ์Šค๋ƒ…์ƒท):** ํŠน์ • ์‹œ์ ์˜ ์ „์ฒด ๊ฐ์ฒด ๊ทธ๋ž˜ํ”„๋ฅผ ์บก์ฒ˜ํ•ฉ๋‹ˆ๋‹ค [1]. 2. **Allocation instrumentation on timeline (ํƒ€์ž„๋ผ์ธ์— ํ• ๋‹น ๊ณ„์ธก):** ํŠน์ • ๊ธฐ๊ฐ„ ๋™์•ˆ์˜ ๋ชจ๋“  ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น๊ณผ ์Šคํƒ ํŠธ๋ ˆ์ด์Šค๋ฅผ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค [1]. ๊ธฐ๋ก์„ ์‹œ์ž‘ํ•˜๋ฉด 50ms๋งˆ๋‹ค ํž™ ์Šค๋ƒ…์ƒท์„ ์ฃผ๊ธฐ์ ์œผ๋กœ ์บก์ฒ˜ํ•˜๊ณ  ๊ธฐ๋ก์ด ๋๋‚  ๋•Œ ์ตœ์ข… ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค [2, 3]. 3. **Allocation sampling (ํ• ๋‹น ์ƒ˜ํ”Œ๋ง):** ์ „์ฒด ๊ณ„์ธก์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋Œ€์‹  ํ†ต๊ณ„์  ์ƒ˜ํ”Œ๋ง์„ ์‚ฌ์šฉํ•˜์—ฌ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ ๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์˜ ํ”„๋กœํŒŒ์ผ๋ง์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค [4]. - **ํž™ ์Šค๋ƒ…์ƒท ๋ทฐ(View)์˜ ์ข…๋ฅ˜์™€ ํ™œ์šฉ** ์บก์ฒ˜ํ•œ ํž™ ์Šค๋ƒ…์ƒท์€ ๋ชฉ์ ์— ๋งž๊ฒŒ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ทฐ๋ฅผ ํ†ตํ•ด ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [5]. - **Summary(์š”์•ฝ) ๋ทฐ:** ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑ์ž(Constructor) ์ด๋ฆ„์œผ๋กœ ๊ทธ๋ฃนํ™”ํ•˜์—ฌ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค [5, 6]. ๊ฐ ๊ฐ์ฒด๊ฐ€ ์ ์œ ํ•˜๋Š” ์ž์ฒด ๋ฉ”๋ชจ๋ฆฌ์ธ '์–•์€ ํฌ๊ธฐ(Shallow size)'์™€, ํ•ด๋‹น ๊ฐ์ฒด๊ฐ€ ์‚ญ์ œ๋  ๋•Œ ํ•ด์ œ๋  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ์ธ '๋ณด์กด๋œ ํฌ๊ธฐ(Retained size)'๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [7]. - **Comparison(๋น„๊ต) ๋ทฐ:** ๋‘ ๊ฐœ ์ด์ƒ์˜ ์Šค๋ƒ…์ƒท ๊ฐ„์˜ ์ฐจ์ด๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ํŠน์ • ์ž‘์—… ์ „ํ›„์˜ ์Šค๋ƒ…์ƒท์„ ๋น„๊ตํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜์˜ ์กด์žฌ์™€ ์›์ธ์„ ํ™•์ธํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค [5, 8]. - **Containment(ํฌํ•จ) ๋ทฐ:** ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ์ฒด ๊ตฌ์กฐ๋ฅผ ์กฐ๊ฐ(Bird's eye view)ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, DOMWindow ๊ฐ์ฒด, GC ๋ฃจํŠธ(GC roots), ๋„ค์ดํ‹ฐ๋ธŒ ๊ฐ์ฒด๋ฅผ ํ†ตํ•ด ๊ธ€๋กœ๋ฒŒ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์—์„œ ์ฐธ์กฐ๋˜๋Š” ๊ฐ์ฒด๋ฅผ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [5, 9, 10]. - **ํƒ€์ž„๋ผ์ธ ํ• ๋‹น ๋ถ„์„์„ ํ†ตํ•œ ๋ˆ„์ˆ˜ ์ถ”์ ** ํƒ€์ž„๋ผ์ธ์„ ์ด์šฉํ•œ ํ• ๋‹น ๊ณ„์ธก ์‹œ, ์ƒ๋‹จ์— ๋‚˜ํƒ€๋‚˜๋Š” ๋ง‰๋Œ€์˜ ๋†’์ด๋Š” ํ• ๋‹น๋œ ๊ฐ์ฒด์˜ ํฌ๊ธฐ๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ ๋ง‰๋Œ€์˜ ์ƒ‰์ƒ์€ ๊ฐ์ฒด์˜ ์ƒ์กด ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค [11, 12]. - **ํŒŒ๋ž€์ƒ‰ ๋ง‰๋Œ€:** ํƒ€์ž„๋ผ์ธ ๊ธฐ๋ก์ด ๋๋‚  ๋•Œ๊นŒ์ง€ ์—ฌ์ „ํžˆ ์‚ด์•„์žˆ๋Š”(Live) ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, ์ด ๊ฐ์ฒด๋“ค์ด ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ํ›„๋ณด๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [1, 11-13]. - **ํšŒ์ƒ‰ ๋ง‰๋Œ€:** ํƒ€์ž„๋ผ์ธ ๋™์•ˆ ํ• ๋‹น๋˜์—ˆ์œผ๋‚˜ ์ดํ›„ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜(GC)์— ์˜ํ•ด ์ˆ˜์ง‘๋œ ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค [1, 11-13]. ํƒ€์ž„๋ผ์ธ์—์„œ ํŒŒ๋ž€์ƒ‰ ๋ง‰๋Œ€๋ฅผ ํ™•๋Œ€(Zoom in)ํ•œ ๋’ค 'Retainers(๋ณด์œ ์ž)' ํŒจ๋„์„ ํ™•์ธํ•˜๋ฉด, ํ•ด๋‹น ๊ฐ์ฒด๊ฐ€ ์ˆ˜์ง‘๋˜์ง€ ๋ชปํ•˜๊ณ  ๊ณ„์† ์‚ด์•„์žˆ๊ฒŒ ๋งŒ๋“œ๋Š” ์ฐธ์กฐ ์ฒด์ธ์„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [14-16]. - **๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ํƒ์ง€ ์ „๋žต: 3๋‹จ๊ณ„ ์Šค๋ƒ…์ƒท ๊ธฐ๋ฒ•(Three-snapshot technique)** ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ๊ฐ€์žฅ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ 3๋‹จ๊ณ„ ์Šค๋ƒ…์ƒท ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋จผ์ € ๊ธฐ์ค€์ด ๋˜๋Š” ์Šค๋ƒ…์ƒท 1์„ ์ฐ๊ณ , ๋ˆ„์ˆ˜๊ฐ€ ์˜์‹ฌ๋˜๋Š” ์ž‘์—…(์˜ˆ: ๋ชจ๋‹ฌ ์—ด๊ธฐ/๋‹ซ๊ธฐ ๋“ฑ)์„ ์ˆ˜ํ–‰ํ•œ ๋’ค ์Šค๋ƒ…์ƒท 2๋ฅผ ์ฐ์Šต๋‹ˆ๋‹ค. ๊ทธ๋‹ค์Œ ๋™์ผํ•œ ์ž‘์—…์„ ๋‹ค์‹œ ๋ฐ˜๋ณตํ•˜๊ณ  ์Šค๋ƒ…์ƒท 3์„ ์บก์ฒ˜ํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ ์Šค๋ƒ…์ƒท 2์™€ 3์„ ๋น„๊ตํ•˜์—ฌ, ์Šค๋ƒ…์ƒท 1๊ณผ 2 ์‚ฌ์ด์—์„œ ํ• ๋‹น๋˜์—ˆ์ง€๋งŒ ์Šค๋ƒ…์ƒท 3์—์„œ๋„ ์—ฌ์ „ํžˆ ์‚ด์•„์žˆ๋Š” ๊ฐ์ฒด๋ฅผ ์ฐพ์Œ์œผ๋กœ์จ ์ผํšŒ์„ฑ ํ• ๋‹น(False positives)์„ ๊ฑธ๋Ÿฌ๋‚ด๊ณ  ์‹ค์ œ ๋ˆ„์ˆ˜ ํ›„๋ณด๋ฅผ ํŠน์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [17]. - **๋ถ„์„ ์‹œ ์ฃผ์˜์‚ฌํ•ญ(Gotchas)** - ํž™ ์Šค๋ƒ…์ƒท์—๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฐ์ฒด๋ฟ๋งŒ ์•„๋‹ˆ๋ผ `(compiled code)`, `(concatenated string)`, `InternalNode` ๋“ฑ ์ˆ˜๋งŽ์€ V8 ๋‚ด๋ถ€ ๊ฐ์ฒด๋“ค์ด ํฌํ•จ๋˜๋ฏ€๋กœ, ์˜๋ฏธ ์žˆ๋Š” ๊ฐ์ฒด์— ์ง‘์ค‘ํ•˜๋ ค๋ฉด ์ƒ์„ฑ์ž(Constructor) ํ•„ํ„ฐ๋ง์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค [18-22]. - ๋‚œ๋…ํ™”๋œ(Minified) ์ฝ”๋“œ์—์„œ๋Š” ๋ณ€์ˆ˜๋‚˜ ํ•จ์ˆ˜ ์ด๋ฆ„์ด ์ œ๋Œ€๋กœ ๋ณด์ด์ง€ ์•Š์œผ๋ฏ€๋กœ, ์˜๋ฏธ ์žˆ๋Š” Retainer ํŠธ๋ฆฌ๋ฅผ ํ™•์ธํ•˜๋ ค๋ฉด DevTools์—์„œ ์†Œ์Šค ๋งต(Source maps)์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [18]. - ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์ฝ˜์†”์—์„œ `console.log`๋กœ ์ถœ๋ ฅ๋œ ๊ฐ์ฒด๋Š” ๊ณ„์†ํ•ด์„œ ์ฐธ์กฐ๊ฐ€ ์œ ์ง€๋˜๋ฏ€๋กœ ๋ˆ„์ˆ˜ ์กฐ์‚ฌ ์‹œ์—๋Š” ์ฝ˜์†”์„ ๋น„์šฐ๊ฑฐ๋‚˜ ๋Œ€์šฉ๋Ÿ‰ ๊ฐ์ฒด ๋กœ๊น…์„ ํ”ผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [18]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** AI ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[แ„†แ…ฆแ„†แ…ฉแ„…แ…ต แ„‚แ…ฎแ„‰แ…ฎ(Memory Leaks)|๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜(Memory Leaks)]], [[แ„€แ…กแ„‡แ…ตแ„Œแ…ต แ„แ…ฅแ†ฏแ„…แ…ฆแ†จแ„‰แ…งแ†ซ(Garbage Collection)|๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜(Garbage Collection)]], [[V8 แ„‹แ…ฆแ†ซแ„Œแ…ตแ†ซ แ„†แ…ฆแ„†แ…ฉแ„…แ…ต แ„€แ…ฎแ„Œแ…ฉ|V8 ์—”์ง„ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ]], ๊ฐ์ฒด ์ฐธ์กฐ ์ฒด์ธ(Retainers) - **Projects/Contexts:** [[Node.js แ„‘แ…ณแ„…แ…ฉแ„ƒแ…ฅแ†จแ„‰แ…งแ†ซ แ„†แ…ฆแ„†แ…ฉแ„…แ…ต แ„†แ…ฎแ†ซแ„Œแ…ฆ แ„’แ…ขแ„€แ…งแ†ฏ|Node.js ํ”„๋กœ๋•์…˜ ๋ฉ”๋ชจ๋ฆฌ ๋ฌธ์ œ ํ•ด๊ฒฐ]], [[แ„‹แ…ฐแ†ธ แ„‘แ…ณแ„…แ…ฉแ†ซแ„แ…ณแ„‹แ…ฆแ†ซแ„ƒแ…ณ แ„‰แ…ฅแ†ผแ„‚แ…ณแ†ผ แ„Žแ…ฌแ„Œแ…ฅแ†จแ„’แ…ช|์›น ํ”„๋ก ํŠธ์—”๋“œ ์„ฑ๋Šฅ ์ตœ์ ํ™”]] - **Contradictions/Notes:** ๋‹จ์ˆœํžˆ ๋ฉ”๋ชจ๋ฆฌ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ƒ์Šนํ•œ๋‹ค๊ณ  ํ•ด์„œ ๋ชจ๋‘ ์šฐ๋ฐœ์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜์ธ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์บ์‹œ(Caches)๋‚˜ ์‹คํ–‰ ์ทจ์†Œ ๊ธฐ๋ก(Undo histories) ๋“ฑ์€ ์˜๋„์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์กดํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์œผ๋ฏ€๋กœ, ์ด๋Ÿฌํ•œ '์˜๋„๋œ ๋ณด์กด'๊ณผ '์šฐ๋ฐœ์ ์ธ ๋ณด์กด(๋ˆ„์ˆ˜)'์„ ๋ช…ํ™•ํ•˜๊ฒŒ ๊ตฌ๋ถ„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [18]. --- *Last updated: 2026-04-19* - Raw Source: 00_Raw/2026-04-20/Chrome DevTools ๋ฉ”๋ชจ๋ฆฌ ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ ํž™ ์Šค๋ƒ…์ƒท ๋ถ„์„.md ---