Skip to content

oslab-ewha/TOMS

 
 

Repository files navigation

Co-TOMS (Co-optimizing Task Offloading, Memory placement, and voltage Scaling)

This project performs real-time task scheduling based on steady-state genetic algorithms in order to save power consumptions in CPU, memory, and network subsystems with deadline constraints.

Co-TOMS considers three energy-saving techniques, DVFS (dynamic voltage/frequency scaling), hybrid memory placement, and task offloading to edge servers, across different system layers.

Two executables included in this project, which can simulate Co-TOMS in comparison with DVFS, Offloading, and basic configurations.

  • gasgen: task generation tool based on CPU and total utilization
  • gastask: scheduling scheme generator based on GA

For comparison purposes, our basic simulator supporting dynamic voltage scaling (DVS) and hybrid memory (HM) can be downloaded at https://github.com/oslab-ewha/simrts.

Build

Just make to build gastask

# make

Run

  • Create a new configuration file. Refer to gastask.conf.tmpl.
  • run gasgen
# ./gasgen gastask.conf
  • Tasks list will be generated into task_generated.txt network_generated.txt network_commander_generated.txtaccording to gastask.conf
  • paste task_generated.txt into the task section of gastask.conf
  • paste network_generated.txt into the network section of gastask.conf
  • paste network_commander_generated.txt into the net_commander_ section of gastask.conf
  • run gastask
# ./gastask gastask.conf
  • scheduling information is generated in task.txt, which can be used as an input to simrts.

Batch run

  • run.sh performs all procedures in batch
    • Before executing run.sh, ./tmp folder should be generated in root.

Data Set

There are two types of data set to perform the simulations of Co-TOMS.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 88.3%
  • Shell 10.1%
  • Makefile 1.6%