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

UseMembar should be set true and deprecate the flag

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P3 P3
    • 10
    • 10
    • 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.

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

              Created:
              Updated:
              Resolved: