ソース情報
- リポジトリ
- nodejs/node
- ソースの最終更新活動
- 2026年10月4日 21:04
- 検出された SKILL.md の言語
- 英語
- スター
- 122,301
- フォーク
- 39,450
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
SKILL.md を表示中
SKILL.md
ソースの指示 · 読み取り専用プレビュー- name
- v8-profile
- description
- Profiling V8 execution.
# V8 Profiling
This skill explains how to profile V8 execution using native tools to understand
where time is spent. Make sure to only profile on a quiet system to get the best
results.
## Linux Profiling
On Linux, prefer using the `./tools/profiling/linux-perf-d8.py` script. This
script automates the process of running Linux `perf` with V8, and critically, it
runs `perf inject --jit` afterwards to ensure that JIT-compiled JavaScript
function names are resolved in the profile.
### Usage
```bash
./tools/profiling/linux-perf-d8.py [OPTIONS] <path_to_d8> [D8_OPTIONS] <script.js> [-- <script_args>]
```
Use the `--help` option and `docs/linux-perf.md` for further information.
**Example:**
```bash
./tools/profiling/linux-perf-d8.py out/release/d8 harness.js -- core.js data.json
```
The script will generate a `.perf.data.jitted` file in the output directory
(defaults to current directory or specified by `--perf-data-dir`).
If you get too few ticks, you can run a script multiple times and combine all
the profiles using `pprof`.
### Analysis
To view the report, use `perf report`:
```bash
perf report --stdio -i path/to/file.perf.data.jitted
```
## Other Platforms (or fallback)
For all other platforms, or when `perf` is not available, use the
platform-specific tick processor script in `./tools/`. These tools analyze the
`v8.log` file generated by V8's built-in profiler.
### Available Scripts
- **Linux:** `./tools/linux-tick-processor`
- **macOS:** `./tools/mac-tick-processor`
- **Windows:** `./tools/windows-tick-processor.bat`
- **FreeBSD:** `./tools/freebsd-tick-processor`
### Usage
1. **Generate the log:** Run `d8` with the `--prof` flag.
```bash
<path_to_d8> --prof <script.js>
```
This generates a `v8.log` file.
2. **Analyze the log:** Run the appropriate script for your platform on the log
file.
```bash
./tools/linux-tick-processor v8.log
```
## Performance Warning
**CRITICAL:** Do NOT use heavy logging flags (like `--trace-ic`,
`--trace-deopt`, `--trace-gc`) in parallel with profiling unless explicitly
investigating those specific events. Heavy logging significantly affects
performance and will distort the profile results, leading to inaccurate
conclusions about where time is spent in normal execution.
GitHubで見る