Skip to content

eneapane/lifteval

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

130 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lifteval

Lifteval is a code base and an aspiring framework that was developed in order to evaluate a wide array lifters with self-implemented analyses.

Installation

In order to use the lifteval framework, you should build the corresponding image on your machine. This may take several hours. Firstly, make sure you have docker installed and your docker engine is running. In order to build the correct target image, navigate to lifteval’s project directory and use the following command:

./build_eval_stack.sh

After the image has been successfully built, you can start the container along with the interactive shell attached to it by using the command:

docker run -it --rm lightweight-lifteval:latest

The entrypoint for this image is the command:

python3 /app/src/main.py

which will by default launch the csmith experiment with 100 generated files across the four optimization levels. If you want to change that, delete the directory /app/output and restart running the framework by using the command above along with the following command line arguments:

  • -file_number : Specify the number of files to be generated and analyzed. For example:
      python3 /app/src/main.py --file_number 200
    This command will run the experiment with 200 files instead of the default 100.
  • -optimization_levels <o0,o1,o2,o3>: Change the optimization levels for the experiment. For example:
      python3 /app/src/main.py --optimization_levels o1,o2
    This command will run the experiment with only optimization levels o1 and o2.
  • -svf: Switch the experiment to use the SVF test suite instead of Csmith:
      python3 /app/src/main.py --svf

By combining these options, you can customize your experiment runs to fit your specific needs. For example, running the experiment with 200 files and only optimization levels o1 and o3, you would use the command:

python3 /app/src/main.py --file_number 200 --optimization_levels o1,o3

About

Implementing metrics to evaluate binary lifters

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors