daajoe / runsolver_cg

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

runsolver_cg

BenchExec is a benchmarking tool which uses the features of the kernel, namely cgroups, for its reliable measurements and resource management. It limits resources like CPU time and memory and, can be run in isolation (container) without interfering with other running processes. BenchExec can be executed on large sets of input files and can generate the results in tabular and graph plotting form. It consists of 3 programs:

  • runexec: For benchmarking a single tool execution.
  • benchexec: For benchmarking several executions of a tool; and
  • table-generator: For generating result tables.
  1. Installation guide for BenchExec
  2. Run instances of runexec
  3. Important information and limitations with regards to BenchExec

cgroups_test

A bit of experimentation with cgroups was done to see how resources were monitored and limited.

main.py script:

Uses library - "cgroupspy". Can handle cpu bandwidth, cpusets and memory cgroups using the library's functions. Gives different statistics.

setup file script:

Run the setup.py only once as a root user to grant future access.

delete.py script:

Run the delete_cg.py only once as a root user to delete cgroups.

eventcontroller.py and eventcontroller_pressure.py scripts:

These scripts handle the memory.oom_control and memory.pressure_level featurs respectively provided by the memory resource controller of the cgroups.

About

License:GNU General Public License v3.0


Languages

Language:Python 68.7%Language:Shell 31.3%