# Profile Inspect Report — CPU
**Profile:** `CPU.20260124.025603.56745.0.001.cpuprofile`
## Executive Summary
| App code | 105.54 ms | 3.4% | normal |
| Dependencies | 160.33 ms | 5.1% | normal |
| Node.js internals | 196.09 ms | 6.3% | normal |
| V8/Native | 2673.08 ms | 85.3% | dominant |
**Key takeaways:**
- 92% in internals — likely startup/module loading; profile under sustained load for better signal
---
## Top Hotspots by Self Time
> Self time answers: "Which function burns CPU directly?"
| 1 | 136.50 ms | 4.4% | 109 | 298.96 ms | `_runInlinedModule` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:110:25` | Deps |
| 2 | 8.79 ms | 0.3% | 7 | 16.25 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/flow-upegUFFJ.js:9:23` | App |
| 3 | 3.79 ms | 0.1% | 3 | 25.17 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20` | App |
| 4 | 2.54 ms | 0.1% | 2 | 3.79 ms | `findInDirectory` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/prettier-BvPMcj5n.js:9508:31` | App |
| 5 | 2.50 ms | 0.1% | 2 | 2.50 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/html-DfTbHn3r.js:1964:112` | App |
| 6 | 2.04 ms | 0.1% | 2 | 2.04 ms | `Fb` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:135304:12` | App |
| 7 | 1.29 ms | 0.0% | 1 | 1.29 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/postcss-B18KV238.js:12:19` | App |
| 8 | 1.29 ms | 0.0% | 1 | 30.21 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:1` | App |
| 9 | 1.29 ms | 0.0% | 2 | 2.12 ms | `VB.K.finalize` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:813:41` | App |
| 10 | 1.29 ms | 0.0% | 1 | 2.54 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20` | App |
| 11 | 1.29 ms | 0.0% | 1 | 1.29 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20` | App |
| 12 | 1.29 ms | 0.0% | 1 | 2.54 ms | `Mae` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:140698:13` | App |
| 13 | 1.29 ms | 0.0% | 1 | 1.29 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+runner@4.0.15/node_modules/@vitest/runner/dist/index.js:138:9` | Deps |
| 14 | 1.29 ms | 0.0% | 1 | 1.29 ms | `st` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/babel-Ds1ilLK4.js:4076:13` | App |
| 15 | 1.29 ms | 0.0% | 1 | 2.54 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20` | App |
| 16 | 1.29 ms | 0.0% | 1 | 1.29 ms | `oQ` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:79657:14` | App |
| 17 | 1.29 ms | 0.0% | 1 | 1.29 ms | `i` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:3300:19` | App |
| 18 | 1.25 ms | 0.0% | 1 | 1.25 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+spy@4.0.15/node_modules/@vitest/spy/dist/index.js:1:1` | Deps |
| 19 | 1.25 ms | 0.0% | 1 | 1.25 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+runner@4.0.15/node_modules/@vitest/runner/dist/index.js:1:1` | Deps |
| 20 | 1.25 ms | 0.0% | 1 | 1.25 ms | `requireArray` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/chunks/vi.2VT5v0um.js:494:23` | Deps |
| 21 | 1.25 ms | 0.0% | 1 | 3.25 ms | `startTests` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+runner@4.0.15/node_modules/@vitest/runner/dist/index.js:1907:26` | Deps |
| 22 | 1.25 ms | 0.0% | 1 | 6.17 ms | `cachedRequest` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vite@7.3.0_@types+node@24.1.0_jiti@2.6.1_terser@5.44.1/node_modules/vite/dist/node/module-runner.js:1043:21` | Deps |
| 23 | 1.25 ms | 0.0% | 1 | 1.25 ms | `resolve` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vite@7.3.0_@types+node@24.1.0_jiti@2.6.1_terser@5.44.1/node_modules/vite/dist/node/module-runner.js:45:25` | Deps |
| 24 | 1.25 ms | 0.0% | 1 | 1.25 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/angular-cPIPFXzo.js:1` | App |
| 25 | 1.25 ms | 0.0% | 1 | 1.25 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/babel-Ds1ilLK4.js:1` | App |
## Top Hotspots by Inclusive Time
> Inclusive time answers: "Which function's whole work is expensive?"
| 1 | 298.96 ms | 9.5% | 136.50 ms | `_runInlinedModule` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:110:25` | Deps |
| 2 | 30.21 ms | 1.0% | 1.29 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:1` | App |
| 3 | 25.17 ms | 0.8% | 3.79 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20` | App |
| 4 | 16.25 ms | 0.5% | 8.79 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/flow-upegUFFJ.js:9:23` | App |
| 5 | 6.17 ms | 0.2% | 1.25 ms | `cachedRequest` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vite@7.3.0_@types+node@24.1.0_jiti@2.6.1_terser@5.44.1/node_modules/vite/dist/node/module-runner.js:1043:21` | Deps |
| 6 | 5.00 ms | 0.2% | 1.25 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/prettier-BvPMcj5n.js:1` | App |
| 7 | 3.79 ms | 0.1% | 2.54 ms | `findInDirectory` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/prettier-BvPMcj5n.js:9508:31` | App |
| 8 | 3.75 ms | 0.1% | 1.25 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/typescript-CYBlFpU0.js:1` | App |
| 9 | 3.25 ms | 0.1% | 1.25 ms | `startTests` | `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+runner@4.0.15/node_modules/@vitest/runner/dist/index.js:1907:26` | Deps |
| 10 | 2.54 ms | 0.1% | 1.29 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20` | App |
| 11 | 2.54 ms | 0.1% | 1.29 ms | `Mae` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:140698:13` | App |
| 12 | 2.54 ms | 0.1% | 1.29 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20` | App |
| 13 | 2.50 ms | 0.1% | 2.50 ms | `(anonymous)` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/html-DfTbHn3r.js:1964:112` | App |
| 14 | 2.12 ms | 0.1% | 1.29 ms | `VB.K.finalize` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:813:41` | App |
| 15 | 2.04 ms | 0.1% | 2.04 ms | `Fb` | `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:135304:12` | App |
## Hot Paths
### Path #1 — 4.4% (136.50 ms, 109 samples)
```
directRequest (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vite@7.3.0_@types+node@24.1.0_jiti@2.6.1_terser@5.44.1/node_modules/vite/dist/node/module-runner.js:1101:21)
└─ runInlinedModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:107:24)
└─ $ (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/chunks/traces.U4xDYhzZ.js:113:3)
└─ (anonymous) (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:108:47)
└─ _runInlinedModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:110:25) ← HOTSPOT
```
**Why this path is hot:**
- Leaf function `_runInlinedModule` has 4.4% self time (self-heavy)
- Appears in 4.3% of samples (frequently executed)
- Crosses into native code (native boundary)
### Path #2 — 4.2% (132.46 ms, 106 samples)
```
directRequest (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vite@7.3.0_@types+node@24.1.0_jiti@2.6.1_terser@5.44.1/node_modules/vite/dist/node/module-runner.js:1101:21)
└─ runInlinedModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:107:24)
└─ $ (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/chunks/traces.U4xDYhzZ.js:113:3)
└─ (anonymous) (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:108:47)
└─ _runInlinedModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:110:25)
└─ runInThisContext (node:vm:313:26)
└─ createScript (node:vm:268:22)
└─ Script (node:vm:85:14) ← HOTSPOT
```
**Why this path is hot:**
- Appears in 4.2% of samples (frequently executed)
- Crosses into native code (native boundary)
### Path #3 — 0.6% (19.83 ms, 16 samples)
```
fetchModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/chunks/startModuleRunner.Iz2V0ESw.js:795:21)
└─ readFileSync (node:fs:433:22) ← HOTSPOT
```
**Why this path is hot:**
- Crosses into native code (native boundary)
### Path #4 — 0.3% (10.04 ms, 8 samples)
```
fetchModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/chunks/startModuleRunner.Iz2V0ESw.js:795:21)
└─ readFileSync (node:fs:433:22)
└─ readFileUtf8 ((unknown)) ← HOTSPOT
```
**Why this path is hot:**
- Crosses into native code (native boundary)
### Path #5 — 0.3% (8.79 ms, 7 samples)
```
directRequest (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vite@7.3.0_@types+node@24.1.0_jiti@2.6.1_terser@5.44.1/node_modules/vite/dist/node/module-runner.js:1101:21)
└─ runInlinedModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:107:24)
└─ $ (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/chunks/traces.U4xDYhzZ.js:113:3)
└─ (anonymous) (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:108:47)
└─ _runInlinedModule (file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:110:25)
└─ (anonymous) (file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/flow-upegUFFJ.js:1)
└─ (anonymous) (file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/flow-upegUFFJ.js:9:23) ← HOTSPOT
```
**Why this path is hot:**
- Crosses into native code (native boundary)
## Caller & Callee Attribution
### `_runInlinedModule` (136.50 ms self, 4.4%)
Location: `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js:110:25`
**Top callers:**
| `(anonymous)` | 298.96 ms | 247 |
**Top callees inside:**
| `runInThisContext` | 132.46 ms | 106 |
| `(anonymous)` | 16.25 ms | 21 |
| `(anonymous)` | 3.75 ms | 3 |
| `(anonymous)` | 3.75 ms | 3 |
| `(anonymous)` | 1.25 ms | 1 |
**Call pattern signal:** Single caller — if result is deterministic, consider memoization.
### `(anonymous)` (8.79 ms self, 0.3%)
Location: `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/flow-upegUFFJ.js:9:23`
**Top callers:**
| `(anonymous)` | 16.25 ms | 21 |
**Top callees inside:**
| `(anonymous)` | 7.46 ms | 14 |
### `(anonymous)` (3.79 ms self, 0.1%)
Location: `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js:57:20`
**Top callers:**
| `(anonymous)` | 25.17 ms | 23 |
**Top callees inside:**
| `(anonymous)` | 7.54 ms | 6 |
| `(anonymous)` | 5.04 ms | 5 |
| `(anonymous)` | 5.00 ms | 6 |
| `(anonymous)` | 1.29 ms | 1 |
| `(anonymous)` | 1.25 ms | 1 |
### `findInDirectory` (2.54 ms self, 0.1%)
Location: `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/prettier-BvPMcj5n.js:9508:31`
**Top callers:**
| `(root)` | 3.79 ms | 3 |
**Top callees inside:**
| `filter` | 1.25 ms | 1 |
### `(anonymous)` (2.50 ms self, 0.1%)
Location: `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/html-DfTbHn3r.js:1964:112`
**Top callers:**
| `Ri` | 2.50 ms | 2 |
## By Source File
| `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/module-evaluator.js` | 136.50 ms | 901.79 ms | 745 | Deps |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/dist--xku3Vyh.js` | 50.38 ms | 1066.37 ms | 928 | App |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/flow-upegUFFJ.js` | 14.96 ms | 83.13 ms | 145 | App |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/prettier-BvPMcj5n.js` | 13.21 ms | 74.47 ms | 68 | App |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/html-DfTbHn3r.js` | 8.42 ms | 72.17 ms | 59 | App |
| `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+runner@4.0.15/node_modules/@vitest/runner/dist/index.js` | 7.33 ms | 24.42 ms | 21 | Deps |
| `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vite@7.3.0_@types+node@24.1.0_jiti@2.6.1_terser@5.44.1/node_modules/vite/dist/node/module-runner.js` | 5.92 ms | 326.29 ms | 271 | Deps |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/babel-Ds1ilLK4.js` | 3.79 ms | 40.38 ms | 32 | App |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/typescript-CYBlFpU0.js` | 3.75 ms | 6.25 ms | 5 | App |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/postcss-B18KV238.js` | 3.75 ms | 25.00 ms | 20 | App |
| `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+expect@4.0.15/node_modules/@vitest/expect/dist/index.js` | 3.08 ms | 4.13 ms | 4 | Deps |
| `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/vitest@4.0.15_@types+node@24.1.0_@vitest+browser-playwright@4.0.15_happy-dom@20.0.11_jiti@2.6.1_terser@5.44.1/node_modules/vitest/dist/chunks/vi.2VT5v0um.js` | 2.38 ms | 11.92 ms | 11 | Deps |
| `file:///Users/qing/p/github/oxc_formatter/node_modules/.pnpm/@vitest+spy@4.0.15/node_modules/@vitest/spy/dist/index.js` | 1.25 ms | 1.25 ms | 1 | Deps |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/estree-BHX6cYnM.js` | 1.25 ms | 8.83 ms | 8 | App |
| `file:///Users/qing/p/github/oxc_formatter/apps/oxfmt/dist/angular-cPIPFXzo.js` | 1.25 ms | 1.25 ms | 1 | App |
## By Dependency Package
| `vitest` | 142.46 ms | 88.9% | `_runInlinedModule` |
| `@vitest/runner` | 7.33 ms | 4.6% | `(anonymous)` |
| `vite` | 5.92 ms | 3.7% | `cachedRequest` |
| `@vitest/expect` | 3.08 ms | 1.9% | `setState` |
| `@vitest/spy` | 1.25 ms | 0.8% | `(anonymous)` |
| `@vitest/snapshot` | 0.29 ms | 0.2% | `parseSingleV8Stack` |
## Native Addon Analysis
**Native inclusive time:** 26.96 ms (0.9%)
**Top JS entrypoints into native:**
- (No native function calls detected in visible frames)
**What you can/can't conclude:**
- Native time includes C++ addon work and V8 internal operations
- Cannot optimize native code directly—focus on reducing call frequency
- Consider caching results or batching operations if native calls are expensive
## GC & Allocation Signals
**GC time:** 5.21 ms (0.2%) — Normal GC overhead
## Recommendations
No critical or high-impact functions detected.
The CPU time is well-distributed. Consider:
- Profiling under higher load to surface bottlenecks
- Checking I/O or network latency if overall performance is still slow
---
## Appendix: Methodology
**Stack reconstruction:** V8 captures stack samples at regular intervals. Each sample records the complete call stack from root to the currently executing function.
**Self time:** Time where a function is at the top of the stack (the leaf). This is CPU time spent *directly* in that function's code, not in its callees.
**Inclusive time:** Time where a function appears *anywhere* in the stack. This includes self time plus time in all functions it calls.
**Category classification:**
- **App:** Code from your project (not in `node_modules`)
- **Deps:** Code from `node_modules`
- **Node.js internal:** Core Node.js modules (`node:*`)
- **V8/Native:** V8 engine internals and native C++ addons