Re: Release fence pollution in constructors and builders

2019-07-17 Thread Andriy Plokhotnyuk
Hi Aleksey, Thanks for your fast response! Now I see that all these usages of fences are for better, but on another side when combined they lead to the slowdown of the throughput for single-thread code greatly... And I feel a little panic when seeing ~1.5x times drop of performance for Scala 2

Re: Release fence pollution in constructors and builders

2019-07-17 Thread Aleksey Shipilev
On 7/17/19 9:06 AM, Andriy Plokhotnyuk wrote: > 1) Using of release (and sometime store-store) fences in all constructors in > GraalVM: > https://github.com/oracle/graal/blob/e9dbc9d6d3080daf22dec38ce8c234417e1a8e3c/compiler/src/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacemen

Release fence pollution in constructors and builders

2019-07-17 Thread Andriy Plokhotnyuk
Hi All, Latest versions of some JVMs and libraries started to use release fences in constructors or builders of data structures which are not concurrent by definition. Below are a couple of examples: 1) Using of release (and sometime store-store) fences in all constructors in GraalVM: https: