Re: JavaMemoryModel: What's "control dependence" mean?

From: Clifford Click (
Date: Fri Sep 14 2001 - 14:04:22 EDT

> That said, how big is the impact in practice? My impression is that
> most null pointer checks, etc. can be resolved using purely local
> information (and indeed that doing so was crucial to performance).
> It's a pain to insert the ordering constraints, sure, but what real
> performance impact does it have? For example, I suspect, but don't
> know, that the main benefit of related field analysis is in
> eliminating comparisons and conditional traps/branches, and the extra
> flexibility in instruction scheduling isn't a huge win. Does anyone
> have data either way? Keith?
> -Jan-Willem Maessen
> -------------------------------
> JavaMemoryModel mailing list -

Hotspot certainly removes most null pointer checks using only local
info. Sparc is an in-order processor so scheduling is a big deal
for us, but the bigger win is CSE that follows when the null check
is removed.

I certainly agree with Jan that we need a semantics independent of
optimizations. It behooves us to come up with a semantics that
allows common and profitable optimizations to remain cheap and easy
to do - but in any case First come the semantics and then the JVM
implementors can figure out how to make it fast.


Cliff Click                  Compiler Designer and Researcher
cliffc at            Java Software
(408) 276-7046               MS USCA14-102

------------------------------- JavaMemoryModel mailing list -

This archive was generated by hypermail 2b29 : Thu Oct 13 2005 - 07:00:35 EDT