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

JDK-8297796 GenShen: instrument the remembered set scan #176

Closed
wants to merge 69 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
0068179
Elaborate some comments; remove unused overreach related methods and …
ysramakrishna Aug 7, 2022
d8619e2
Fix an issue with cacnellation in
ysramakrishna Aug 8, 2022
1a2068e
Leave cancel/yield in ShenandoahScanRemeberedTask::do_work() disabled,
ysramakrishna Aug 8, 2022
aec3ef6
Merge branch 'openjdk:master' into JVM-1264
ysramakrishna Aug 9, 2022
290468c
The beginnings of instrumentation for card statistics for GenShen.
ysramakrishna Aug 15, 2022
5538175
Add basic logging of instrumentation data. Correct some
ysramakrishna Aug 15, 2022
0f721d0
Fix a bug in instrumentation & assertions.
ysramakrishna Aug 15, 2022
408cb7f
Merge branch 'master' into JVM-1264
ysramakrishna Aug 15, 2022
1b62612
Card stats can be locally allocated; related cleanups.
ysramakrishna Aug 17, 2022
44a6fc5
Refine metrics, add additional instrumentation sites.
ysramakrishna Aug 17, 2022
744713c
Fix configuration of the number of workers used in concurrent remembered
ysramakrishna Aug 18, 2022
6876645
Merge branch 'master' into JVM-1264
ysramakrishna Oct 4, 2022
6e37dab
Merge branch 'master' into JVM-1264
ysramakrishna Nov 16, 2022
e460809
Fix merge error.
ysramakrishna Nov 17, 2022
25f467e
Merge branch 'master' into JVM-1264
ysramakrishna Nov 17, 2022
f8c16ec
JVM-1264: extract stats maintenance into ShenandoahCardStats & formalize
ysramakrishna Nov 21, 2022
0842f84
Complete instrumentation, protected by preprocessor flag.
ysramakrishna Nov 22, 2022
503c0d0
Remove the no longer used "worker_id"; we might need to reintroduce it
ysramakrishna Nov 22, 2022
0b1c7c8
Merge branch 'master' into JVM-1264
ysramakrishna Nov 22, 2022
f229cc4
Local stats updates to avoid unnecessary synchronization.
ysramakrishna Nov 27, 2022
90e75dc
Need ParallelGCThreads worth of stats array because degenerate GCs use
ysramakrishna Nov 27, 2022
0220746
Enum to replaces hard-wired constants, up to 11, for indexing the row…
ysramakrishna Nov 28, 2022
932d654
Fix build when card stats are disabled.
ysramakrishna Nov 28, 2022
8f312e4
Fix typo in spelling of preprocessor option name.
ysramakrishna Nov 28, 2022
4f7d158
Protect card stats with a diagnostic shenandoah flag disabled by
ysramakrishna Nov 29, 2022
74598e3
Remove compile time preprocesor option.
ysramakrishna Nov 29, 2022
c86fc55
Disable card stats printing when disabled
ysramakrishna Nov 29, 2022
ed2cc51
Don't allocate stats arrays if not enabled. Should we decide we want
ysramakrishna Nov 29, 2022
436e549
Fix comment.
ysramakrishna Nov 29, 2022
e5166ad
Fix card_stats() so it doesn't crash when card stats aren't enabled.
ysramakrishna Nov 30, 2022
4deb71e
jcheck whitespace fixes.
ysramakrishna Dec 1, 2022
471eb41
Merge branch 'master' into JVM-1264
ysramakrishna Dec 2, 2022
b6d357e
Merge branch 'master' into JVM-1264
ysramakrishna Dec 6, 2022
734b468
Card stats only in non-product mode (until impact of stats collection is
ysramakrishna Dec 8, 2022
f566957
Merge branch 'master' into JVM-1264
ysramakrishna Dec 8, 2022
c0a4a9d
Moved some more methods into non-product mode.
ysramakrishna Dec 8, 2022
d857547
NOT_PRODUCT() for the stats allocation. Although the stats colelction
ysramakrishna Dec 9, 2022
488c939
Merge branch 'master' into JVM-1264
ysramakrishna Dec 9, 2022
388a03d
Extract ShenandoahCardStats into its own {.h,.c}pp files.
ysramakrishna Dec 12, 2022
0d65158
Separated out stats for scan_rs and update_refs
ysramakrishna Dec 12, 2022
55ffff5
First cut at merge. More changes to come. May not build yet.
ysramakrishna Dec 12, 2022
a6b1a23
Cumulative card stats separated out for scan_rs and update_refs phases;
ysramakrishna Dec 12, 2022
d5b337b
jcheck clean
ysramakrishna Dec 12, 2022
65d28df
Interim checkin of code w/beginnings of merge() support. Some
ysramakrishna Dec 13, 2022
7ce8c52
More merge() implementation.
ysramakrishna Dec 13, 2022
436163a
Merge branch 'stats_merge' into JVM-1264
ysramakrishna Dec 14, 2022
695851d
Remove stubs (guarantee/false).
ysramakrishna Dec 14, 2022
75c0926
Tested and fixed some bugs; printing frequency of cumulative stats co…
ysramakrishna Dec 15, 2022
75933a5
Merge branch 'master' into JVM-1264
ysramakrishna Dec 15, 2022
c235d9f
Merge branch 'master' into stats_merge
ysramakrishna Dec 15, 2022
bd0354c
Changes based on experience with uses in RS scan stats.
ysramakrishna Dec 15, 2022
b77918e
Vanilla merge test for ShenandoahNumberSeq; needs to be extended some.
ysramakrishna Dec 15, 2022
fd1cd32
gtest for merge.
ysramakrishna Dec 16, 2022
f226340
Safety tests for decayed stats, until implemented.
ysramakrishna Dec 16, 2022
06c7e98
Merge branch 'master' into stats_merge
ysramakrishna Dec 16, 2022
616547d
Merge branch 'master' into JVM-1264
ysramakrishna Dec 16, 2022
31dc7d8
Merge branch 'JVM-1264' into JVM-1264-dependent
ysramakrishna Dec 16, 2022
926d373
Remove an unnecessary include, fix some type incorrectness.
ysramakrishna Dec 16, 2022
539d719
Fix some tier1 tests.
ysramakrishna Dec 16, 2022
c6e0173
Fix compiler error on windows.
ysramakrishna Dec 16, 2022
feeef3c
jcheck space fix
ysramakrishna Dec 16, 2022
58731ec
Merge branch 'master' into stats_merge
ysramakrishna Dec 19, 2022
06f7ead
Merge branch 'stats_merge' into JVM-1264-dependent
ysramakrishna Dec 19, 2022
6785347
Add a previously missed ticket#. Doing it here rather than in parent to
ysramakrishna Dec 19, 2022
9c5c741
Merge branch 'master' into JVM-1264-dependent
ysramakrishna Dec 19, 2022
1bc59f8
Reword some code comments for greater clarity.
ysramakrishna Dec 21, 2022
bfddb22
A couple of changes based on review feedback.
ysramakrishna Dec 22, 2022
4e5ad4c
Merge branch 'master' into JVM-1264
ysramakrishna Dec 22, 2022
cf8c7e5
Fix some comments based on review feedback.
ysramakrishna Dec 28, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -835,7 +835,7 @@ void ShenandoahScanRemembered<RememberedSet>::log_worker_card_stats(uint worker_
assert(ShenandoahEnableCardStats, "Do not call");

HdrSeq* worker_card_stats = card_stats(worker_id);
log_info(gc, remset)("Worker %u Card Stats Histo: ", worker_id);
log_info(gc, remset)("Worker %u Card Stats: ", worker_id);
log_card_stats(worker_card_stats);
// Merge worker stats into the cumulative stats & clear worker stats
merge_worker_card_stats_cumulative(worker_card_stats, cum_stats);
3 changes: 2 additions & 1 deletion src/hotspot/share/gc/shenandoah/shenandoah_globals.hpp
Original file line number Diff line number Diff line change
@@ -546,7 +546,8 @@
"Enable statistics collection related to clean & dirty cards") \
\
notproduct(int, ShenandoahCardStatsLogInterval, 50, \
"Log cumulative card stats every so many cycles") \
"Log cumulative card stats every so many remembered set or " \
"update refs scans") \
// end of GC_SHENANDOAH_FLAGS

#endif // SHARE_GC_SHENANDOAH_SHENANDOAH_GLOBALS_HPP