From github.com+10233373+jhe33 at openjdk.java.net Wed Jun 3 03:08:31 2020 From: github.com+10233373+jhe33 at openjdk.java.net (Jie He) Date: Wed, 3 Jun 2020 03:08:31 GMT Subject: RFR: Enable array access instrumentation for aarch64 In-Reply-To: References: Message-ID: On Fri, 29 May 2020 04:09:57 GMT, Arthur Eubanks wrote: > Internally we actually have an implementation of TSan for C1 that's based on JDK 8 but it's not really tested. The > person who worked on it is no longer involved with the project, but it might be useful if we somehow create a patch > containing those changes. so do you (your team) have a plan to enable tsan in C1? I think it's more complicated than intrp. ------------- PR: https://git.openjdk.java.net/tsan/pull/13 From manc at openjdk.java.net Wed Jun 3 23:06:57 2020 From: manc at openjdk.java.net (Man Cao) Date: Wed, 3 Jun 2020 23:06:57 GMT Subject: RFR: Enable array access instrumentation for aarch64 In-Reply-To: References: Message-ID: On Wed, 3 Jun 2020 03:06:06 GMT, Jie He wrote: >> Internally we actually have an implementation of TSan for C1 that's based on JDK 8 but it's not really tested. The >> person who worked on it is no longer involved with the project, but it might be useful if we somehow create a patch >> containing those changes. > >> Internally we actually have an implementation of TSan for C1 that's based on JDK 8 but it's not really tested. The >> person who worked on it is no longer involved with the project, but it might be useful if we somehow create a patch >> containing those changes. > > so do you (your team) have a plan to enable tsan in C1? I think it's more complicated than intrp. We don't have a plan to port or enable tsan in C1 yet. The implementation is in JDK8 and has not been ported to JDK 11 or tip. We are currently a bit understaffed on the TSAN project, so we cannot commit to get C1 support working. ------------- PR: https://git.openjdk.java.net/tsan/pull/13 From github.com+10233373+jhe33 at openjdk.java.net Tue Jun 16 11:42:25 2020 From: github.com+10233373+jhe33 at openjdk.java.net (Jie He) Date: Tue, 16 Jun 2020 11:42:25 GMT Subject: RFR: Enable array access instrumentation for aarch64 In-Reply-To: References: Message-ID: On Wed, 3 Jun 2020 23:04:40 GMT, Man Cao wrote: > We don't have a plan to port or enable tsan in C1 yet. The implementation is in JDK8 and has not been ported to JDK 11 > or tip. We are currently a bit understaffed on the TSAN project, so we cannot commit to get C1 support working. Did you test the previous C1 with tsan enabled? could it benefit race detection for real workload than interpreter version? as we know, interpreter will report the race before C1 involved. ------------- PR: https://git.openjdk.java.net/tsan/pull/13 From manc at openjdk.java.net Wed Jun 17 07:06:45 2020 From: manc at openjdk.java.net (Man Cao) Date: Wed, 17 Jun 2020 07:06:45 GMT Subject: RFR: Enable array access instrumentation for aarch64 In-Reply-To: References: Message-ID: On Tue, 16 Jun 2020 11:39:55 GMT, Jie He wrote: > Did you test the previous C1 with tsan enabled? No. It was work-in-progress in 2017, and the author left our team and no one has picked it up afterwards. I vaguely recall there were some issues with deoptimization, but I don't know about the details. > could it benefit race detection for real workload than interpreter version? as we know, interpreter will report the > race before C1 involved. I don't quite get the question. tsan-in-C1 should only improve the speed of program execution, but does not affect the coverage of race detection. Races detectable with C1 instrumentation are also detectable with interpreter-only instrumentation. Currently TSAN should only be used in interpreter-only mode. -XX:+ThreadSanitizer implies -Xint, see here: https://github.com/openjdk/tsan/blob/5b22e1802c285b7a3b8764ac90da36476d08311a/src/hotspot/share/runtime/arguments.cpp#L4046 ------------- PR: https://git.openjdk.java.net/tsan/pull/13 From github.com+10233373+jhe33 at openjdk.java.net Wed Jun 17 07:22:51 2020 From: github.com+10233373+jhe33 at openjdk.java.net (Jie He) Date: Wed, 17 Jun 2020 07:22:51 GMT Subject: RFR: Enable array access instrumentation for aarch64 In-Reply-To: References: Message-ID: On Wed, 17 Jun 2020 07:04:11 GMT, Man Cao wrote: > > Did you test the previous C1 with tsan enabled? > > No. It was work-in-progress in 2017, and the author left our team and no one has picked it up afterwards. I vaguely > recall there were some issues with deoptimization, but I don't know about the details. > > could it benefit race detection for real workload than interpreter version? as we know, interpreter will report the > > race before C1 involved. > > I don't quite get the question. tsan-in-C1 should only improve the speed of program execution, but does not affect the > coverage of race detection. Races detectable with C1 instrumentation are also detectable with interpreter-only > instrumentation. Currently TSAN should only be used in interpreter-only mode. -XX:+ThreadSanitizer implies -Xint, see > here: > https://github.com/openjdk/tsan/blob/5b22e1802c285b7a3b8764ac90da36476d08311a/src/hotspot/share/runtime/arguments.cpp#L4046 yes, I knew tsan disabled compiler mode, I just wonder if the speed improvement by enabling tsan in c1 is worth the complexity. ------------- PR: https://git.openjdk.java.net/tsan/pull/13