Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8252842: Extend jmap to support parallel heap dump #2261

Closed
wants to merge 52 commits into from
Closed
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
aff8459
8252842: Extend jmap to support parallel heap dump
linzang Jan 27, 2021
d6fd93a
fix white space trailing issue
linzang Jan 27, 2021
89d45a7
Do not expose parallel thread number to user
linzang Jan 28, 2021
03c0a96
code refine
linzang Jan 30, 2021
fb28c13
fix buffer queue issue
linzang Jan 30, 2021
0671915
Merge branch 'master' into par-dump
linzang Feb 3, 2021
016218b
Fix logic in thread number calculation and code refine
linzang Feb 3, 2021
b477665
Add dumpheapext command for extra argument passing
linzang Feb 12, 2021
44ea792
use parallel= option instead of noparallel
linzang Feb 18, 2021
375e673
Merge branch 'master' into pd
linzang Feb 18, 2021
1af0e1e
hide the dumpheapext error message
linzang Feb 19, 2021
0301a74
fix build fail issue on windows
linzang Feb 19, 2021
f0b60d7
Merge master
linzang Feb 27, 2021
6789ba2
Revise jmap help info
linzang Feb 27, 2021
d636a14
reduce memory consumption and fix memory leak issue
linzang Mar 8, 2021
1e58390
fix trailing white space issue
linzang Mar 10, 2021
370e441
code clean
linzang Mar 11, 2021
de05100
Merge branch 'master' into par-dump
linzang Mar 15, 2021
7d10c8f
Merge branch 'master' into par-dump
linzang Mar 17, 2021
f0c8a6e
resize large object threshold
linzang Mar 22, 2021
d815583
Revert "hide the dumpheapext error message"
linzang Mar 22, 2021
4f221bd
remove parallel option and dumpheapext command
linzang Mar 22, 2021
b6cc10e
Typo fix
linzang Mar 29, 2021
301cf8c
Merge branch 'master' into par-dump
linzang Mar 29, 2021
997784b
Merge branch 'master' into par-dump
linzang Apr 14, 2021
f46ba5d
refine with several fix
linzang Apr 26, 2021
6d14790
Merge branch 'master' into par-dump
linzang Apr 26, 2021
bf6d022
code refine and typo fix
May 6, 2021
a06772a
undo JMap.java
linzang May 11, 2021
5c0863a
Merge branch 'master' into par-dump
linzang May 11, 2021
2fe3146
update copyright info
linzang May 12, 2021
6d8e944
Merge branch 'master' into pd
linzang May 12, 2021
ca5e696
Merge branch 'master'
linzang May 19, 2021
d03e994
fix build issue after rebase and fix one issue
linzang May 19, 2021
6aee4a4
Merge branch 'master' into par-dump
Jun 4, 2021
78c2c76
Merge branch 'master' into par-dump
Jun 7, 2021
aac98ea
Merge branch 'master' into par-dump
linzang Jul 26, 2021
16fb1e2
fix build issue
linzang Jul 26, 2021
5268e5d
Merge branch 'master' into par-dump
Aug 13, 2021
062110e
Merge branch 'master' into par-dump
linzang Sep 6, 2021
16f867a
fix build error
linzang Sep 6, 2021
4aa73e4
remove gzipaccessor
linzang Sep 8, 2021
2ea1e02
Merge branch 'master' of https://github.com/openjdk/jdk
linzang Sep 13, 2021
e1c5f13
Merge branch 'master' into par-dump
linzang Sep 13, 2021
09a7a07
rewrite dumper and writer number calculation logic
linzang Sep 13, 2021
22b9305
fix build error
linzang Sep 14, 2021
9c81d83
Merge branch 'master' of https://github.com/openjdk/jdk
linzang Sep 14, 2021
8e4116c
Merge branch 'master' into pd-fix
linzang Sep 14, 2021
26255e3
fix parallel issue
linzang Sep 14, 2021
64d72db
fix issue
linzang Sep 15, 2021
272c632
code refine
Sep 16, 2021
fcc2674
fix build issue
Sep 16, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
@@ -243,11 +243,15 @@ jint dump_heap(AttachOperation* op, outputStream* out) {
return JNI_ERR;
}
}
// Parallel thread number for heap dump, initialize based on active processor count.
// Note the real number of threads used is also determined by active workers and compression
// backend thread number. See heapDumper.cpp.
uint parallel_thread_num = MAX2<uint>(1, (uint)os::initial_active_processor_count() * 3 / 8);
// Request a full GC before heap dump if live_objects_only = true
// This helps reduces the amount of unreachable objects in the dump
// and makes it easier to browse.
HeapDumper dumper(live_objects_only /* request GC */);
dumper.dump(op->arg(0), out, (int)level);
dumper.dump(path, out, (int)level, false, (uint)parallel_thread_num);
}
linzang marked this conversation as resolved.
Show resolved Hide resolved
return JNI_OK;
}