Skip to content

Commit

Permalink
doc: add overhead hints for heap snapshot generation
Browse files Browse the repository at this point in the history
Added some hints that creation of an heap snapshot has significant
overhead on memory requirement and event loop utilization.

PR-URL: #41822
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
  • Loading branch information
Flarna authored and danielleadams committed Mar 14, 2022
1 parent 42c0a83 commit 3f000a2
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions doc/api/v8.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,13 @@ This JSON stream format is intended to be used with tools such as
Chrome DevTools. The JSON schema is undocumented and specific to the
V8 engine. Therefore, the schema may change from one version of V8 to the next.

Creating a heap snapshot requires memory about twice the size of the heap at
the time the snapshot is created. This results in the risk of OOM killers
terminating the process.

Generating a snapshot is a synchronous operation which blocks the event loop
for a duration depending on the heap size.

```js
// Print heap snapshot to the console
const v8 = require('v8');
Expand Down Expand Up @@ -284,6 +291,13 @@ A heap snapshot is specific to a single V8 isolate. When using
[worker threads][], a heap snapshot generated from the main thread will
not contain any information about the workers, and vice versa.

Creating a heap snapshot requires memory about twice the size of the heap at
the time the snapshot is created. This results in the risk of OOM killers
terminating the process.

Generating a snapshot is a synchronous operation which blocks the event loop
for a duration depending on the heap size.

```js
const { writeHeapSnapshot } = require('v8');
const {
Expand Down

0 comments on commit 3f000a2

Please sign in to comment.