Dept of Computer - PowerPoint PPT Presentation

About This Presentation
Title:

Dept of Computer

Description:

JikesRVM Dept of Computer & Information Sciences University of Delaware – PowerPoint PPT presentation

Number of Views:44
Avg rating:3.0/5.0
Slides: 13
Provided by: eecisUdel2
Category:
Tags: computer | dept

less

Transcript and Presenter's Notes

Title: Dept of Computer


1
JikesRVM
  • Dept of Computer Information Sciences
  • University of Delaware

2
Contents
  • Introduction to JikesRVM
  • Optimizations
  • IRs (Intermediate Representations)
  • Editing JikesRVM
  • Steps For Project1
  • Questions

3
Introduction to JikesRVM
  • This is not a Java source compiler.
  • JikesRVM is a Virtual Machine.
  • Open Source.
  • Converts from Byte code ? Machine Code

4
Functions of the RVM
  • Loads the required class files
  • Converts the class files (OS independent
    bytecode) to machine code (OS and Architecture
    dependent)
  • Optimizes byte code in the process of the above
    conversion.
  • Tracks Compilation time and provides rudimentary
    profiling.

5
Compilation
  • Download the gz file from source forge
  • http//downloads.sourceforge.net/jikesrvm/jikesrvm
    -3.0.1.tar.bz2
  • by using the command wget ltweb linkgt
  • Untar the file tar zxf jikesrvm-3.0.1.tar.bz2
  • Inside the jikesrvm directory create a new
    .ant.properties file
  • http//www.cis.udel.edu/skulkarn/ta_files/.ant.pr
    operties

6
Compilation II
  • Run command java-config -s sun-jdk-1.6
  • Inside this directory run ant and this would
    create the executable image of the rvm.
  • Binaries are stored in (jikesrvm-3.0.1/dist/FastAd
    aptiveGenMS_x86_64-linux) folder
  • Compile your source code with javac
  • Run using the rvm binary present in the above
    folder.
  • You may want to add this directory to the PATH
    environment variable.

7
Optimization
  • There are different levels of optimizations from
    O0 to O3.
  • List of optimizations that are performed in all
    the different optimization levels are available
    at
  • http//www.cis.udel.edu/skulkarn/ta_files/OptLeve
    ls.tar.gz
  • In brief no of steps in various optimization
    levels are
  • Each level of optimization is a super set of the
    previous level.

O0 44
O1 53
O2 53

8
Intermediate Representations
For more information please go thru
http//www.ugrad.cs.ubc.ca/cs411/2006W2/handouts/
jikes-IR-shane-brewer.pdf
9
Editing the JikesRVM
  • Adding of a new command line argument
  • The list of files that govern and define the
    parameters are at jikesrvm-3.0.0/rvm/src-generate
    d/options
  • I wanted to add a parameter that could switch off
    multiple optimizations at the same time, so I
    added V LIST_TO_SKIP String \"123\List of
    optimizations to skip
  • Remember that the number of new lines also are
    important. So do not upset those.
  • You will have to clean the previous build by
    using ant very-clean command
  • Build again by ant command.

10
Important source directories
  • Package responsible for choosing the
    optimizations is org.jikesrvm.compilers.opt.driver
  • OptimizationPlanner.java is responsible for
    creating the list of optimizations that the code
    would go through.
  • CompilationPlan.java Performs those
    optimizations in the order that was set in
    OptimizationPlanner.
  • Actuall implementations of the optimizations can
    be found under the root package
    org.jikesrvm.compilers.opt e.g.
    LocalCastOptimization.java is the implementation
    LocalCastOptimization.

11
Steps for Project1
  • Step1 and Step 2 are straightfwd.
  • Step3 use time rvm ltcommand line parametersgt
  • Step4 Based on the different optimizations that
    you would like to switch off, find and compare
    the results of running time. E.g. You might want
    to switch off Local ConstantProp or Branch
    Optimizations and see the effect it has on the
    running times.

12
Questions?
Most of the files and this presentation is
available at http//www.cis.udel.edu/skulkarn/ta
.html
Write a Comment
User Comments (0)
About PowerShow.com