PureEdgeSim
PureEdgeSim: A simulation framework for performance evaluation of cloud, fog, and pure edge computing environments.
Install / Use
/learn @CharafeddineMechalikh/PureEdgeSimREADME
PureEdgeSim
PureEdgeSim: A simulation framework for performance evaluation of cloud, edge and mist computing environments

Please Cite It As (Kindly do not use the github link):
Mechalikh, C., Taktak, H., & Moussa, F. (2021). PureEdgeSim: A simulation framework for performance evaluation of cloud, edge and mist computing environments. Computer Science and Information Systems, 18(1), 43-66.
Mechalikh, C., Safavifar, Z., & Golpayegani, F. (2025). Quality matters: A comprehensive comparative study of edge computing simulators. Simulation Modelling Practice and Theory, 138, 103042.
Bibtex:
@article{mechalikh2021pureedgesim,
title={PureEdgeSim: A simulation framework for performance evaluation of cloud, edge and mist computing environments},
author={Mechalikh, Charafeddine and Taktak, Hajer and Moussa, Faouzi},
journal={Computer Science and Information Systems},
volume={18}
number={1},
pages={43--66},
year={2021}
}
@article{mechalikh2025quality,
title={Quality matters: A comprehensive comparative study of edge computing simulators},
author={Mechalikh, Charafeddine and Safavifar, Zahra and Golpayegani, Fatemeh and others},
journal={Simulation Modelling Practice and Theory},
volume={138},
pages={103042},
year={2025},
publisher={Elsevier}
}
Version 5.1 Changelog (October 18th 2022)
<details> <summary>"Click to expand"</summary>-
Updated the energy model with the ability to set an initial battery level for generated devices, either programmatically or via the xml file.
-
Now users can extend the simulation manager to change its behavior, and easily integrate it in the simulation.
-
Users can now easily integrate a custom task class.
-
All entities are now notified at the end of the simulation through onSimulationEnd() method.
-
Failure Model: now tasks can fail due to insufficient resources: RAM, STORAGE, CPU Cores.
-
Disabled some unnecessary network links events/loops for better performance.
-
Now tasks can be scheduled in batches instead of being scheduled all at once at the beginning of the simulation (hence, decreasing the number of events and therefore, faster simulations and less memory usage).
-
Removed unnecessary loops when orchestrating tasks (e.g., no need to browse through edge devices when the cloud only architecture is used, etc.)
-
Overall version 5.1 can be 30 times faster and supports up to 8 times the number of tasks compared to previous version 5.0 (see figure below).
-
Improved extensibility: Users can now easily incorporate a custom task class, custom simulation manager, as well as a custom topology creator.
-
Now applications placement decisions are done after each failure (default behavior, can be changed by extending the DefaultSimulationManager and DefaultOrchestrator classes).
-
Reduced duplication and improved code quality.
-
Other fixes..
<br></br>
<a id="overview"></a>
<br></br>
<a id="important"></a>
- <p align="justify">The development and maintenance of this project requires a considerable effort. Thus, any form of contribution is encouraged. </p>
- <p align="justify">If you are willing to use the framework to implement your own project on top of it, creating a fork is a bad solution. You are not supposed to modify the code base to implement your project, but extend it by creating some subclasses. Unless you plan to redistribute your changes, you will end up with an incompatible and obsolete version of the framework. The project is constantly evolving and bug fixes are a priority. Your fork with personal changes will miss these updates and high performance improvements.</p>
- <p align="justify">If you just came across this project and want to check it out later, don't forget to add a star :star: :wink:.</p>
<br></br>
<a id="exclusive-features"></a>
- Realistic modeling of edge computing scenarios (and its related computing paradigms).
- It supports devices heterogeneity (sensors, mobile devices, battery-powered..).
- It supports the heterogeneity of their means of communication (WiFi, 5G, 4G, Ethernet..).
- Realistic modeling of computing infrastructure (modeling computational tasks, infrastructure topology...).
- Realistic network model (Latency, bandwidth allocation, support for peer to peer communications, routing..).
- Realistic mobility model.
- Realistic energy model.
- The support for online decision making (tasks orchestration, scheduling, etc.).
- The study of QoS-aware architectures and topologies.
- Efficiency and Scalability.
- PureEdgeSim supports the simulation of thousands of devices (even +30000 devices).
- PureEdgeSim suppo
