├── .github └── workflows │ └── docs.yml ├── .gitignore ├── AUTHORS ├── LICENSE ├── Makefile ├── README.md ├── doc ├── .nojekyll ├── Makefile ├── README.md ├── _static │ ├── .gitkeep │ ├── logo-h150.png │ ├── logo-paths.svg │ └── logo.png ├── analysis │ └── index.rst ├── concepts │ └── index.rst ├── conf.py ├── contents.rst ├── examples │ └── index.rst ├── figures │ ├── architecture-overview.png │ ├── default-faas-system-components.jpg │ ├── function-conceptual-view.png │ ├── functionsim-invoke-times.png │ └── workload-generators.png ├── function_sims │ └── index.rst ├── index.rst ├── requirements.txt └── system │ └── index.rst ├── examples ├── README.md ├── __init__.py ├── analysis │ ├── __init__.py │ └── main.py ├── basic │ ├── __init__.py │ └── main.py ├── custom_function_sim │ ├── __init__.py │ └── main.py ├── custom_scheduler │ ├── __init__.py │ └── main.py ├── request_gen │ ├── __init__.py │ └── main.py └── watchdogs │ ├── __init__.py │ ├── inference.py │ ├── main.py │ └── training.py ├── ext ├── __init__.py └── raith21 │ ├── __init__.py │ ├── benchmark │ ├── __init__.py │ └── constant.py │ ├── calculations.py │ ├── characterization.py │ ├── deployments.py │ ├── device.py │ ├── etherdevices.py │ ├── fet.py │ ├── functionsim.py │ ├── generator.py │ ├── generators │ ├── __init__.py │ ├── cloudcpu.py │ ├── cloudgpu.py │ ├── edgecloudlet.py │ ├── edgegpu.py │ ├── edgesbc.py │ ├── edgetpu.py │ ├── generate.py │ ├── hybridbalanced.py │ └── hybridbalanced_jetson.py │ ├── images.py │ ├── loader.py │ ├── main.py │ ├── model.py │ ├── oracles.py │ ├── predicates.py │ ├── priorities.py │ ├── resourcemonitor.py │ ├── resources.py │ ├── storage.py │ ├── topology.py │ ├── util │ ├── __init__.py │ ├── ga.py │ ├── predicates.py │ ├── skippy.py │ └── vanilla.py │ └── utils.py ├── notebooks ├── __init__.py └── workload_patterns.ipynb ├── requirements-dev.txt ├── requirements.txt ├── setup.py └── sim ├── __init__.py ├── benchmark.py ├── core.py ├── degradation.py ├── docker.py ├── faas ├── __init__.py ├── core.py ├── scaling.py ├── system.py └── watchdogs.py ├── faassim.py ├── hpa.py ├── logging.py ├── metrics.py ├── net.py ├── oracle ├── __init__.py ├── data │ ├── __init__.py │ └── distributions.py └── oracle.py ├── requestgen.py ├── resource.py ├── skippy.py └── topology.py /.github/workflows/docs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/.github/workflows/docs.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/.gitignore -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/AUTHORS -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/README.md -------------------------------------------------------------------------------- /doc/.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /doc/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/Makefile -------------------------------------------------------------------------------- /doc/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/README.md -------------------------------------------------------------------------------- /doc/_static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /doc/_static/logo-h150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/_static/logo-h150.png -------------------------------------------------------------------------------- /doc/_static/logo-paths.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/_static/logo-paths.svg -------------------------------------------------------------------------------- /doc/_static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/_static/logo.png -------------------------------------------------------------------------------- /doc/analysis/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/analysis/index.rst -------------------------------------------------------------------------------- /doc/concepts/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/concepts/index.rst -------------------------------------------------------------------------------- /doc/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/conf.py -------------------------------------------------------------------------------- /doc/contents.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/contents.rst -------------------------------------------------------------------------------- /doc/examples/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/examples/index.rst -------------------------------------------------------------------------------- /doc/figures/architecture-overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/figures/architecture-overview.png -------------------------------------------------------------------------------- /doc/figures/default-faas-system-components.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/figures/default-faas-system-components.jpg -------------------------------------------------------------------------------- /doc/figures/function-conceptual-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/figures/function-conceptual-view.png -------------------------------------------------------------------------------- /doc/figures/functionsim-invoke-times.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/figures/functionsim-invoke-times.png -------------------------------------------------------------------------------- /doc/figures/workload-generators.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/figures/workload-generators.png -------------------------------------------------------------------------------- /doc/function_sims/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/function_sims/index.rst -------------------------------------------------------------------------------- /doc/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/index.rst -------------------------------------------------------------------------------- /doc/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/requirements.txt -------------------------------------------------------------------------------- /doc/system/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/doc/system/index.rst -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/README.md -------------------------------------------------------------------------------- /examples/__init__.py: -------------------------------------------------------------------------------- 1 | name = 'examples' 2 | -------------------------------------------------------------------------------- /examples/analysis/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/analysis/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/analysis/main.py -------------------------------------------------------------------------------- /examples/basic/__init__.py: -------------------------------------------------------------------------------- 1 | name = 'basic' 2 | -------------------------------------------------------------------------------- /examples/basic/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/basic/main.py -------------------------------------------------------------------------------- /examples/custom_function_sim/__init__.py: -------------------------------------------------------------------------------- 1 | name = 'function_sim' 2 | -------------------------------------------------------------------------------- /examples/custom_function_sim/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/custom_function_sim/main.py -------------------------------------------------------------------------------- /examples/custom_scheduler/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/custom_scheduler/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/custom_scheduler/main.py -------------------------------------------------------------------------------- /examples/request_gen/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/request_gen/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/request_gen/main.py -------------------------------------------------------------------------------- /examples/watchdogs/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/watchdogs/inference.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/watchdogs/inference.py -------------------------------------------------------------------------------- /examples/watchdogs/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/watchdogs/main.py -------------------------------------------------------------------------------- /examples/watchdogs/training.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/examples/watchdogs/training.py -------------------------------------------------------------------------------- /ext/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ext/raith21/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ext/raith21/benchmark/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ext/raith21/benchmark/constant.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/benchmark/constant.py -------------------------------------------------------------------------------- /ext/raith21/calculations.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/calculations.py -------------------------------------------------------------------------------- /ext/raith21/characterization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/characterization.py -------------------------------------------------------------------------------- /ext/raith21/deployments.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/deployments.py -------------------------------------------------------------------------------- /ext/raith21/device.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/device.py -------------------------------------------------------------------------------- /ext/raith21/etherdevices.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/etherdevices.py -------------------------------------------------------------------------------- /ext/raith21/fet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/fet.py -------------------------------------------------------------------------------- /ext/raith21/functionsim.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/functionsim.py -------------------------------------------------------------------------------- /ext/raith21/generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generator.py -------------------------------------------------------------------------------- /ext/raith21/generators/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ext/raith21/generators/cloudcpu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/cloudcpu.py -------------------------------------------------------------------------------- /ext/raith21/generators/cloudgpu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/cloudgpu.py -------------------------------------------------------------------------------- /ext/raith21/generators/edgecloudlet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/edgecloudlet.py -------------------------------------------------------------------------------- /ext/raith21/generators/edgegpu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/edgegpu.py -------------------------------------------------------------------------------- /ext/raith21/generators/edgesbc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/edgesbc.py -------------------------------------------------------------------------------- /ext/raith21/generators/edgetpu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/edgetpu.py -------------------------------------------------------------------------------- /ext/raith21/generators/generate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/generate.py -------------------------------------------------------------------------------- /ext/raith21/generators/hybridbalanced.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/hybridbalanced.py -------------------------------------------------------------------------------- /ext/raith21/generators/hybridbalanced_jetson.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/generators/hybridbalanced_jetson.py -------------------------------------------------------------------------------- /ext/raith21/images.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/images.py -------------------------------------------------------------------------------- /ext/raith21/loader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/loader.py -------------------------------------------------------------------------------- /ext/raith21/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/main.py -------------------------------------------------------------------------------- /ext/raith21/model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/model.py -------------------------------------------------------------------------------- /ext/raith21/oracles.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/oracles.py -------------------------------------------------------------------------------- /ext/raith21/predicates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/predicates.py -------------------------------------------------------------------------------- /ext/raith21/priorities.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/priorities.py -------------------------------------------------------------------------------- /ext/raith21/resourcemonitor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/resourcemonitor.py -------------------------------------------------------------------------------- /ext/raith21/resources.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/resources.py -------------------------------------------------------------------------------- /ext/raith21/storage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/storage.py -------------------------------------------------------------------------------- /ext/raith21/topology.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/topology.py -------------------------------------------------------------------------------- /ext/raith21/util/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ext/raith21/util/ga.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/util/ga.py -------------------------------------------------------------------------------- /ext/raith21/util/predicates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/util/predicates.py -------------------------------------------------------------------------------- /ext/raith21/util/skippy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/util/skippy.py -------------------------------------------------------------------------------- /ext/raith21/util/vanilla.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/util/vanilla.py -------------------------------------------------------------------------------- /ext/raith21/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/ext/raith21/utils.py -------------------------------------------------------------------------------- /notebooks/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /notebooks/workload_patterns.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/notebooks/workload_patterns.ipynb -------------------------------------------------------------------------------- /requirements-dev.txt: -------------------------------------------------------------------------------- 1 | coverage>=4.5.3 2 | pytest-cov>=2.7.1 3 | notebook==6.4.12 4 | jupyter==1.0.0 -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/requirements.txt -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/setup.py -------------------------------------------------------------------------------- /sim/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sim/benchmark.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/benchmark.py -------------------------------------------------------------------------------- /sim/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/core.py -------------------------------------------------------------------------------- /sim/degradation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/degradation.py -------------------------------------------------------------------------------- /sim/docker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/docker.py -------------------------------------------------------------------------------- /sim/faas/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/faas/__init__.py -------------------------------------------------------------------------------- /sim/faas/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/faas/core.py -------------------------------------------------------------------------------- /sim/faas/scaling.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/faas/scaling.py -------------------------------------------------------------------------------- /sim/faas/system.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/faas/system.py -------------------------------------------------------------------------------- /sim/faas/watchdogs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/faas/watchdogs.py -------------------------------------------------------------------------------- /sim/faassim.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/faassim.py -------------------------------------------------------------------------------- /sim/hpa.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/hpa.py -------------------------------------------------------------------------------- /sim/logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/logging.py -------------------------------------------------------------------------------- /sim/metrics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/metrics.py -------------------------------------------------------------------------------- /sim/net.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/net.py -------------------------------------------------------------------------------- /sim/oracle/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sim/oracle/data/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sim/oracle/data/distributions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/oracle/data/distributions.py -------------------------------------------------------------------------------- /sim/oracle/oracle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/oracle/oracle.py -------------------------------------------------------------------------------- /sim/requestgen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/requestgen.py -------------------------------------------------------------------------------- /sim/resource.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/resource.py -------------------------------------------------------------------------------- /sim/skippy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/skippy.py -------------------------------------------------------------------------------- /sim/topology.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/edgerun/faas-sim/HEAD/sim/topology.py --------------------------------------------------------------------------------