Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8027455

Improve symbol table scan times during gc pauses

    Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b03

      Backports

        Description

        The symbol table stores references to symbols. Each of these symbols is reference counted; if the reference count of a symbol reaches zero, it can be removed.

        Currently, the symbol table is cleaned up during various GC pauses, as it provides a convenient opportunity where no random modification by other threads can occur.

        However, particularly because this cleanup process is serial, it takes a long time. In particular across a large range of FMW applications (see attached log file), it takes 50% of remark pause time, which is way too high.

        Symbol table scan/scrubbing pause time must be improved; there are several options for this:

        - parallelize this task
        - incrementally scrub the symbol table (i.e. only parts at once) given e.g. a time allowance
        - maybe move it or parts of it, e.g. just finding the scrub-able entries, to a concurrent task

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  tschatzl Thomas Schatzl
                  Reporter:
                  tschatzl Thomas Schatzl
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: