The PAMM (Program Adaptive Memory Management) system can be checked out from the compiler group repository at /p/compiler/repos/pamm and should "just work." You'll have to make a few changes if you would like to use it outside of the URCS environment:
  • Install soot in your local environment: Download sootall-2.2.4.jar. Unjar it by jar xf sootall-2.2.4.jar to produce three packages, jasmin, polyglot, and soot. Add the parent directory to CLASSPATH.
  • Install the jikes RVM (aka jalapeno) locally: Download jikes2.9.2. Run bunzip2 to decompress. Run tar -xf to extract the directory.
  • Include the directories of these tools in the CLASSPATH (I don't know whether the parent dir suffices).

A pre-built Jikes system is in /p/compiler/JavaTools/jikes/. It should be moved to /p/compiler/built/ by some public-minded group member. To build Jikes on a new machine, go into the downloaded jikes directory. Edit the .ant.properties file and insert the following lines

ost.name=ia32-osx
config.name=production
dist.dir= where_you_want_to_install
At present (3/10/08), the build fails because it couldn't download asm-3.0.tar from download.fr2.forge.objectweb.org/asm/.

The whiteboard system uses the native code interface. Here is the instruction for compiling and running the whiteboard code.

  • To compile jni:
    cd /home/vax5/u28/zhangchl/workspace/javaAnalysis/src/jni and make A makefile under /home/vax5/u28/zhangchl/workspace/javaAnalysis/src/jni shows more details. After this step, we will get file libWhiteBoard.so and clearandinitshm

  • To use the whiteboard, we will have to run clearandinitshm to initilize the shared memory. This step must be done before any JVM is used.

  • To run with jni file: rvm -Djava.library.path=/u/zhangchl/workspace/javaAnalysis/src/jni/

Usage of the PAMM system is described in the included README file.


This topic: Main > TWikiGroups > CompilerGroup > CompilerRepository > AdaptiveMemoryManagement
Topic revision: r3 - 2008-03-10 - ChenDing
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding URCS? Send feedback