UseMembar should be set true and deprecate the flag

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Fixed
    • Priority: P3
    • 10
    • Affects Version/s: 10
    • Component/s: hotspot
    • None
    • b33

      Using mprotect for IPI have several problems (admittedly it's cool hack):
      - It's not guaranteed to work on future hardware/OS:es (we could start using membarrier() with the MEMBARRIER_CMD_SHARED_EXPEDITED to be future prof)
      - It doesn't work on arm/arm64 (again MEMBARRIER_CMD_SHARED_EXPEDITED would solve this)
      - Eventbased tracing must read thread states often (causes performance issues)
      - The complexity in the code is costly
      - The thread serialization is unstable on certain workloads/platforms/OS:es (last notice this week on win x86)
      - Fences are becoming cheaper
      - Thread-local handshakes is assumed to increase the reading of thread state
      - Scalability
      - JNI performance - false sharing

      Note that some application can show performance regression.
      This is especially true for application with few threads which does many short native calls.

            Assignee:
            Robbin Ehn
            Reporter:
            Robbin Ehn
            Votes:
            1 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: