% $Id: abstract.tex,v 1.7 1997/07/30 19:18:25 cierniak Exp $


\section*{SUMMARY}

{\bf
  Our previous experience with an off-line Java
  optimizer~\cite{Cierniak-offline-CPE-1997} has shown that some
  traditional algorithms used in compilers are too slow for a JIT
  compiler.  In this paper we propose and implement faster ways of
  performing analyses needed for our optimizations.  For instance we
  have replaced {\em reaching definitions\/} with {\em constant
    values\/} and {\em loop induction variables\/} with {\em
    loop-defined variables}.  As the result our JIT compiler, Briki,
  is very fast, so that its running time is negligible even when the
  data sets used with our benchmarks result in execution times of only
  a few seconds.  The impact for the same benchmarks running on more
  realistic problem sizes would be even smaller.
  
  Currently the speedups resulting from applying our optimizations are
  between 10\% and 20\%, but when the JIT compiler will perform
  standard optimizations which are absent in the current version of
  the JIT compiler used by us, the speedups should be similar to the
  ones observed for Fortran programs---up to 50\%.
}
