| <!-- |
| * Copyright (c) 2017, 2021 IBM Corp. and others |
| * |
| * This program and the accompanying materials are made |
| * available under the terms of the Eclipse Public License 2.0 |
| * which accompanies this distribution and is available at |
| * https://www.eclipse.org/legal/epl-2.0/ or the Apache |
| * License, Version 2.0 which accompanies this distribution and |
| * is available at https://www.apache.org/licenses/LICENSE-2.0. |
| * |
| * This Source Code may also be made available under the |
| * following Secondary Licenses when the conditions for such |
| * availability set forth in the Eclipse Public License, v. 2.0 |
| * are satisfied: GNU General Public License, version 2 with |
| * the GNU Classpath Exception [1] and GNU General Public |
| * License, version 2 with the OpenJDK Assembly Exception [2]. |
| * |
| * [1] https://www.gnu.org/software/classpath/license.html |
| * [2] http://openjdk.java.net/legal/assembly-exception.html |
| * |
| * SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH |
| * Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception |
| --> |
| |
| |
| |
| |
| <!DOCTYPE html> |
| <html lang="en" class="no-js"> |
| <head> |
| |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width,initial-scale=1"> |
| <meta http-equiv="x-ua-compatible" content="ie=edge"> |
| |
| <meta name="description" content="Eclipse OpenJ9 documentation"> |
| |
| |
| <link rel="canonical" href="https://www.eclipse.org/openj9/docs/vgclog_examples/"> |
| |
| |
| |
| <meta name="lang:clipboard.copy" content=""> |
| |
| <meta name="lang:clipboard.copied" content=""> |
| |
| <meta name="lang:search.language" content=""> |
| |
| <meta name="lang:search.pipeline.stopwords" content=""> |
| |
| <meta name="lang:search.pipeline.trimmer" content=""> |
| |
| <meta name="lang:search.result.none" content=""> |
| |
| <meta name="lang:search.result.one" content=""> |
| |
| <meta name="lang:search.result.other" content=""> |
| |
| <meta name="lang:search.tokenizer" content=""> |
| |
| <link rel="shortcut icon" href="../cr/oj9logo_img9.ico"> |
| <meta name="generator" content="mkdocs-1.0.4, mkdocs-material-3.0.4"> |
| |
| |
| |
| <title>Log examples - </title> |
| |
| |
| |
| <link rel="stylesheet" href="../assets/stylesheets/application.1b62728e.css"> |
| |
| <link rel="stylesheet" href="../assets/stylesheets/application-palette.a8b3c06d.css"> |
| |
| |
| |
| |
| <meta name="theme-color" content="#00bcd4"> |
| |
| |
| |
| <script src="../assets/javascripts/modernizr.268332fc.js"></script> |
| |
| |
| |
| <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin> |
| <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono"> |
| <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style> |
| |
| |
| <link rel="stylesheet" href="../assets/fonts/material-icons.css"> |
| |
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> |
| |
| <link rel="stylesheet" href="../stylesheets/oj9.css"> |
| |
| |
| <!-- Google Tag Manager --> |
| <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': |
| new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], |
| j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= |
| 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f (https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore%28j,f) ); |
| })(window,document,'script','dataLayer','GTM-5WLCZXC');</script> |
| <!-- End Google Tag Manager --> |
| </head> |
| |
| |
| |
| <body dir="" data-md-color-primary="cyan" data-md-color-accent="cyan"> |
| |
| <svg class="md-svg"> |
| <defs> |
| |
| |
| <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448" viewBox="0 0 416 448" id="__github"><path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19T128 352t-18.125-8.5-10.75-19T96 304t3.125-20.5 10.75-19T128 256t18.125 8.5 10.75 19T160 304zm160 0q0 10-3.125 20.5t-10.75 19T288 352t-18.125-8.5-10.75-19T256 304t3.125-20.5 10.75-19T288 256t18.125 8.5 10.75 19T320 304zm40 0q0-30-17.25-51T296 232q-10.25 0-48.75 5.25Q229.5 240 208 240t-39.25-2.75Q130.75 232 120 232q-29.5 0-46.75 21T56 304q0 22 8 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0 37.25-1.75t35-7.375 30.5-15 20.25-25.75T360 304zm56-44q0 51.75-15.25 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5T212 416q-19.5 0-35.5-.75t-36.875-3.125-38.125-7.5-34.25-12.875T37 371.5t-21.5-28.75Q0 312 0 260q0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25 30.875Q171.5 96 212 96q37 0 70 8 26.25-20.5 46.75-30.25T376 64q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34 99.5z"/></svg> |
| |
| </defs> |
| </svg> |
| <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off"> |
| <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off"> |
| <label class="md-overlay" data-md-component="overlay" for="__drawer"></label> |
| |
| <a href="../#log-examples" tabindex="1" class="md-skip"> |
| |
| </a> |
| |
| |
| <!-- |
| * Copyright (c) 2017, 2021 IBM Corp. and others |
| * |
| * This program and the accompanying materials are made |
| * available under the terms of the Eclipse Public License 2.0 |
| * which accompanies this distribution and is available at |
| * https://www.eclipse.org/legal/epl-2.0/ or the Apache |
| * License, Version 2.0 which accompanies this distribution and |
| * is available at https://www.apache.org/licenses/LICENSE-2.0. |
| * |
| * This Source Code may also be made available under the |
| * following Secondary Licenses when the conditions for such |
| * availability set forth in the Eclipse Public License, v. 2.0 |
| * are satisfied: GNU General Public License, version 2 with |
| * the GNU Classpath Exception [1] and GNU General Public |
| * License, version 2 with the OpenJDK Assembly Exception [2]. |
| * |
| * [1] https://www.gnu.org/software/classpath/license.html |
| * [2] http://openjdk.java.net/legal/assembly-exception.html |
| * |
| * SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH |
| * Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception |
| --> |
| <header class="md-header" data-md-component="header"> |
| <nav class="md-header-nav md-grid"> |
| <div class="md-flex"> |
| <div class="md-flex__cell md-flex__cell--shrink"> |
| <a href="https://www.eclipse.org/openj9/docs" title=" " class="md-header-nav__button md-logo"> |
| |
| <img src="../cr/openj9_6b.png"> |
| |
| </a> |
| </div> |
| <div class="md-flex__cell md-flex__cell--shrink"> |
| <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label> |
| </div> |
| <div class="md-flex__cell md-flex__cell--stretch"> |
| <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title"> |
| </div> |
| </div> |
| <div class="md-flex__cell md-flex__cell--shrink"> |
| |
| |
| <label class="md-icon md-icon--search md-header-nav__button" for="search"></label> |
| |
| <div class="md-search" data-md-component="search" role="dialog"> |
| <label class="md-search__overlay" for="__search"></label> |
| <div class="md-search__inner" role="search"> |
| <form class="md-search__form" name="search"> |
| <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active"> |
| <label class="md-icon md-search__icon" for="__search"></label> |
| <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1"> |
|  |
| </button> |
| </form> |
| <div class="md-search__output"> |
| <div class="md-search__scrollwrap" data-md-scrollfix> |
| <div class="md-search-result" data-md-component="result"> |
| <div class="md-search-result__meta"> |
| |
| </div> |
| <ol class="md-search-result__list"></ol> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| |
| </div> |
| |
| <div class="md-flex__cell md-flex__cell--shrink"> |
| <div class="md-header-nav__source"> |
| |
| |
| |
| |
| |
| <a href="https://github.com/eclipse/openj9/" title="Go to repository" class="md-source" data-md-source="github"> |
| |
| <div class="md-source__icon"> |
| <svg viewBox="0 0 24 24" width="24" height="24"> |
| <use xlink:href="#__github" width="24" height="24"></use> |
| </svg> |
| </div> |
| |
| <div class="md-source__repository"> |
| eclipse/openj9 |
| </div> |
| </a> |
| </div> |
| </div> |
| |
| |
| </div> |
| </nav> |
| </header> |
| |
| |
| <div class="md-container"> |
| |
| |
| |
| |
| <main class="md-main"> |
| <div class="md-main__inner md-grid" data-md-component="container"> |
| |
| |
| <div class="md-sidebar md-sidebar--primary" data-md-component="navigation"> |
| <div class="md-sidebar__scrollwrap"> |
| <div class="md-sidebar__inner"> |
| <nav class="md-nav md-nav--primary" data-md-level="0"> |
| <label class="md-nav__title md-nav__title--site" for="__drawer"> |
| <a href="https://www.eclipse.org/openj9/docs" title=" " class="md-nav__button md-logo"> |
| |
| <img src="../cr/openj9_6b.png" width="48" height="48"> |
| |
| </a> |
| |
| </label> |
| |
| <div class="md-nav__source"> |
| |
| |
| |
| |
| |
| <a href="https://github.com/eclipse/openj9/" title="Go to repository" class="md-source" data-md-source="github"> |
| |
| <div class="md-source__icon"> |
| <svg viewBox="0 0 24 24" width="24" height="24"> |
| <use xlink:href="#__github" width="24" height="24"></use> |
| </svg> |
| </div> |
| |
| <div class="md-source__repository"> |
| eclipse/openj9 |
| </div> |
| </a> |
| </div> |
| |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href=".." title="About the docs" class="md-nav__link"> |
| About the docs |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../builds/" title="OpenJ9 builds" class="md-nav__link"> |
| OpenJ9 builds |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../introduction/" title="Getting started" class="md-nav__link"> |
| Getting started |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../openj9_newuser/" title="New to OpenJ9?" class="md-nav__link"> |
| New to OpenJ9? |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5"> |
| |
| <label class="md-nav__link" for="nav-5"> |
| Release notes |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="1"> |
| <label class="md-nav__title" for="nav-5"> |
| Release notes |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../openj9_releases/" title="Overview" class="md-nav__link"> |
| Overview |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.25/" title="Version 0.25.0" class="md-nav__link"> |
| Version 0.25.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.24/" title="Version 0.24.0" class="md-nav__link"> |
| Version 0.24.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.23/" title="Version 0.23.0" class="md-nav__link"> |
| Version 0.23.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.22/" title="Version 0.22.0" class="md-nav__link"> |
| Version 0.22.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-6" type="checkbox" id="nav-5-6"> |
| |
| <label class="md-nav__link" for="nav-5-6"> |
| Earlier releases |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-5-6"> |
| Earlier releases |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.21/" title="Version 0.21.0" class="md-nav__link"> |
| Version 0.21.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.20/" title="Version 0.20.0" class="md-nav__link"> |
| Version 0.20.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.19/" title="Version 0.19.0" class="md-nav__link"> |
| Version 0.19.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.18/" title="Version 0.18.1" class="md-nav__link"> |
| Version 0.18.1 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.17/" title="Version 0.17.0" class="md-nav__link"> |
| Version 0.17.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.16/" title="Version 0.16.0" class="md-nav__link"> |
| Version 0.16.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.15/" title="Version 0.15.1" class="md-nav__link"> |
| Version 0.15.1 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.14/" title="Version 0.14.0" class="md-nav__link"> |
| Version 0.14.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.13/" title="Version 0.13.0" class="md-nav__link"> |
| Version 0.13.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.12/" title="Version 0.12.0" class="md-nav__link"> |
| Version 0.12.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.11/" title="Version 0.11.0" class="md-nav__link"> |
| Version 0.11.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.10/" title="Version 0.10.0" class="md-nav__link"> |
| Version 0.10.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.9/" title="Version 0.9.0" class="md-nav__link"> |
| Version 0.9.0 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../version0.8/" title="Version 0.8.0" class="md-nav__link"> |
| Version 0.8.0 |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--active md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-6" type="checkbox" id="nav-6" checked> |
| |
| <label class="md-nav__link" for="nav-6"> |
| Memory management |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="1"> |
| <label class="md-nav__title" for="nav-6"> |
| Memory management |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../allocation/" title="Heap allocation" class="md-nav__link"> |
| Heap allocation |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../gc_overview/" title="Garbage Collection (GC)" class="md-nav__link"> |
| Garbage Collection (GC) |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../gc/" title="GC policies" class="md-nav__link"> |
| GC policies |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--active md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-6-4" type="checkbox" id="nav-6-4" checked> |
| |
| <label class="md-nav__link" for="nav-6-4"> |
| Troubleshooting GC |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-6-4"> |
| Troubleshooting GC |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../vgclog/" title="Verbose GC logs" class="md-nav__link"> |
| Verbose GC logs |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--active"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc"> |
| |
| |
| |
| |
| <label class="md-nav__link md-nav__link--active" for="__toc"> |
| Log examples |
| </label> |
| |
| <a href="./" title="Log examples" class="md-nav__link md-nav__link--active"> |
| Log examples |
| </a> |
| |
| |
| <nav class="md-nav md-nav--secondary"> |
| |
| |
| |
| |
| |
| <label class="md-nav__title" for="__toc">On this page ...</label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| <li class="md-nav__item"> |
| <a href="#gencon-examples" class="md-nav__link"> |
| gencon examples |
| </a> |
| |
| <nav class="md-nav"> |
| <ul class="md-nav__list"> |
| |
| <li class="md-nav__item"> |
| <a href="#scavenge-partial-gc-cycle" class="md-nav__link"> |
| Scavenge partial GC cycle |
| </a> |
| |
| <nav class="md-nav"> |
| <ul class="md-nav__list"> |
| |
| <li class="md-nav__item"> |
| <a href="#summary-of-the-example" class="md-nav__link"> |
| Summary of the example |
| </a> |
| |
| </li> |
| |
| </ul> |
| </nav> |
| |
| </li> |
| |
| <li class="md-nav__item"> |
| <a href="#concurrent-scavenge-partial-gc-cycle-non-default" class="md-nav__link"> |
| Concurrent scavenge partial GC cycle (non-default) |
| </a> |
| |
| </li> |
| |
| <li class="md-nav__item"> |
| <a href="#gencon-global-gc-cycle" class="md-nav__link"> |
| gencon global GC cycle |
| </a> |
| |
| </li> |
| |
| <li class="md-nav__item"> |
| <a href="#summary-of-the-example_1" class="md-nav__link"> |
| Summary of the example |
| </a> |
| |
| </li> |
| |
| </ul> |
| </nav> |
| |
| </li> |
| |
| |
| |
| |
| |
| </ul> |
| |
| </nav> |
| |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../jit/" title="JIT Compiler" class="md-nav__link"> |
| JIT Compiler |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../jitserver/" title="JITServer (tech. preview)" class="md-nav__link"> |
| JITServer (tech. preview) |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../aot/" title="AOT Compiler" class="md-nav__link"> |
| AOT Compiler |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-10" type="checkbox" id="nav-10"> |
| |
| <label class="md-nav__link" for="nav-10"> |
| Class data sharing |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="1"> |
| <label class="md-nav__title" for="nav-10"> |
| Class data sharing |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../shrc/" title="Overview" class="md-nav__link"> |
| Overview |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../shrc_diag_util/" title="Diagnostic cache utilities" class="md-nav__link"> |
| Diagnostic cache utilities |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../attachapi/" title="Java Attach API" class="md-nav__link"> |
| Java Attach API |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-12" type="checkbox" id="nav-12"> |
| |
| <label class="md-nav__link" for="nav-12"> |
| Diagnostics |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="1"> |
| <label class="md-nav__title" for="nav-12"> |
| Diagnostics |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../diag_overview/" title="Overview" class="md-nav__link"> |
| Overview |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-12-2" type="checkbox" id="nav-12-2"> |
| |
| <label class="md-nav__link" for="nav-12-2"> |
| Dumps |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-12-2"> |
| Dumps |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dump_javadump/" title="Java dump" class="md-nav__link"> |
| Java dump |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dump_heapdump/" title="Heap dump" class="md-nav__link"> |
| Heap dump |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dump_systemdump/" title="System dump" class="md-nav__link"> |
| System dump |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-12-3" type="checkbox" id="nav-12-3"> |
| |
| <label class="md-nav__link" for="nav-12-3"> |
| Tools |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-12-3"> |
| Tools |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_jextract/" title="Dump extractor" class="md-nav__link"> |
| Dump extractor |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_jdmpview/" title="Dump viewer" class="md-nav__link"> |
| Dump viewer |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_traceformat/" title="Trace formatter" class="md-nav__link"> |
| Trace formatter |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_builder/" title="Option builder" class="md-nav__link"> |
| Option builder |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_jcmd/" title="Java command (jcmd) tool" class="md-nav__link"> |
| Java command (jcmd) tool |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_jmap/" title="Java memory map (jmap) tool" class="md-nav__link"> |
| Java memory map (jmap) tool |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_jps/" title="Java process status (jps)" class="md-nav__link"> |
| Java process status (jps) |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_jstack/" title="Java stack (jstack) tool" class="md-nav__link"> |
| Java stack (jstack) tool |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_jstat/" title="Java statistics monitoring (jstat) tool" class="md-nav__link"> |
| Java statistics monitoring (jstat) tool |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../tool_migration/" title="Switching to OpenJ9" class="md-nav__link"> |
| Switching to OpenJ9 |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-12-4" type="checkbox" id="nav-12-4"> |
| |
| <label class="md-nav__link" for="nav-12-4"> |
| Interfaces |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-12-4"> |
| Interfaces |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../interface_jvmti/" title="JVMTI" class="md-nav__link"> |
| JVMTI |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../interface_dtfj/" title="DTFJ" class="md-nav__link"> |
| DTFJ |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../interface_lang_management/" title="Language Management" class="md-nav__link"> |
| Language Management |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-13" type="checkbox" id="nav-13"> |
| |
| <label class="md-nav__link" for="nav-13"> |
| Command-line options |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="1"> |
| <label class="md-nav__title" for="nav-13"> |
| Command-line options |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../cmdline_specifying/" title="Specifying options" class="md-nav__link"> |
| Specifying options |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../cmdline_general/" title="Standard options" class="md-nav__link"> |
| Standard options |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../cmdline_migration/" title="Switching to OpenJ9" class="md-nav__link"> |
| Switching to OpenJ9 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-13-4" type="checkbox" id="nav-13-4"> |
| |
| <label class="md-nav__link" for="nav-13-4"> |
| System property options |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-13-4"> |
| System property options |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../d_jvm_commands/" title="Using System properties" class="md-nav__link"> |
| Using System properties |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmenableclasscaching/" title="-Dcom.ibm.enableClassCaching" class="md-nav__link"> |
| -Dcom.ibm.enableClassCaching |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmenablelegacydumpsecurity/" title="-Dcom.ibm.enableLegacyDumpSecurity" class="md-nav__link"> |
| -Dcom.ibm.enableLegacyDumpSecurity |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmenablelegacylogsecurity/" title="-Dcom.ibm.enableLegacyLogSecurity" class="md-nav__link"> |
| -Dcom.ibm.enableLegacyLogSecurity |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmenablelegacytracesecurity/" title="-Dcom.ibm.enableLegacyTraceSecurity" class="md-nav__link"> |
| -Dcom.ibm.enableLegacyTraceSecurity |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmgpudisable/" title="-Dcom.ibm.gpu.disable" class="md-nav__link"> |
| -Dcom.ibm.gpu.disable |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmgpuenable/" title="-Dcom.ibm.gpu.enable" class="md-nav__link"> |
| -Dcom.ibm.gpu.enable |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmgpuverbose/" title="-Dcom.ibm.gpu.verbose" class="md-nav__link"> |
| -Dcom.ibm.gpu.verbose |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmlangmanagementosmxbeaniscputime100ns/" title="-Dcom.ibm.lang.management.OperatingSystemMXBean.isCpuTime100ns" class="md-nav__link"> |
| -Dcom.ibm.lang.management.OperatingSystemMXBean.isCpuTime100ns |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmlangmanagementverbose/" title="-Dcom.ibm.lang.management.verbose" class="md-nav__link"> |
| -Dcom.ibm.lang.management.verbose |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachcommand_timeout/" title="-Dcom.ibm.tools.attach.command_timeout" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.command_timeout |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachdirectory/" title="-Dcom.ibm.tools.attach.directory" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.directory |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachdisplayname/" title="-Dcom.ibm.tools.attach.displayName" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.displayName |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachenable/" title="-Dcom.ibm.tools.attach.enable" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.enable |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachid/" title="-Dcom.ibm.tools.attach.id" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.id |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachlogging/" title="-Dcom.ibm.tools.attach.logging" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.logging |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachlogname/" title="-Dcom.ibm.tools.attach.log.name" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.log.name |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachshutdown_timeout/" title="-Dcom.ibm.tools.attach.shutdown_timeout" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.shutdown_timeout |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dcomibmtoolsattachtimeout/" title="-Dcom.ibm.tools.attach.timeout" class="md-nav__link"> |
| -Dcom.ibm.tools.attach.timeout |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../dfileencoding/" title="-Dfile.encoding" class="md-nav__link"> |
| -Dfile.encoding |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djavacompiler/" title="-Djava.compiler" class="md-nav__link"> |
| -Djava.compiler |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djavalangstringsubstringnocopy/" title="-Djava.lang.string.substring.nocopy" class="md-nav__link"> |
| -Djava.lang.string.substring.nocopy |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djavalangstringbuffergrowaggressively/" title="-Djava.lang.stringBuffer.growAggressively" class="md-nav__link"> |
| -Djava.lang.stringBuffer.growAggressively |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djdknativecbc/" title="-Djdk.nativeCBC" class="md-nav__link"> |
| -Djdk.nativeCBC |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djdknativechacha20/" title="-Djdk.nativeChaCha20" class="md-nav__link"> |
| -Djdk.nativeChaCha20 |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djdknativecrypto/" title="-Djdk.nativeCrypto" class="md-nav__link"> |
| -Djdk.nativeCrypto |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djdknativedigest/" title="-Djdk.nativeDigest" class="md-nav__link"> |
| -Djdk.nativeDigest |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djdknativegcm/" title="-Djdk.nativeGCM" class="md-nav__link"> |
| -Djdk.nativeGCM |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../djdknativersa/" title="-Djdk.nativeRSA" class="md-nav__link"> |
| -Djdk.nativeRSA |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-13-5" type="checkbox" id="nav-13-5"> |
| |
| <label class="md-nav__link" for="nav-13-5"> |
| JVM -X options |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-13-5"> |
| JVM -X options |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../x_jvm_commands/" title="Using -X options" class="md-nav__link"> |
| Using -X options |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../x/" title="-X" class="md-nav__link"> |
| -X |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xaggressive/" title="-Xaggressive" class="md-nav__link"> |
| -Xaggressive |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xalwaysclassgc/" title="-Xalwaysclassgc" class="md-nav__link"> |
| -Xalwaysclassgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xaot/" title="-Xaot" class="md-nav__link"> |
| -Xaot |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xargencoding/" title="-Xargencoding" class="md-nav__link"> |
| -Xargencoding |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xbootclasspath/" title="-Xbootclasspath" class="md-nav__link"> |
| -Xbootclasspath |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xceehdlr/" title="-XCEEHDLR" class="md-nav__link"> |
| -XCEEHDLR |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcheck/" title="-Xcheck" class="md-nav__link"> |
| -Xcheck |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xclassgc/" title="-Xclassgc" class="md-nav__link"> |
| -Xclassgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcodecache/" title="-Xcodecache" class="md-nav__link"> |
| -Xcodecache |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcodecachetotal/" title="-Xcodecachetotal" class="md-nav__link"> |
| -Xcodecachetotal |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcomp/" title="-Xcomp" class="md-nav__link"> |
| -Xcomp |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcompactexplicitgc/" title="-Xcompactexplicitgc" class="md-nav__link"> |
| -Xcompactexplicitgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcompactgc/" title="-Xcompactgc" class="md-nav__link"> |
| -Xcompactgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcompilationthreads/" title="-XcompilationThreads" class="md-nav__link"> |
| -XcompilationThreads |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcompressedrefs/" title="-Xcompressedrefs" class="md-nav__link"> |
| -Xcompressedrefs |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xconcurrentbackground/" title="-Xconcurrentbackground" class="md-nav__link"> |
| -Xconcurrentbackground |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xconcurrentlevel/" title="-Xconcurrentlevel" class="md-nav__link"> |
| -Xconcurrentlevel |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xconcurrentslack/" title="-Xconcurrentslack" class="md-nav__link"> |
| -Xconcurrentslack |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xconmeter/" title="-Xconmeter" class="md-nav__link"> |
| -Xconmeter |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xenableexcessivegc/" title="-Xdisableexcessivegc" class="md-nav__link"> |
| -Xdisableexcessivegc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xenableexplicitgc/" title="-Xdisableexplicitgc" class="md-nav__link"> |
| -Xdisableexplicitgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xdisablejavadump/" title="-Xdisablejavadump" class="md-nav__link"> |
| -Xdisablejavadump |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xenablestringconstantgc/" title="-Xdisablestringconstantgc" class="md-nav__link"> |
| -Xdisablestringconstantgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xdump/" title="-Xdump" class="md-nav__link"> |
| -Xdump |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xenableexcessivegc/" title="-Xenableexcessivegc" class="md-nav__link"> |
| -Xenableexcessivegc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xenableexplicitgc/" title="-Xenableexplicitgc" class="md-nav__link"> |
| -Xenableexplicitgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xenablestringconstantgc/" title="-Xenablestringconstantgc" class="md-nav__link"> |
| -Xenablestringconstantgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xfastresolve/" title="-Xfastresolve" class="md-nav__link"> |
| -Xfastresolve |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xfuture/" title="-Xfuture" class="md-nav__link"> |
| -Xfuture |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xgc/" title="-Xgc" class="md-nav__link"> |
| -Xgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xgcsplitheap/" title="-Xgc:splitheap" class="md-nav__link"> |
| -Xgc:splitheap |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xgcpolicy/" title="-Xgcpolicy" class="md-nav__link"> |
| -Xgcpolicy |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xgcthreads/" title="-Xgcthreads" class="md-nav__link"> |
| -Xgcthreads |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xgcworkpackets/" title="-Xgcworkpackets" class="md-nav__link"> |
| -Xgcworkpackets |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xint/" title="-Xint" class="md-nav__link"> |
| -Xint |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xss/" title="-Xiss" class="md-nav__link"> |
| -Xiss |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xjit/" title="-Xjit" class="md-nav__link"> |
| -Xjit |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xjni/" title="-Xjni" class="md-nav__link"> |
| -Xjni |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlinenumbers/" title="-Xlinenumbers" class="md-nav__link"> |
| -Xlinenumbers |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xloa/" title="-Xloa" class="md-nav__link"> |
| -Xloa |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xloaminimum/" title="-Xloainitial" class="md-nav__link"> |
| -Xloainitial |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xloaminimum/" title="-Xloamaximum" class="md-nav__link"> |
| -Xloamaximum |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xloaminimum/" title="-Xloaminimum" class="md-nav__link"> |
| -Xloaminimum |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlockreservation/" title="-XlockReservation" class="md-nav__link"> |
| -XlockReservation |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlockword/" title="-Xlockword" class="md-nav__link"> |
| -Xlockword |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlog/" title="-Xlog" class="md-nav__link"> |
| -Xlog |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlp/" title="-Xlp" class="md-nav__link"> |
| -Xlp |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlpcodecache/" title="-Xlp:codecache" class="md-nav__link"> |
| -Xlp:codecache |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlpobjectheap/" title="-Xlp:objectheap" class="md-nav__link"> |
| -Xlp:objectheap |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmine/" title="-Xmaxe" class="md-nav__link"> |
| -Xmaxe |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xminf/" title="-Xmaxf" class="md-nav__link"> |
| -Xmaxf |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmint/" title="-Xmaxt" class="md-nav__link"> |
| -Xmaxt |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmca/" title="-Xmca" class="md-nav__link"> |
| -Xmca |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmca/" title="-Xmco" class="md-nav__link"> |
| -Xmco |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmcrs/" title="-Xmcrs" class="md-nav__link"> |
| -Xmcrs |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmine/" title="-Xmine" class="md-nav__link"> |
| -Xmine |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xminf/" title="-Xminf" class="md-nav__link"> |
| -Xminf |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmint/" title="-Xmint" class="md-nav__link"> |
| -Xmint |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmn/" title="-Xmn" class="md-nav__link"> |
| -Xmn |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmn/" title="-Xmns" class="md-nav__link"> |
| -Xmns |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmn/" title="-Xmnx" class="md-nav__link"> |
| -Xmnx |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmo/" title="-Xmo" class="md-nav__link"> |
| -Xmo |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmo/" title="-Xmoi" class="md-nav__link"> |
| -Xmoi |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmo/" title="-Xmos" class="md-nav__link"> |
| -Xmos |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmo/" title="-Xmox" class="md-nav__link"> |
| -Xmox |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmr/" title="-Xmr" class="md-nav__link"> |
| -Xmr |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmr/" title="-Xmrx" class="md-nav__link"> |
| -Xmrx |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xms/" title="-Xms" class="md-nav__link"> |
| -Xms |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xmso/" title="-Xmso" class="md-nav__link"> |
| -Xmso |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xms/" title="-Xmx" class="md-nav__link"> |
| -Xmx |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xaot/" title="-Xnoaot" class="md-nav__link"> |
| -Xnoaot |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xclassgc/" title="-Xnoclassgc" class="md-nav__link"> |
| -Xnoclassgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcompactexplicitgc/" title="-Xnocompactexplicitgc" class="md-nav__link"> |
| -Xnocompactexplicitgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcompactgc/" title="-Xnocompactgc" class="md-nav__link"> |
| -Xnocompactgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xcompressedrefs/" title="-Xnocompressedrefs" class="md-nav__link"> |
| -Xnocompressedrefs |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xjit/" title="-Xnojit" class="md-nav__link"> |
| -Xnojit |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xlinenumbers/" title="-Xnolinenumbers" class="md-nav__link"> |
| -Xnolinenumbers |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xloa/" title="-Xnoloa" class="md-nav__link"> |
| -Xnoloa |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsigcatch/" title="-Xnosigcatch" class="md-nav__link"> |
| -Xnosigcatch |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsigchain/" title="-Xnosigchain" class="md-nav__link"> |
| -Xnosigchain |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xnumanone/" title="-Xnuma:none" class="md-nav__link"> |
| -Xnuma:none |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xoptionsfile/" title="-Xoptionsfile" class="md-nav__link"> |
| -Xoptionsfile |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xquickstart/" title="-Xquickstart" class="md-nav__link"> |
| -Xquickstart |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xrs/" title="-Xrs" class="md-nav__link"> |
| -Xrs |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsamplingexpirationtime/" title="-XsamplingExpirationTime" class="md-nav__link"> |
| -XsamplingExpirationTime |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xscdmx/" title="-Xscdmx" class="md-nav__link"> |
| -Xscdmx |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xscminaot/" title="-Xscmaxaot" class="md-nav__link"> |
| -Xscmaxaot |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xscminjitdata/" title="-Xscmaxjitdata" class="md-nav__link"> |
| -Xscmaxjitdata |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xscminaot/" title="-Xscminaot" class="md-nav__link"> |
| -Xscminaot |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xscminjitdata/" title="-Xscminjitdata" class="md-nav__link"> |
| -Xscminjitdata |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xscmx/" title="-Xscmx" class="md-nav__link"> |
| -Xscmx |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xshareclasses/" title="-Xshareclasses" class="md-nav__link"> |
| -Xshareclasses |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsigcatch/" title="-Xsigcatch" class="md-nav__link"> |
| -Xsigcatch |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsigchain/" title="-Xsigchain" class="md-nav__link"> |
| -Xsigchain |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsignal/" title="-Xsignal" class="md-nav__link"> |
| -Xsignal |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsoftmx/" title="-Xsoftmx" class="md-nav__link"> |
| -Xsoftmx |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsoftrefthreshold/" title="-Xsoftrefthreshold" class="md-nav__link"> |
| -Xsoftrefthreshold |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xss/" title="-Xss" class="md-nav__link"> |
| -Xss |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xss/" title="-Xssi" class="md-nav__link"> |
| -Xssi |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xsyslog/" title="-Xsyslog" class="md-nav__link"> |
| -Xsyslog |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xtgc/" title="-Xtgc" class="md-nav__link"> |
| -Xtgc |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xthr/" title="-Xthr" class="md-nav__link"> |
| -Xthr |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xtlhprefetch/" title="-XtlhPrefetch" class="md-nav__link"> |
| -XtlhPrefetch |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xtrace/" title="-Xtrace" class="md-nav__link"> |
| -Xtrace |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xtunevirtualized/" title="-Xtune:virtualized" class="md-nav__link"> |
| -Xtune:virtualized |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xverbosegclog/" title="-Xverbosegclog" class="md-nav__link"> |
| -Xverbosegclog |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xverify/" title="-Xverify" class="md-nav__link"> |
| -Xverify |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xzero/" title="-Xzero" class="md-nav__link"> |
| -Xzero |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-13-6" type="checkbox" id="nav-13-6"> |
| |
| <label class="md-nav__link" for="nav-13-6"> |
| JVM -XX options |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-13-6"> |
| JVM -XX options |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xx_jvm_commands/" title="Using -XX options" class="md-nav__link"> |
| Using -XX options |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxactiveprocessorcount/" title="-XXActiveProcessorCount" class="md-nav__link"> |
| -XXActiveProcessorCount |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxallowvmshutdown/" title="-XXallowvmshutdown" class="md-nav__link"> |
| -XXallowvmshutdown |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxalwayspretouch/" title="-XX:[+|-]AlwaysPreTouch" class="md-nav__link"> |
| -XX:[+|-]AlwaysPreTouch |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxclassrelationshipverifier/" title="-XX:[+|-]ClassRelationshipVerifier" class="md-nav__link"> |
| -XX:[+|-]ClassRelationshipVerifier |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxconcgcthreads/" title="-XX:ConcGCThreads" class="md-nav__link"> |
| -XX:ConcGCThreads |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxcodecachetotal/" title="-XX:codecachetotal" class="md-nav__link"> |
| -XX:codecachetotal |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxcompactstrings/" title="-XX:[+|-]CompactStrings" class="md-nav__link"> |
| -XX:[+|-]CompactStrings |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxdiagnosesynconvaluebasedclasses/" title="-XX:DiagnoseSyncOnValueBasedClasses" class="md-nav__link"> |
| -XX:DiagnoseSyncOnValueBasedClasses |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxdisableexplicitgc/" title="-XX:[+|-]DisableExplicitGC" class="md-nav__link"> |
| -XX:[+|-]DisableExplicitGC |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxdisclaimjitscratch/" title="-XX:[+|-]DisclaimJitScratch" class="md-nav__link"> |
| -XX:[+|-]DisclaimJitScratch |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxenablecpumonitor/" title="-XX:[+|-]EnableCPUMonitor" class="md-nav__link"> |
| -XX:[+|-]EnableCPUMonitor |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxexitonoutofmemoryerror/" title="-XX:[+|-]ExitOnOutOfMemoryError" class="md-nav__link"> |
| -XX:[+|-]ExitOnOutOfMemoryError |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxgloballockreservation/" title="-XX:[+|-]GlobalLockReservation" class="md-nav__link"> |
| -XX:[+|-]GlobalLockReservation |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxhandlesigxfsz/" title="-XX:[+|-]HandleSIGXFSZ" class="md-nav__link"> |
| -XX:[+|-]HandleSIGXFSZ |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxhandlesigabrt/" title="-XX:[+|-]HandleSIGABRT" class="md-nav__link"> |
| -XX:[+|-]HandleSIGABRT |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxheapdumponoutofmemory/" title="-XX:[+|-]HeapDumpOnOutOfMemory" class="md-nav__link"> |
| -XX:[+|-]HeapDumpOnOutOfMemory |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxheapdumppath/" title="-XX:HeapDumpPath" class="md-nav__link"> |
| -XX:HeapDumpPath |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxheapmanagementmxbeancompatibility/" title="-XX:[+|-]HeapManagementMXBeanCompatibility" class="md-nav__link"> |
| -XX:[+|-]HeapManagementMXBeanCompatibility |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxidletuningcompactonidle/" title="-XX:[+|-]IdleTuningCompactOnIdle" class="md-nav__link"> |
| -XX:[+|-]IdleTuningCompactOnIdle |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxidletuninggconidle/" title="-XX:[+|-]IdleTuningGcOnIdle" class="md-nav__link"> |
| -XX:[+|-]IdleTuningGcOnIdle |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxidletuningminfreeheaponidle/" title="-XX:IdleTuningMinFreeHeapOnIdle" class="md-nav__link"> |
| -XX:IdleTuningMinFreeHeapOnIdle |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxidletuningminidlewaittime/" title="-XX:IdleTuningMinIdleWaitTime" class="md-nav__link"> |
| -XX:IdleTuningMinIdleWaitTime |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxignoreunrecognizedvmoptions/" title="-XX:[+|-]IgnoreUnrecognizedVMOptions" class="md-nav__link"> |
| -XX:[+|-]IgnoreUnrecognizedVMOptions |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxignoreunrecognizedxxcolonoptions/" title="-XX:[+|-]IgnoreUnrecognizedXXColonOptions" class="md-nav__link"> |
| -XX:[+|-]IgnoreUnrecognizedXXColonOptions |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxinitialrampercentage/" title="-XX:InitialRAMPercentage" class="md-nav__link"> |
| -XX:InitialRAMPercentage |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxinitialheapsize/" title="-XX:InitialHeapSize" class="md-nav__link"> |
| -XX:InitialHeapSize |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxinterleavememory/" title="-XX:[+|-]InterleaveMemory" class="md-nav__link"> |
| -XX:[+|-]InterleaveMemory |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxjitinlinewatches/" title="-XX:[+|-]JITInlineWatches" class="md-nav__link"> |
| -XX:[+|-]JITInlineWatches |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxlazysymbolresolution/" title="-XX:[+|-]LazySymbolResolution" class="md-nav__link"> |
| -XX:[+|-]LazySymbolResolution |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxlegacyxlogoption/" title="-XX:[+|-]LegacyXLogOption" class="md-nav__link"> |
| -XX:[+|-]LegacyXLogOption |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxmaxdirectmemorysize/" title="-XX:MaxDirectMemorySize" class="md-nav__link"> |
| -XX:MaxDirectMemorySize |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxinitialheapsize/" title="-XX:MaxHeapSize" class="md-nav__link"> |
| -XX:MaxHeapSize |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxinitialrampercentage/" title="-XX:MaxRAMPercentage" class="md-nav__link"> |
| -XX:MaxRAMPercentage |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxonoutofmemoryerror/" title="-XX:OnOutOfMemoryError" class="md-nav__link"> |
| -XX:OnOutOfMemoryError |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxoriginaljdk8heapsizecompatibilitymode/" title="-XX:[+|-]OriginalJDK8HeapSizeCompatibilityMode" class="md-nav__link"> |
| -XX:[+|-]OriginalJDK8HeapSizeCompatibilityMode |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxnosuballoc32bitmem/" title="-XXnosuballoc32bitmem" class="md-nav__link"> |
| -XXnosuballoc32bitmem |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxpagealigndirectmemory/" title="-XX:[+|-]PageAlignDirectMemory" class="md-nav__link"> |
| -XX:[+|-]PageAlignDirectMemory |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxparallelcmsthreads/" title="-XX:ParallelCMSThreads" class="md-nav__link"> |
| -XX:ParallelCMSThreads |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxparallelgcthreads/" title="-XX:ParallelGCThreads" class="md-nav__link"> |
| -XX:ParallelGCThreads |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxportablesharedcache/" title="-XX:[+|-]PortableSharedCache" class="md-nav__link"> |
| -XX:[+|-]PortableSharedCache |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxpositiveidentityhash/" title="-XX:[+|-]PositiveIdentityHash" class="md-nav__link"> |
| -XX:[+|-]PositiveIdentityHash |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxprintcodecache/" title="-XX:[+|-]PrintCodeCache" class="md-nav__link"> |
| -XX:[+|-]PrintCodeCache |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxprintflagsfinal/" title="-XX:[+|-]PrintFlagsFinal" class="md-nav__link"> |
| -XX:[+|-]PrintFlagsFinal |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxreadipinfoforras/" title="-XX:[+|-]ReadIPInfoForRAS" class="md-nav__link"> |
| -XX:[+|-]ReadIPInfoForRAS |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxreducecpumonitoroverhead/" title="-XX:[+|-]ReduceCPUMonitorOverhead" class="md-nav__link"> |
| -XX:[+|-]ReduceCPUMonitorOverhead |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxruntimeinstrumentation/" title="-XX:[+|-]RuntimeInstrumentation" class="md-nav__link"> |
| -XX:[+|-]RuntimeInstrumentation |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxsethwprefetch/" title="-XXsetHWPrefetch" class="md-nav__link"> |
| -XXsetHWPrefetch |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxshareanonymousclasses/" title="-XX:[+|-]ShareAnonymousClasses" class="md-nav__link"> |
| -XX:[+|-]ShareAnonymousClasses |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxshareclassesenablebci/" title="-XX:ShareClassesDisableBCI" class="md-nav__link"> |
| -XX:ShareClassesDisableBCI |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxshareclassesenablebci/" title="-XX:ShareClassesEnableBCI" class="md-nav__link"> |
| -XX:ShareClassesEnableBCI |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxsharedcachehardlimit/" title="-XX:SharedCacheHardLimit" class="md-nav__link"> |
| -XX:SharedCacheHardLimit |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxshareunsafeclasses/" title="-XX:[+|-]ShareUnsafeClasses" class="md-nav__link"> |
| -XX:[+|-]ShareUnsafeClasses |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxstacktraceinthrowable/" title="-XX:-StackTraceInThrowable" class="md-nav__link"> |
| -XX:-StackTraceInThrowable |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxtransparenthugepage/" title="-XX:[+|-]TransparentHugePage" class="md-nav__link"> |
| -XX:[+|-]TransparentHugePage |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxusecompressedoops/" title="-XX:[+|-]UseCompressedOops" class="md-nav__link"> |
| -XX:[+|-]UseCompressedOops |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxusecontainersupport/" title="-XX:[+|-]UseContainerSupport" class="md-nav__link"> |
| -XX:[+|-]UseContainerSupport |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxusegcstartuphints/" title="-XX:[+|-]UseGCStartupHints" class="md-nav__link"> |
| -XX:[+|-]UseGCStartupHints |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxusenogc/" title="-XX:[+|-]UseNoGC" class="md-nav__link"> |
| -XX:[+|-]UseNoGC |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxverboseverification/" title="-XX:[+|-]VerboseVerification" class="md-nav__link"> |
| -XX:[+|-]VerboseVerification |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../xxvmlockclassloader/" title="-XX:[+|-]VMLockClassLoader" class="md-nav__link"> |
| -XX:[+|-]VMLockClassLoader |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-14" type="checkbox" id="nav-14"> |
| |
| <label class="md-nav__link" for="nav-14"> |
| Reference |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="1"> |
| <label class="md-nav__title" for="nav-14"> |
| Reference |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../openj9_support/" title="Supported environments" class="md-nav__link"> |
| Supported environments |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../openj9_defaults/" title="Default settings" class="md-nav__link"> |
| Default settings |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../openj9_signals/" title="Signal handling" class="md-nav__link"> |
| Signal handling |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../openj9_directories/" title="Directory conventions" class="md-nav__link"> |
| Directory conventions |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../messages_intro/" title="OpenJ9 messages" class="md-nav__link"> |
| OpenJ9 messages |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../env_var/" title="Environment variables" class="md-nav__link"> |
| Environment variables |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-15" type="checkbox" id="nav-15"> |
| |
| <label class="md-nav__link" for="nav-15"> |
| API documentation |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="1"> |
| <label class="md-nav__title" for="nav-15"> |
| API documentation |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-overview/" title="Overview" class="md-nav__link"> |
| Overview |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item md-nav__item--nested"> |
| |
| <input class="md-toggle md-nav__toggle" data-md-toggle="nav-15-2" type="checkbox" id="nav-15-2"> |
| |
| <label class="md-nav__link" for="nav-15-2"> |
| Java 8 API |
| </label> |
| <nav class="md-nav" data-md-component="collapsible" data-md-level="2"> |
| <label class="md-nav__title" for="nav-15-2"> |
| Java 8 API |
| </label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-conditionhandling/" title="Condition exception handling" class="md-nav__link"> |
| Condition exception handling |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-cuda/" title="CUDA4J" class="md-nav__link"> |
| CUDA4J |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-daa/" title="Data access acceleration" class="md-nav__link"> |
| Data access acceleration |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-dtfj/" title="DTFJ" class="md-nav__link"> |
| DTFJ |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-gpu/" title="GPU" class="md-nav__link"> |
| GPU |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-jvm/" title="JVM diagnostic utilities" class="md-nav__link"> |
| JVM diagnostic utilities |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-langmgmt/" title="Monitoring and management" class="md-nav__link"> |
| Monitoring and management |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-shrc/" title="Shared classes" class="md-nav__link"> |
| Shared classes |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-jdk11/" title="Java 11 API" class="md-nav__link"> |
| Java 11 API |
| </a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../api-jdk16/" title="Java 16 API" class="md-nav__link"> |
| Java 16 API |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="md-nav__item"> |
| <a href="../legal/" title="Legal" class="md-nav__link"> |
| Legal |
| </a> |
| </li> |
| |
| |
| </ul> |
| </nav> |
| </div> |
| </div> |
| </div> |
| |
| |
| <div class="md-sidebar md-sidebar--secondary" data-md-component="toc"> |
| <div class="md-sidebar__scrollwrap"> |
| <div class="md-sidebar__inner"> |
| |
| <nav class="md-nav md-nav--secondary"> |
| |
| |
| |
| |
| |
| <label class="md-nav__title" for="__toc">On this page ...</label> |
| <ul class="md-nav__list" data-md-scrollfix> |
| |
| <li class="md-nav__item"> |
| <a href="#gencon-examples" class="md-nav__link"> |
| gencon examples |
| </a> |
| |
| <nav class="md-nav"> |
| <ul class="md-nav__list"> |
| |
| <li class="md-nav__item"> |
| <a href="#scavenge-partial-gc-cycle" class="md-nav__link"> |
| Scavenge partial GC cycle |
| </a> |
| |
| <nav class="md-nav"> |
| <ul class="md-nav__list"> |
| |
| <li class="md-nav__item"> |
| <a href="#summary-of-the-example" class="md-nav__link"> |
| Summary of the example |
| </a> |
| |
| </li> |
| |
| </ul> |
| </nav> |
| |
| </li> |
| |
| <li class="md-nav__item"> |
| <a href="#concurrent-scavenge-partial-gc-cycle-non-default" class="md-nav__link"> |
| Concurrent scavenge partial GC cycle (non-default) |
| </a> |
| |
| </li> |
| |
| <li class="md-nav__item"> |
| <a href="#gencon-global-gc-cycle" class="md-nav__link"> |
| gencon global GC cycle |
| </a> |
| |
| </li> |
| |
| <li class="md-nav__item"> |
| <a href="#summary-of-the-example_1" class="md-nav__link"> |
| Summary of the example |
| </a> |
| |
| </li> |
| |
| </ul> |
| </nav> |
| |
| </li> |
| |
| |
| |
| |
| |
| </ul> |
| |
| </nav> |
| </div> |
| </div> |
| </div> |
| |
| |
| <div class="md-content"> |
| <article class="md-content__inner md-typeset"> |
| |
| <!-- this adds 'pencil' icon to H1 so that you can edit the page directly in GitHub |
| |
| <a href="https://github.com/eclipse/openj9/edit/master/docs/vgclog_examples.md" title="Edit this page" class="md-icon md-content__icon"></a> |
| |
| --> |
| |
| <h1 id="log-examples">Log examples</h1> |
| <p>To help you understand how garbage collection (GC) processes memory for your application and how these processes are recorded, a number of annotated log examples are provided from different GC policies. Each example covers a particular type of cycle from a particular policy. You will learn how to interpret the XML elements in the example log and determine the characteristics of the recorded cycle.</p> |
| <h2 id="gencon-examples"><code>gencon</code> examples</h2> |
| <p>As detailed in <a href="../gc/#gencon-policy-default"><code>gencon</code> policy (default)</a>, this policy uses two types of cycle; a partial GC cycle and a global GC cycle. By default, the partial GC cycle runs a <em>stop-the-world</em> (STW) <em>scavenge</em> operation but can run a concurrent <em>scavenge</em> operation (<a href="../xgc/#concurrentscavenge">-Xgc:concurrentScavenge</a>) on specific platforms if enabled at run time.</p> |
| <p>The start of a <code>gencon</code> cycle is recorded in the log by the following elements and attributes:</p> |
| <table style="width:100%" align="center"> |
| <caption>Table showing types of <code>gencon</code> cycle along with the corresponding trigger reason and XML elements for each type. </caption> |
| |
| <tr> |
| <th scope="col">GC cycle</th> |
| <th align="center" scope="col">Value of <code>type</code> attribute of the <code><cycle-start></code> and <code><cycle-end></code>elements</th> |
| <th align="center"scope="col">Element that logs the cycle trigger</th> |
| <th scope="col">Trigger reason</th> |
| </tr> |
| |
| <tr> |
| <td scope="row"> Global</td> |
| <td align="center"><code>global</code> </td> |
| <td align="center"><code><concurrent-kickoff></code></td> |
| <td>Low free memory tenure area threshold reached. Cycle trigger element is located before the <code><cycle-start></code> element.</td> |
| </tr> |
| |
| <tr> |
| <td scope="row"> Partial</td> |
| <td align="center"> <code>scavenge</code></td> |
| <td align="center"><code><af-start></code></td> |
| <td>Allocation failure. Cycle trigger element is located before the <code><cycle-start></code> element.</td> |
| <tr> |
| </table> |
| |
| <p>You can use the <code>type</code> attribute of the <code><gc-start></code> and <code><gc-end></code> elements to locate a particular cycle. You can also locate a particular type of cycle by searching for the element that records the cycle trigger, which is located before the <code><cycle-start></code> element.</p> |
| <p>You can analyze the increments and operations that are associated with a particular type of cycle by locating and interpreting the elements in the following table:</p> |
| <table style="width:100%" align="center"> |
| <caption>Table showing increments and operations that are associated with the <code>gencon</code> partial scavenge and global cycles.</caption> |
| |
| <tr> |
| <th align="center" scope="col">GC process</th> |
| <th align="center" scope="col">Elements that log the start and end of the event</th> |
| <th align="center" scope="col">Details</th> |
| </tr> |
| |
| <tr> |
| <td align="center" scope="row"> GC cycle</td> |
| <td align="center"><code><cycle-start></code>, <code><cycle-end></code></td> |
| <td >The start and end of a GC cycle.</td> |
| </tr> |
| |
| <tr> |
| <td align="center" scope="row"> GC STW increment</td> |
| <td align="center"><code><gc-start></code>, <code><gc-end></code></td> |
| <td >The start and end of a GC increment that begins with a pause.</td> |
| <tr> |
| <tr> |
| <td align="center" scope="row"> GC STW increment</td> |
| <td align="center"><code><concurrent-kickoff></code></td> |
| <td>The start of the initial GC increment of the global concurrent cycle that begins the initial mark operation.</td> |
| <tr> |
| |
| <tr> |
| <td align="center" scope="row"> GC STW increment</td> |
| <td align="center"><code><concurrent-global-final></code></td> |
| <td>The start of the final GC increment of the global concurrent cycle that executes the final collection.</td> |
| <tr> |
| <tr> |
| <td align="center" scope="row"> GC operations and suboperations</td> |
| <td align="center"><code><gc-op></code></td> |
| <td>A GC operation such as mark or sweep, or a suboperation such as class unload.</td> |
| <tr> |
| </table> |
| |
| <p><i class="fa fa-pencil-square-o" aria-hidden="true"></i> <strong>Note:</strong> For more information about the XML structure of GC cycles, see <a href="../vgclog/#gc-cycles">GC cycles</a>. For more information about GC cycle increments, see <a href="../vgclog/#gc-increments-and-interleaving">GC increments and interleaving</a>.</p> |
| <p>The following examples use log excerpts to show how the different types of <code>gencon</code> cycle are logged.</p> |
| <h3 id="scavenge-partial-gc-cycle">Scavenge partial GC cycle</h3> |
| <p>The following example is taken from a <code>gencon</code> log. The output is broken down into sections with supporting text to explain the GC processing that is taking place.</p> |
| <p>To search for a scavenge partial GC cycle, you can search for the <code>type</code> attribute value <code>scavenge</code> in <code>cycle-start</code> and <code>cycle-end</code> elements, or search for the <code><af></code> element that logs the allocation failure trigger.</p> |
| <p>By default, the <code>gencon</code> partial GC cycle runs by using a single <em>stop-the-world</em> (STW) pause. The cycle performs only one operation, a <em>scavenge</em> operation, which runs only on the <em>nursery</em> area. The cycle consists of a single GC increment, which is labeled by using the elements that are shown in the following table:</p> |
| <table style="width:100%" align="center"> |
| <caption>Table showing the <code>gencon</code> default partial scavenge cycle's GC increment and corresponding XML elements.</caption> |
| |
| <tr> |
| <th align="center" scope="col">GC operation</th> |
| <th align="center" scope="col">GC increment</th> |
| <th align="center" scope="col">STW or concurrent</th> |
| <th align="center" scope="col">XML element of GC increment</th> |
| <th align="center" scope="col">Details</th> |
| </tr> |
| <tr> |
| <td scope="row"> scavenge</td> |
| <td align="center">single </code></td> |
| <td align="center">STW </code></td> |
| <td align="center"><code><gc-start></code>, <code><gc-end></code></code></td> |
| <td>Contains detailed information about copied objects and the weak roots processing operation</code></td> |
| </tr> |
| </table> |
| |
| <p>The scavenge partial GC cycle follows a general structure in the verbose GC log as shown. Some elements are omitted for clarity:</p> |
| <pre><code class="xml"> |
| <exclusive-start/> (STW Pause starts) |
| |
| <af-start/> (allocation failure trigger recorded) |
| |
| <cycle-start/> (scavenge cycle starts) |
| |
| <gc-start> (scavenge cycle increment starts) |
| |
| <mem-info> (memory status before operation) |
| |
| <mem></mem> (status of different areas of heap) |
| |
| </mem-info> |
| |
| </gc-start> |
| |
| <allocation-stats/> (snapshot of application threads status taken before cycle started) |
| |
| <gc-op> “scavenge"</gc-op> (scavenge operation completed) |
| |
| <gc-end> (scavenge cycle increment ends) |
| |
| <mem-info> (memory status after operation) |
| |
| <mem></mem> (status of different areas of heap) |
| |
| </mem-info> |
| |
| </gc-end> |
| |
| </cycle-end> (scavenge cycle ends) |
| |
| <allocation-satisfied/> (required allocation has been achieved) |
| |
| <af-end/> |
| |
| <exclusive-end> (STW for scavenge cycle ends) |
| ... |
| |
| </code></pre> |
| |
| <p>The first activity in the cycle is recorded by an <code><exclusive-start></code> element, which indicates the start of the STW pause. Application threads are halted to give the garbage collector exclusive access to the Java™ object heap:</p> |
| <pre><code class="xml"><!-- Start of gencon scavenge partial GC cycle example --> |
| |
| <exclusive-start id="12392" timestamp="2020-10-18T13:35:45.000" intervalms="406.180"> |
| <response-info timems="0.070" idlems="0.070" threads="0" lastid="00000000013D6900" lastname="LargeThreadPool-thread-68" /> |
| </exclusive-start> |
| </code></pre> |
| |
| <p>The <code><af-start></code> element indicates that the cycle was triggered by an allocation failure in the nursery (<code>type="nursery"</code>) area of the heap:</p> |
| <pre><code class="xml"><af-start id="12393" threadId="00000000013D7280" totalBytesRequested="8200" timestamp="2020-10-18T13:35:45.000" intervalms="418.233" type="nursery" /> |
| </code></pre> |
| |
| <p>The <code><cycle-start></code> element marks the start of the cycle. The attribute <code>type="scavenge"</code> confirms that this activity is a <em>scavenge</em> partial GC cycle:</p> |
| <pre><code class="xml"><cycle-start id="12394" type="scavenge" contextid="0" timestamp="2020-10-18T13:35:45.000" intervalms="418.231" /> |
| </code></pre> |
| |
| <p>Most elements are labeled with an <code>id</code> attribute that increases in value incrementally, a<code>timestamp</code> attribute, and a <code>contextid</code> attribute. All elements that record GC increments and operations that are associated with a particular cycle have a <code>contextid</code> value that matches the <code>id</code> value of the cycle. The <code><cycle-start></code> element of this example cycle has an <code>id="12394"</code>, so all subsequent elements that have a <code>contextid="4"</code>, such as the <code><gc-start></code> increment element and the <code><gc-op></code> operation element, are associated with this particular example cycle. </p> |
| <p>The <code><gc-start></code> element records the first GC increment. In this <code><gc-start></code> section, you can find information about the amount of memory available (<code><mem-info></code>) and where it is located in the Java™ object heap.</p> |
| <p>The memory snapshot within the <code><gc-start></code> element is taken before the <em>scavenge</em> operation and can be compared with a similar snapshot that is taken afterward to understand the effect on the heap.</p> |
| <pre><code class="xml"><gc-start id="12395" type="scavenge" contextid="12394" timestamp="2020-10-18T13:35:45.000"> |
| <mem-info id="12396" free="414960320" total="1073741824" percent="38"> |
| <mem type="nursery" free="0" total="268435456" percent="0"> |
| <mem type="allocate" free="0" total="241565696" percent="0" /> |
| <mem type="survivor" free="0" total="26869760" percent="0" /> |
| </mem> |
| <mem type="tenure" free="414960320" total="805306368" percent="51"> |
| <mem type="soa" free="374694592" total="765040640" percent="48" /> |
| <mem type="loa" free="40265728" total="40265728" percent="100" /> |
| </mem> |
| <remembered-set count="21474" /> |
| </mem-info> |
| </gc-start> |
| </code></pre> |
| |
| <p>The Java™ object heap memory allocation at the start of the increment is as follows:</p> |
| <ul> |
| <li>The <em>allocate</em> space of the nursery area is full, or close to full. The allocation failure was triggered by the lack of available memory in this space.</li> |
| <li>The <em>survivor</em> space of the nursery area is reported as 'full' to reflect that no available memory is available to allocate to the mutator threads. The entire <em>survivor</em> space is reserved for GC operations during the GC increment. </li> |
| <li>The <em>tenure</em> area has 395.7 MB (414,960,320B) of free memory available.</li> |
| </ul> |
| <p>The next element <code><allocation-stats></code> shows a snapshot, which was taken before the cycle started, of the allocation status of the mutator threads. In this example, the thread that used the most memory was <code>LargeThreadPool-thread-79</code>.</p> |
| <pre><code class="xml"><allocation-stats totalBytes="235362176" > |
| <allocated-bytes non-tlh="32880" tlh="235329296" /> |
| <largest-consumer threadName="LargeThreadPool-thread-79" threadId="00000000013F0C00" bytes="6288544" /> |
| </allocation-stats> |
| </code></pre> |
| |
| <p>The <em>scavenge</em> GC operation is recorded by the <code><gc-op></code> element; child elements record details about the operation. For example, </p> |
| <pre><code class="xml"><gc-op id="12397" type="scavenge" timems="11.649" contextid="12394" timestamp="2020-10-18T13:35:45.012"> |
| <scavenger-info tenureage="7" tenuremask="4080" tiltratio="89" /> |
| <memory-copied type="nursery" objects="154910" bytes="6027440" bytesdiscarded="394832" /> |
| <memory-copied type="tenure" objects="16171" bytes="562848" bytesdiscarded="3064" /> |
| <ownableSynchronizers candidates="10838" cleared="10824" /> |
| <references type="soft" candidates="24" cleared="0" enqueued="0" dynamicThreshold="16" maxThreshold="32" /> |
| <references type="weak" candidates="390" cleared="269" enqueued="269" /> |
| <references type="phantom" candidates="1" cleared="0" enqueued="0" /> |
| <object-monitors candidates="132" cleared="0" /> |
| </gc-op> |
| </code></pre> |
| |
| <p>The <code><memory-copied></code> element indicates that 5.75 MB (6,027,440B) of reachable objects were moved by the <em>scavenge</em> operation from the allocate space to the survivor space in the nursery area, and 0.54 MB(562,848 B) were moved to the tenure area. </p> |
| <p>The <code><scavenger-info></code> element shows that the <a href="../gc/#gencon-policy-default"><em>tenure age</em></a> is set to <code>7</code>. Any object in the <em>allocate</em> space with an age less than or equal to <code>7</code> is copied to the survivor space during this <code>scavenge</code>operation. Any object that is copied between the <em>allocate</em> and <em>survivor</em> areas more than <code>7</code> times is moved to the tenure area. </p> |
| <p>For more information about how the scavenge operation acts on the Java™ object heap, see <a href="../gc/#gencon-policy-default"><code>gencon</code> policy (default)</a>.</p> |
| <p>The end of the increment is recorded with <code><gc-end></code> and provides another snapshot of memory allocation on the heap, similar to <code><gc-start></code>. </p> |
| <pre><code class="xml"><gc-end id="12398" type="scavenge" contextid="12394" durationms="11.785" usertimems="46.278" systemtimems="0.036" stalltimems="0.145" timestamp="2020-10-18T13:35:45.012" activeThreads="4"> |
| <mem-info id="12399" free="649473560" total="1073741824" percent="60"> |
| <mem type="nursery" free="235142120" total="268435456" percent="87"> |
| <mem type="allocate" free="235142120" total="241565696" percent="97" /> |
| <mem type="survivor" free="0" total="26869760" percent="0" /> |
| </mem> |
| <mem type="tenure" free="414331440" total="805306368" percent="51" macro-fragmented="0"> |
| <mem type="soa" free="374065712" total="765040640" percent="48" /> |
| <mem type="loa" free="40265728" total="40265728" percent="100" /> |
| </mem> |
| <pending-finalizers system="0" default="0" reference="269" classloader="0" /> |
| <remembered-set count="13792" /> |
| </mem-info> |
| </gc-end> |
| </code></pre> |
| |
| <p>The Java™ object heap memory allocation at the end of the increment is as follows:</p> |
| <ul> |
| <li>97% of the <em>allocate</em> space of the nursery area is now available as free memory.</li> |
| <li>The <em>survivor</em> space of the nursery area is still reported as 'full' to reflect that the entire <em>survivor</em> space is reserved for GC operations during the next GC increment. </li> |
| <li>The tenure area has 395 MB (414,331,440B) of free memory available. The <em>scavenge</em> operation copied 562 KB from the nursery area to the tenure area so less memory is now available in the tenure area.</li> |
| </ul> |
| <p>The <em>scavenge</em> operation successfully reclaimed memory in the <em>allocate</em> space of the nursery area by copying objects from the <em>allocate</em> space into the <em>survivor</em> space of the nursery area, and copying objects from the <em>survivor</em> space into the tenure area.</p> |
| <p>The cycle ends (<code><cycle-end></code>). The following <code><allocation-satisfied></code> element indicates that the allocation request that caused the allocation failure can now complete successfully. The STW pause ends with the <code><exclusive-end></code> element:</p> |
| <pre><code class="xml"><cycle-end id="12400" type="scavenge" contextid="12394" timestamp="2020-10-18T13:35:45.012" /> |
| <allocation-satisfied id="12401" threadId="00000000013D6900" bytesRequested="8200" /> |
| <af-end id="12402" timestamp="2020-10-18T13:35:45.012" threadId="00000000013D7280" success="true" from="nursery"/> |
| <exclusive-end id="12403" timestamp="2020-10-18T13:35:45.012" durationms="12.319" /> |
| |
| <!-- End of gencon partial GC cycle example --> |
| </code></pre> |
| |
| <h4 id="summary-of-the-example">Summary of the example</h4> |
| <p>Analyzing the structure and elements of this example log output shows that this example global cycle has the following characteristics:</p> |
| <ul> |
| <li> |
| <p>The GC cycle begins with an STW pause due to an allocation failure.</p> |
| </li> |
| <li> |
| <p>All GC operations and suboperations that are associated with this cycle occur during the STW pause</p> |
| </li> |
| <li> |
| <p>The cycle consists of only 1 GC increment, which runs a single <em>scavenge</em> operation.</p> |
| </li> |
| <li> |
| <p>The GC cycle reclaims memory in the <em>allocate</em> area of the nursery area by coping objects from the <em>allocate</em> area to the <em>survivor</em> area and also to the tenure area.</p> |
| </li> |
| </ul> |
| <h3 id="concurrent-scavenge-partial-gc-cycle-non-default">Concurrent scavenge partial GC cycle (non-default)</h3> |
| <p>When concurrent scavenge mode is enabled, the partial GC cycle is run as a <a href="../gc/#concurrent-scavenge">concurrent scavenge cycle</a>. This partial GC cycle is divided into increments to enable the majority of the scavenge operation to run concurrently with running application threads. The concurrent increment can run while application threads run, and also while the intermediate concurrent increment of the global GC cycle runs. The interleaving of the concurrent scavenge partial GC cycle with the global cycle can be seen in the logs.</p> |
| <p>The following elements log the GC increments and operations of the concurrent scavenge partial GC cycle:</p> |
| <table style="width:100%"> |
| <caption>Table showing the <code>gencon</code> concurrent (non-default) partial scavenge cycle's GC increment and corresponding XML elements.</caption> |
| |
| <tr> |
| <th align="center" scope="col">GC operation</th> |
| <th align="center" scope="col">GC increment</th> |
| <th align="center" scope="col">STW or concurrent</th> |
| <th align="center" scope="col">XML element of GC increment</th> |
| <th align="center" scope="col">Details</th> |
| </tr> |
| <tr> |
| <td scope="row"> scavenge</td> |
| <td align="center">initial </code></td> |
| <td align="center">STW </code></td> |
| <td align="center"><code><gc-start></code>, <code><gc-end></code></code></td> |
| <td>Root scanning, reported as a single scavenge operation.</code></td> |
| </tr> |
| <tr> |
| <td scope="row"> scavenge</td> |
| <td align="center">intermediate </code></td> |
| <td align="center">concurrent</code></td> |
| <td align="center"><code><concurrent-start></code>, <code><concurrent-end></code></td> |
| <td>Live objects are traversed and evacuated (copy-forwarded). Operation is reported as a <code>scavenge</code> operation.</td> |
| </tr> |
| <tr> |
| <td scope="row"> scavenge</td> |
| <td align="center">final</code></td> |
| <td align="center">STW </code></td> |
| <td align="center"><code><gc-start></code>, <code><gc-end></code></td> |
| <td>weak roots scanning, reported as a complex scavenge operation. <code><gc-op></code> contains specific details for each of the weak root groups.</code></td> |
| </tr> |
| </table> |
| |
| <p>To search for a concurrent scavenge partial GC cycle, you can search for the <code>type</code> attribute value <code>scavenge</code> in <code>cycle-start</code> and <code>cycle-end</code> elements, or search for the <code><af></code> element that logs the allocation failure trigger. </p> |
| <p>You can locate the concurrent scavenge partial cycle's concurrent increment by searching for <code><concurrent-start></code> and <code><concurrent-end></code>. The global cycle's intermediate concurrent increment, which can run at the same time, is not logged by an element, but begins immediately after application threads are restarted following the <code><cycle-start type="global"/></code> element. For more information about the global cycle's intermediate concurrent increment, see <a href="./#global-gc-cycle">Log examples - Global GC Cycle</a>. For more information about GC increments, see <a href="../vgclog/#gc-increments-and-interleaving">GC increments and interleaving</a>.</p> |
| <h3 id="gencon-global-gc-cycle"><code>gencon</code> global GC cycle</h3> |
| <p>The following example shows how a global GC cycle is recorded in a <code>gencon</code> policy verbose GC log. The output is broken down into sections with supporting text to explain the GC processing that is taking place.</p> |
| <p>The global GC cycle runs when the tenure area is close to full, which typically occurs after many partial cycles. As such, the output can be found part way down the full log. For more information about the GC Initialization section, see <a href="../vgclog/#verbose-gc-log-contents-and-structure">Verbose GC log contents and structure </a>. For an example log output for a <code>gencon</code> partial cycle, see <a href="../vgclog/#example-gencons-default-partial-gc-cycle">Example - <code>gencon</code>’s default partial GC cycle</a>.</p> |
| <p>The global GC cycle is split into three increments, as shown in <a href="../vgclog/#gc-increments-and-interleaving">GC increments and interleaving</a>. Splitting the cycle operations into the following increments reduces pause times by running the majority of the GC work concurrently. The concurrent increment pauses when a partial GC cycle is triggered and resumes after the partial cycle, or multiple cycles, finish. The interleaving of partial GC cycles with the global cycle's intermediate concurrent increment can be seen in the following <code>gencon</code> global GC cycle log output. A single partial GC cycle is logged between the initial and final increments of the global cycle.</p> |
| <p>To search for a global cycle, you can search for the <code>type</code> attribute value <code>global</code> in <code>cycle-start</code> and <code>cycle-end</code> elements, or search for the element that logs the initial concurrent increment, <code><concurrent-kickoff></code>.</p> |
| <p>The following elements log the GC increments and operations of the global GC cycle:</p> |
| <p><table style="width:100%"> |
| <caption>Table showing the <code>gencon</code> global cycle's GC increment and corresponding XML elements.</caption></p> |
| <p><tr> |
| <th align="center" scope="col">GC operation</th> |
| <th align="center" scope="col">GC increment</th> |
| <th align="center" scope="col">STW or concurrent</th> |
| <th align="center" scope="col">XML element of GC increment</th> |
| <th align="center" scope="col">Details</th> |
| </tr> |
| <tr> |
| <td align="center" scope="row"> n/a - initiates cycle</td> |
| <td align="center">initial</td> |
| <td align="center">STW</td> |
| <td align="center"><code><concurrent-kickoff></code></td> |
| <td align="center">No <code><gc-op></code> is logged. This increment just initiates the concurrent mark increment.</td> |
| <td></code></td> |
| </tr> |
| <tr> |
| <td align="center" scope="row"> concurrent mark</td> |
| <td align="center">intermediate </code></td> |
| <td align="center">concurrent</code></td> |
| <td align="center">none</td> |
| <td><code><concurrent-trace-info></code> records the progress of the concurrent mark increment.</td> |
| </tr> |
| <tr> |
| <td align="center" scope="row"> final collection</td> |
| <td align="center">final</code></td> |
| <td align="center">STW </code></td> |
| <td align="center"><code><concurrent-global-final></code></td> |
| <td>The increment is typically triggered when a card cleaning threshold is reached. The completion of a tracing phase can also trigger the increment. Operations include a final concurrent mark, a sweep, and an optional class unload and compact.</td> |
| </tr> |
| </table></p> |
| <p>The global GC cycle follows a general structure in the verbose GC log as shown. Some child elements are omitted for clarity. Multiple partial GC cycles can start and finish between the start and end of a global GC cycle. In the following example, the structure includes a single partial GC cycle within the global cycle:</p> |
| <pre><code class="xml"> |
| <concurrent-kickoff/> (global cycle 1st increment recorded) |
| |
| <exclusive-start/> (STW pause starts) |
| |
| <cycle-start/> (global cycle starts) |
| |
| <exclusive-end/> (STW pause ends) |
| |
| (mutator threads running, global cycle concurrent increment running concurrently) |
| |
| |
| <exclusive-start/> (STW for partial GC cycle starts) |
| |
| |
| ... (partial GC cycle starts and completes) |
| |
| |
| <exclusive-end/> (STW for partial GC cycle ends) |
| |
| (mutator threads running, global cycle concurrent increment running concurrently) |
| |
| <exclusive-start/> (STW pause starts) |
| |
| <concurrent-global-final/> (global cycle final increment recorded) |
| |
| <gc-start/> (global cycle final increment starts) |
| |
| <allocation-stats/> (snapshot of application threads status taken before cycle started) |
| |
| <mem-info> (memory status before operations) |
| |
| <mem></mem> (status of different areas of heap) |
| |
| </mem-info> |
| |
| </gc-start> |
| |
| <gc-op> “type=rs-scan"</gc-op> (remembered set scan completed) |
| |
| <gc-op>”type=card-cleaning" </gc-op> (card cleaning completed) |
| |
| <gc-op> “type=mark”</gc-op> (final mark operation and weak roots processing completed) |
| |
| <gc-op> “type=classunload”</gc-op> (class unload operation completed) |
| |
| <gc-op ”type=sweep” /> (sweep operation completed) |
| |
| <gc-end> (global cycle final increment ends) |
| |
| <mem-info> (memory status after operations) |
| |
| <mem></mem> (status of different areas of heap) |
| |
| </mem-info> |
| |
| </gc-end> |
| |
| </cycle-end> (global cycle ends) |
| |
| <exclusive-end> (STW pause ends) |
| |
| <exclusive-start> (STW pause starts) |
| ... |
| |
| </code></pre> |
| |
| <p>The first activity in the cycle is recorded by a <code><concurrent-kickoff></code> element, which records the start of the first of three increments that make up a <code>gencon</code> Global GC cycle. The <code><concurrent-kickoff></code> element records the following information:</p> |
| <ul> |
| <li>The reason why the GC cycle was triggered. For a <code>gencon</code> global cycle, the cycle is triggered when the amount of free memory decreases to a threshold value, the <code>thresholdFreeBytes</code> value. </li> |
| <li>The target number of bytes, <code>targetBytes</code>, that the cycle aims to mark concurrently.</li> |
| <li>The current available memory in the different parts of the heap.</li> |
| </ul> |
| <pre><code class="xml"><concurrent-kickoff id="12362" timestamp="2020-10-18T13:35:44.341"> |
| |
| <kickoff reason="threshold reached" targetBytes="239014924" thresholdFreeBytes="33024922" remainingFree="32933776" tenureFreeBytes="42439200" nurseryFreeBytes="32933776" /> |
| |
| </concurrent-kickoff> |
| </code></pre> |
| |
| <p>For this example, the <code>remainingFree</code> bytes value of 31.4 MB (32,933,776B) is approaching the <code>thresholdFreeBytes</code> value of 31.5 MB (33,024,922B) so a global cycle is triggered. </p> |
| <p>This cycle aims to trace 228 MB (239,014,924B) during the concurrent increment. If the concurrent increment is interrupted by a card cleaning threshold value before it traces all 228 MB, the final STW increment completes the tracing during the STW pause.</p> |
| <p><i class="fa fa-pencil-square-o" aria-hidden="true"></i> <strong>Note:</strong> To analyze specific parts of a cycle, you can search for the elements that mark a specific increment of the cycle. For example, you can search for the <concurrent-global-final> element to locate the final increment of the <code>gencon</code> global cycle. See the details of a particular cycle, such as the <a href="./vgclog.md/#global-gc-cycle"><code>gencon</code> global cycle</a>, to determine the element names for particular STW or concurrent GC increments or operations.</p> |
| <p>The next element recorded in the log, the <code><exclusive-start></code>element, records the start of an STW pause:</p> |
| <pre><code class="xml"><exclusive-start id="12363" timestamp="2020-10-18T13:35:44.344" intervalms="342.152"> |
| |
| <response-info timems="0.135" idlems="0.068" threads="3" lastid="00000000015DE600" lastname="LargeThreadPool-thread-24" /> |
| |
| </exclusive-start> |
| </code></pre> |
| |
| <p>The following <code><gc-start></code> element records details of the start of a new cycle.</p> |
| <pre><code class="xml"><cycle-start id="12364" type="global" contextid="0" timestamp="2020-10-18T13:35:44.344" intervalms="516655.052" /> |
| </code></pre> |
| |
| <p>The <code>type</code> attribute records the cycle as a global cycle. The <code>contextid</code> of the cycle is, which indicates that all GC events that are associated with this cycle are tagged in relation to the <code>id</code> of this cycle. In particular, all subsequent elements that are associated with this particular example cycle have a <code>contextid</code> value equal to the <code><cycle-start></code> <code>id</code> attribute value of <code>“12634”</code>.</p> |
| <p>The next element in the log is <code><exclusive-end></code>, which records the end of the STW pause:</p> |
| <pre><code class="xml"><exclusive-end id="12365" timestamp="2020-10-18T13:35:44.344" durationms="0.048" /> |
| </code></pre> |
| |
| <p>The operations and suboperations of the second increment of the <code>gencon</code> global cycle are now running concurrently. </p> |
| <!--A blank line appears in the log after this `<exclusive-end>` line and before the next section, which tells you that no STW activities are running. However, concurrent activities might be running. In this case, the concurrent operations and sub-operations of the second increment of the `gencon` global cycle are running.--> |
| |
| <p>The next section of the logs records an STW pause that is associated with an allocation failure. The <code><cycle-start></code> element that follows this STW pause indicates that the cycle is a <code>scavenge</code> cycle, which is the partial GC cycle that is used by the <code>gencon</code> GC:</p> |
| <pre><code class="xml">... |
| <cycle-start id="12368" type="scavenge" contextid="0" timestamp="2020-10-18T13:35:44.582" intervalms="580.047" /> |
| ... |
| </code></pre> |
| |
| <p>Subsequent elements have a <code>contextid=“12368”</code>, which matches the <code>id</code> of this new <code>scavenge</code>cycle. For more information about how this cycle is recorded in the logs, see <a href="#scavenge-partial-gc-cycle">Scavenge partial GC cycle</a>.</p> |
| <!--- |
| |
| <pre><code class="xml"><exclusive-start id="12366" timestamp="2020-10-18T13:35:44.582" intervalms="237.874"> |
| |
| <response-info timems="0.094" idlems="0.033" threads="5" lastid="00000000014E0F00" lastname="LargeThreadPool-thread-67" /> |
| |
| </exclusive-start> |
| |
| ... |
| |
| <af-start id="12367" threadId="00000000013D7280" totalBytesRequested="96" timestamp="2020-10-18T13:35:44.582" intervalms="580.045" type="nursery" /> |
| |
| <cycle-start id="12368" type="scavenge" contextid="0" timestamp="2020-10-18T13:35:44.582" intervalms="580.047" /> |
| |
| ... |
| |
| <exclusive-end id="12377" timestamp="2020-10-18T13:35:44.594" durationms="11.816" /> |
| </code></pre> |
| |
| ---> |
| |
| <p>The operations and suboperations of the second, concurrent increment of the <code>gencon</code> global cycle are paused while the STW <code>scavenge</code> operation is running, and resume when the STW pause finishes. </p> |
| <p>After the partial GC cycle completes and the STW pause finishes, the log records a new STW pause, which is triggered to enable the final <code>gencon</code> global GC increment to run. This final increment finishes marking the nursery area and completes the global cycle. The <code><exclusive-start></code> element is followed by a <code><concurrent-global-final></code> element, which logs the beginning of this final increment (and by implication, the end of the second increment).</p> |
| <pre><code class="xml"><exclusive-start id="12378" timestamp="2020-10-18T13:35:44.594" intervalms="12.075"> |
| |
| <response-info timems="0.108" idlems="0.040" threads="3" lastid="00000000018D3800" lastname="LargeThreadPool-thread-33" /> |
| |
| </exclusive-start> |
| |
| <concurrent-global-final id="12379" timestamp="2020-10-18T13:35:44.594" intervalms="516905.029" > |
| |
| <concurrent-trace-info reason="card cleaning threshold reached" tracedByMutators="200087048" tracedByHelpers="12164180" cardsCleaned="4966" workStackOverflowCount="0" /> |
| |
| </concurrent-global-final> |
| </code></pre> |
| |
| <p>The <code>reason</code> attribute of the <code><concurrent-trace-info></code> child element indicates that this final STW increment of the global cycle was triggered because a card-cleaning threshold was reached. The concurrent tracing was stopped prematurely and the <code>targetBytes</code> concurrent tracing target, recorded at the cycle start by <code><concurrent-kickoff></code>, was not achieved concurrently. If the concurrent tracing completes without interruption, the <code><concurrent-trace-info</code> element logs <code>reason=tracing completed</code>. </p> |
| <p>In the next section that begins with the <code>gc-start</code> element, you can find information about the amount of memory available (<code><mem-info></code>) and where it is located in the java™ object heap. This snapshot is taken before the final increment's operations and suboperations are run and can be compared with a similar snapshot that is taken afterward to understand the effect on the heap. The child element attribute values of the<code><mem></code> and <code><mem-info></code> elements indicate the status of the memory.</p> |
| <p><i class="fa fa-pencil-square-o" aria-hidden="true"></i> <strong>Note:</strong> You can double check that the increment is associated with the GC global cycle in the example by checking the <code>contextid</code> attribute value matches the <code>id=12364</code> attribute value of the cycle's <gc-cycle> element.</p> |
| <pre><code class="xml"><gc-start id="12380" type="global" contextid="12364" timestamp="2020-10-18T13:35:44.594"> |
| |
| <mem-info id="12381" free="277048640" total="1073741824" percent="25"> |
| |
| <mem type="nursery" free="234609440" total="268435456" percent="87"> |
| |
| <mem type="allocate" free="234609440" total="241565696" percent="97" /> |
| |
| <mem type="survivor" free="0" total="26869760" percent="0" /> |
| |
| </mem> |
| |
| <mem type="tenure" free="42439200" total="805306368" percent="5"> |
| |
| <mem type="soa" free="2173472" total="765040640" percent="0" /> |
| |
| <mem type="loa" free="40265728" total="40265728" percent="100" /> |
| |
| </mem> |
| |
| <pending-finalizers system="0" default="0" reference="405" classloader="0" /> |
| |
| <remembered-set count="17388" /> |
| |
| </mem-info> |
| |
| </gc-start> |
| |
| <allocation-stats totalBytes="827488" > |
| |
| <allocated-bytes non-tlh="96" tlh="827392" /> |
| |
| <largest-consumer threadName="LargeThreadPool-thread-68" threadId="00000000013D6900" bytes="65632" /> |
| |
| </allocation-stats> |
| </code></pre> |
| |
| <p>The element <code><allocation-stats></code> shows a snapshot, which was taken before the cycle started, of the allocation status of the mutator threads. In this example, the thread that used the most memory was <code>LargeThreadPool-thread-68</code>.</p> |
| <p>For this example, at the start of this GC increment, the tenure area is low on free memory, as expected. 25% of the total heap is available as free memory, which is split between the following areas of the heap:</p> |
| <ul> |
| <li>The nursery area, which has 223.7 MB (234,609,440B) of free memory available. The free memory is only available in the <em>allocate</em> space of the nursery area. The <em>survivor</em> space of the nursery area is reported as 'full' to reflect that no available memory is available to allocate to the mutator threads. The entire <em>survivor</em> space is reserved for GC operations during the GC increment. </li> |
| <li>The tenure area, which has 40.5 MB (42,439,200B) available as free memory, which is only 5% of its total memory. Most of this free memory is in the large object area (LOA). Almost no free memory is available in the small object area (SOA). </li> |
| </ul> |
| <p>The <code><gc-op></code> elements and their child elements contain information about the increment’s operations and suboperations. The final increment of the <code>gencon</code> global cycle consists of multiple operations, each logged with a <code><gc-op></code> element. The type of operation is shown by the <code><gc-op></code> <code>type</code> attribute. The final increment of the example log runs five types of operation:</p> |
| <ol> |
| <li><code>Rs-scan</code></li> |
| <li><code>Card-cleaning</code></li> |
| <li><code>Mark</code></li> |
| <li><code>Classunload</code></li> |
| <li><code>Sweep</code></li> |
| </ol> |
| <p><i class="fa fa-pencil-square-o" aria-hidden="true"></i> <strong>Note:</strong> The final increment of a <code>gencon</code> global cycle can include an optional compact suboperation. </p> |
| <p><i class="fa fa-pencil-square-o" aria-hidden="true"></i> <strong>Note:</strong> For more information about the different types of GC operation, see <a href="../gc_overview/#gc-operations">GC operations</a>.</p> |
| <pre><code class="xml"><gc-op id="12382" type="rs-scan" timems="3.525" contextid="12364" timestamp="2020-10-18T13:35:44.598"> |
| |
| <scan objectsFound="11895" bytesTraced="5537600" workStackOverflowCount="0" /> |
| |
| </gc-op> |
| |
| <gc-op id="12383" type="card-cleaning" timems="2.910" contextid="12364" timestamp="2020-10-18T13:35:44.601"> |
| |
| <card-cleaning cardsCleaned="3603" bytesTraced="5808348" workStackOverflowCount="0" /> |
| |
| </gc-op> |
| |
| <gc-op id="12384" type="mark" timems="6.495" contextid="12364" timestamp="2020-10-18T13:35:44.607"> |
| |
| <trace-info objectcount="1936" scancount="1698" scanbytes="61200" /> |
| |
| <finalization candidates="389" enqueued="1" /> |
| |
| <ownableSynchronizers candidates="5076" cleared="523" /> |
| |
| <references type="soft" candidates="18420" cleared="0" enqueued="0" dynamicThreshold="32" maxThreshold="32" /> |
| |
| <references type="weak" candidates="19920" cleared="114" enqueued="60" /> |
| |
| <references type="phantom" candidates="671" cleared="50" enqueued="50" /> |
| |
| <stringconstants candidates="40956" cleared="109" /> |
| |
| <object-monitors candidates="182" cleared="51" /> |
| |
| </gc-op> |
| |
| <gc-op id="12385" type="classunload" timems="1.607" contextid="12364" timestamp="2020-10-18T13:35:44.609"> |
| |
| <classunload-info classloadercandidates="425" classloadersunloaded="6" classesunloaded="2" anonymousclassesunloaded="1" quiescems="0.000" setupms="1.581" scanms="0.019" postms="0.007" /> |
| |
| </gc-op> |
| |
| <gc-op id="12386" type="sweep" timems="9.464" contextid="12364" timestamp="2020-10-18T13:35:44.618" /> |
| </code></pre> |
| |
| <p>The end of the increment is recorded with <code><gc-end></code> and provides another snapshot of memory in the heap, similar to <code><gc-start></code>. </p> |
| <pre><code class="xml"><gc-end id="12387" type="global" contextid="12364" durationms="24.220" usertimems="86.465" systemtimems="0.000" stalltimems="2.846" timestamp="2020-10-18T13:35:44.618" activeThreads="4"> |
| |
| <mem-info id="12388" free="650476504" total="1073741824" percent="60"> |
| |
| <mem type="nursery" free="235516088" total="268435456" percent="87"> |
| |
| <mem type="allocate" free="235516088" total="241565696" percent="97" /> |
| |
| <mem type="survivor" free="0" total="26869760" percent="0" /> |
| |
| </mem> |
| |
| <mem type="tenure" free="414960416" total="805306368" percent="51" micro-fragmented="98245682" macro-fragmented="0"> |
| |
| <mem type="soa" free="374694688" total="765040640" percent="48" /> |
| |
| <mem type="loa" free="40265728" total="40265728" percent="100" /> |
| |
| </mem> |
| |
| <pending-finalizers system="1" default="0" reference="515" classloader="0" /> |
| |
| <remembered-set count="13554" /> |
| |
| </mem-info> |
| |
| </gc-end> |
| </code></pre> |
| |
| <p>60% of the heap now contains free memory as a result of the final global cycle increment, which is split between the following areas of the heap:</p> |
| <ul> |
| <li>The nursery area, which gained 0.9 MB of free memory. The nursery area now has 224.6 MB (235,516,088B) available as free memory. At the start of the final increment, the nursery area had 223.7 MB (234,609,440B) of free memory available.</li> |
| <li>The tenure area, which gained 355.2 MB (372,521,216B) of free memory. (the tenure area now has 395.7 MB (414,960,416B) available as free memory. At the start of the final increment, the tenure area had 40.5 MB (42,439,200B) of free memory available).</li> |
| </ul> |
| <p><i class="fa fa-pencil-square-o" aria-hidden="true"></i> <strong>Note:</strong> The global GC cycle runs to reclaim memory in the tenure area. The freeing up of memory in the nursery area is achieved by using the partial GC cycle. For more information, see <a href="../gc/#gencon-policy-default"><code>gencon</code> policy (default)</a>.</p> |
| <p>After the final increment of the global cycle completes, the global cycle ends and the STW pause ends, as shown in the following output:</p> |
| <pre><code class="xml"><cycle-end id="12389" type="global" contextid="12364" timestamp="2020-10-18T13:35:44.619" /> |
| |
| <exclusive-end id="12391" timestamp="2020-10-18T13:35:44.619" durationms="24.679" /> |
| </code></pre> |
| |
| <h3 id="summary-of-the-example_1">Summary of the example</h3> |
| <p>Analyzing the structure and elements of this example log output shows that this example global cycle has the following characteristics:</p> |
| <ul> |
| <li> |
| <p>The GC global cycle is triggered when a memory threshold is reached and begins with an STW pause.</p> |
| </li> |
| <li> |
| <p>After the first increment of the GC global cycle completes, the STW pause ends and the second increment runs concurrently.</p> |
| </li> |
| <li> |
| <p>A single partial GC cycle starts and finishes between the start and end of the concurrent increment.</p> |
| </li> |
| <li> |
| <p>An STW pause begins after the concurrent increments completes, during which the third and final increment of the global cycle, which consists of five operations, runs.</p> |
| </li> |
| <li> |
| <p>The global GC cycle reclaims memory in the tenure area and a small amount of memory in the nursery area.</p> |
| </li> |
| </ul> |
| |
| |
| |
| |
| <!-- |
| |
| |
| |
| |
| |
| --> |
| <!-- This block was originally in the theme's 'footer.html' partial file. It has been moved here in part to resolve issues with the footer being too large. --> |
| </article> |
| </div> |
| </div> |
| </main> |
| |
| <!-- |
| * Copyright (c) 2017, 2021 IBM Corp. and others |
| * |
| * This program and the accompanying materials are made |
| * available under the terms of the Eclipse Public License 2.0 |
| * which accompanies this distribution and is available at |
| * https://www.eclipse.org/legal/epl-2.0/ or the Apache |
| * License, Version 2.0 which accompanies this distribution and |
| * is available at https://www.apache.org/licenses/LICENSE-2.0. |
| * |
| * This Source Code may also be made available under the |
| * following Secondary Licenses when the conditions for such |
| * availability set forth in the Eclipse Public License, v. 2.0 |
| * are satisfied: GNU General Public License, version 2 with |
| * the GNU Classpath Exception [1] and GNU General Public |
| * License, version 2 with the OpenJDK Assembly Exception [2]. |
| * |
| * [1] https://www.gnu.org/software/classpath/license.html |
| * [2] http://openjdk.java.net/legal/assembly-exception.html |
| * |
| * SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH |
| * Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception |
| --> |
| <cite></cite> |
| <footer class="footer"> |
| <div class="md-footer-meta"> |
| |
| |
| <div class="above-line"> |
| <div class="above-line-links"> |
| <div class="column"> |
| <h3 >Docs</h3> |
| <span class="footer-link"><a href="/openj9/docs/openj9_newuser/" >New to OpenJ9?</a></span> |
| <span class="footer-link"><a href="/openj9/docs/introduction/">Getting started</a></span> |
| <span class="footer-link"><a href="/openj9/docs/cmdline_specifying/">Command-line options</a></span> |
| </div> |
| |
| <div class="column"> |
| <h3>Resources</h3> |
| <span class="footer-link"><a href="https://www.eclipse.org/openj9/about/" rel="noopener noreferrer" target="_blank">About</a></span> |
| <span class="footer-link"><a href="https://www.eclipse.org/openj9/performance/" rel="noopener noreferrer" target="_blank">Performance</a></span> |
| </div> |
| |
| <div class="column"> |
| <h3 >Community</h3> |
| <span class="footer-link"><a href="https://www.eclipse.org/openj9/news/" rel="noopener noreferrer" target="_blank">News</a></span> |
| <span class="footer-link"><a href="https://blog.openj9.org/" rel="noopener noreferrer" target="_blank">Blogs</a></span> |
| </div> |
| </div> |
| |
| <div class="column-incubator"> |
| <div class="arrange-column"> |
| <h3 ><b>OpenJ9 is an Eclipse Incubator project</b></h3> |
| <a class="incubator-image" href="http://wiki.eclipse.org/Development_Resources/Process_Guidelines/What_is_Incubation" target="_blank"><img width="50px" src="../cr/incubator-logo.svg" alt="Eclipse Incubation"></a> |
| </div> |
| </div> |
| </div> |
| |
| <div class="horizontal-line"></div> |
| |
| <div class="below-line"> |
| <span class="below-line-links"><a href="https://www.eclipse.org/" rel="noopener noreferrer" target="_blank">Eclipse Foundation Website </a></span> |
| <span class="below-line-links"><a href="https://www.eclipse.org/legal/privacy.php" rel="noopener noreferrer" target="_blank">Privacy Policy</a></span> |
| <span class="below-line-links"><a href="https://www.eclipse.org/legal/termsofuse.php" rel="noopener noreferrer" target="_blank">Terms of Use</a></span> |
| <span class="below-line-links"><a href="https://www.eclipse.org/legal/copyright.php" rel="noopener noreferrer" target="_blank">Copyright Agent</a></span> |
| <span class="below-line-links"><a href="https://www.eclipse.org/legal/" rel="noopener noreferrer" target="_blank">Legal</a></span> |
| <div class="below-line-social-media-icons"> |
| <span class="social-media-link"> <a href="https://twitter.com/openj9/" rel="noopener noreferrer" target="_blank"> <img src="../cr/twitter-logo.svg" alt="Twitter Logo"></img></a></span> |
| <span class="social-media-link"> <a href="https://github.com/eclipse/openj9" rel="noopener noreferrer" target="_blank"> <img src="../cr/github-logo.svg" alt="GitHub Logo"></img></a></span> |
| <span class="social-media-link"> <a href="https://openj9.slack.com/" rel="noopener noreferrer" target="_blank"><img src="../cr/slack-icon.svg" alt="Slack logo"></img></a></span> |
| <span class="social-media-link"> <a href="https://stackoverflow.com/search?q=%23OpenJ9" rel="noopener noreferrer" target="_blank"><img src="../cr/stackoverflow-logo.svg" alt="Stack Overflow logo"></img></a></span> |
| </div> |
| </div> |
| </div> |
| </footer> |
| |
| </div> |
| |
| <script src="../assets/javascripts/application.a8b5e56f.js"></script> |
| |
| |
| |
| |
| <script>app.initialize({version:"1.0.4",url:{base:".."}})</script> |
| |
| <script src="../javascripts/oj9.js"></script> |
| |
| |
| |
| |
| |
| <script> |
| window.ga = window.ga || function() { |
| (ga.q = ga.q || []).push(arguments) |
| } |
| ga.l = +new Date |
| /* Setup integration and send page view */ |
| ga("create", "UA-105616558-3", "mkdocs.org") |
| ga("set", "anonymizeIp", true) |
| ga("send", "pageview") |
| /* Register handler to log search on blur */ |
| document.addEventListener("DOMContentLoaded", () => { |
| if (document.forms.search) { |
| var query = document.forms.search.query |
| query.addEventListener("blur", function() { |
| if (this.value) { |
| var path = document.location.pathname; |
| ga("send", "pageview", path + "?q=" + this.value) |
| } |
| }) |
| } |
| }) |
| </script> |
| <script async src="https://www.google-analytics.com/analytics.js"></script> |
| |
| |
| </body> |
| </html> |