E2Clab (Edge-to-Cloud lab)
Documentation: https://e2clab.gitlabpages.inria.fr/e2clab/
Main publication: https://hal.archives-ouvertes.fr/hal-02916032
Why E2Clab?
Distributed digital infrastructures for computation and analytics are now evolving towards an interconnected ecosystem allowing to execute complex application workflows from IoT Edge devices to the HPC Cloud (aka the Computing Continuum, the Digital Continuum, or the Transcontinuum). Understanding end-to-end performance in such a complex continuum is challenging. This breaks down to conciliating many, typically contradicting application requirements and constraints with low-level infrastructure design choices. One important challenge is to accurately reproduce relevant behaviors of a given application workflow and representative settings of the physical infrastructure underlying this complex continuum.
What is E2Clab?
E2Clab is a framework that implements a rigorous methodology that provides guidelines to move from real-life application workflows to representative settings of the physical infrastructure underlying this application in order to accurately reproduce its relevant behaviors and therefore understand end-to-end performance. Understanding end-to-end performance means rigorously mapping the scenario characteristics to the experimental environment, identifying and controlling the relevant configuration parameters of applications and system components, and defining the relevant performance metrics.
Furthermore, this methodology leverages research quality aspects such as the Repeatability, Replicability, and Reproducibility of experiments through a well-defined experimentation methodology and providing transparent access to the experiment artifacts and experiment results. This is an important aspect that allows that the scientific claims are verifiable by others in order to build upon them.
E2Clab sits on top of EnOSlib, a library which brings reusable building blocks for configuring the infrastructure, provisioning software on remote hosts as well as organizing the experimental workflow. Interaction with the testbeds is deferred to EnOSlib’s provider and various actions on remote hosts also rely on mechanisms offered by the library (e.g monitoring stack).
What E2Clab allows?
E2Clab allows researchers to reproduce in a representative way the application behavior in a controlled environment for extensive experiments and therefore to understand end-to-end performance of applications by correlating results to the parameter settings. E2Clab provides a rigorous approach to answering questions like: How to identify infrastructure bottlenecks? Which system parameters and infrastructure configurations impact on performance and how?
High-level features provided by E2Clab:
Leverage experiment Repeatability, Replicability, and Reproducibility
Configure the whole experimental environment (layers & services; network; and application workflow) in a descriptive manner
Map between application parts and machines on the Edge, Fog and Cloud
Scale and variate scenario deployments
Manage experiment deployment and execution on large-scale testbed (e.g. Grid’5000)
Backup metrics, log files, monitoring data, etc. generated during execution of experiments
E2Clab is, to the best of our knowledge, the first platform to support the complete analysis cycle of an application on the Computing Continuum. It provides two simple abstractions for modeling such applications and infrastructures: layers and services. While these abstractions are limited, we have found that they are powerful enough to express several applications deployed on different environments, ranging from the Edge to the Cloud. Furthermore, we believe that the core idea behind E2Clab, of a methodology to enable the design of relevant testbeds for 3R’s experiments, may prove useful for understanding the performance of large-scale applications.
Citation
If you publish work that uses E2Clab, please cite E2Clab as follows:
@inproceedings{rosendo:hal-02916032,
TITLE = {{E2Clab: Exploring the Computing Continuum through Repeatable, Replicable and Reproducible Edge-to-Cloud Experiments}},
AUTHOR = {Rosendo, Daniel and Silva, Pedro and Simonin, Matthieu and Costan, Alexandru and Antoniu, Gabriel},
URL = {https://hal.archives-ouvertes.fr/hal-02916032},
BOOKTITLE = {{Cluster 2020 - IEEE International Conference on Cluster Computing}},
ADDRESS = {Kobe, Japan},
PAGES = {1-11},
YEAR = {2020},
MONTH = Sep,
DOI = {10.1109/CLUSTER49012.2020.00028},
KEYWORDS = {Reproducibility ; Methodology ; Computing Continuum ; Edge Intelligence},
PDF = {https://hal.archives-ouvertes.fr/hal-02916032/file/Cluster_2020_E2Clab_HAL_v1.pdf},
HAL_ID = {hal-02916032},
HAL_VERSION = {v1},
}
Please also consider adding your publication to the list of E2Clab-based publications in the docs, just open a Pull Request.
Metadata
Release files for e2clab 3.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| e2clab-3.7.0.tar.gz | 108.2 kB | Without provenance | Details for e2clab-3.7.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| e2clab-3.7.0-py3-none-any.whl | Python 3 | none | any | Details for e2clab-3.7.0-py3-none-any.whl |
Total release size: 224.4 kB
Release files / e2clab-3.7.0.tar.gz
| Download URL | e2clab-3.7.0.tar.gz |
|---|---|
| Size | 108.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a10d3cbacfbf09f04903295fe7146ed867bc80bf4e81f56a5d241fbb32452f4e
|
|
BLAKE2b-256 checksum How to use checksums |
ca7440531282a6d932a99fb92e79b4a53f27fe4fc468d120e7a566cff5ab7641
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.12
|
Release files / e2clab-3.7.0-py3-none-any.whl
| Download URL | e2clab-3.7.0-py3-none-any.whl |
|---|---|
| Size | 116.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
87d3a53f6b57c8cf2cb127183dc46d20b1fda835ff7c9b68b63d0657e98c057a
|
|
BLAKE2b-256 checksum How to use checksums |
f9246942e2d426ef8f490b093880bf9f1843bef1fff54589b1e831ab5493d3d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.12
|
Security for e2clab 3.7.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.