Enhancing Bandwidth Incentive Simulation for Swarm: Recreating a Python-based Tool in Go
Bachelor thesis
Permanent lenke
https://hdl.handle.net/11250/3077142Utgivelsesdato
2023Metadata
Vis full innførselSamlinger
- Studentoppgaver (TN-IDE) [823]
Beskrivelse
Full text not available
Sammendrag
This thesis builds upon an existing Python simulation tool that models the behavior of bandwidth incentives in Swarm, forming the basis for our research.
Recognizing the potential for improvements, we undertook the challenge of recreating the existing tool in Go, aiming to enhance its performance and overall functionality.This thesis details the original design of the Python-based tool, the subsequent advancements made in our adjusted design, and specific implementation differences involved when developing the Go-based tool.
The primary focus of our work was to utilize the inherent advantages of Go, particularly its support for concurrency, to achieve enhanced performance in simulating bandwidth incentives.We also addressed various shortcomings of the original tool, incorporating implementation enhancements to better simulate Swarm and improve upon the overall quality and usability of the simulation tool.
In the evaluation phase of our study, we compare the execution times of the original Python-based simulation tool with the newly developed Go-based tool. Our findings reveal a significant improvement in performance, with the Go implementation outperforming the Python version by a factor of up to 10,000.
This paper contributes to the field of decentralized storage systems by highlighting the benefits of employing Go for simulation tasks, especially in scenarios that demand high performance. Our work provides valuable insights into the design considerations, implementation choices, and performance gains associated with recreating a simulation tool in Go for bandwidth incentives in Swarm. This thesis builds upon an existing Python simulation tool that models the behavior of bandwidth incentives in Swarm, forming the basis for our research.
Recognizing the potential for improvements, we undertook the challenge of recreating the existing tool in Go, aiming to enhance its performance and overall functionality.This thesis details the original design of the Python-based tool, the subsequent advancements made in our adjusted design, and specific implementation differences involved when developing the Go-based tool.
The primary focus of our work was to utilize the inherent advantages of Go, particularly its support for concurrency, to achieve enhanced performance in simulating bandwidth incentives.We also addressed various shortcomings of the original tool, incorporating implementation enhancements to better simulate Swarm and improve upon the overall quality and usability of the simulation tool.
In the evaluation phase of our study, we compare the execution times of the original Python-based simulation tool with the newly developed Go-based tool. Our findings reveal a significant improvement in performance, with the Go implementation outperforming the Python version by a factor of up to 10,000.
This paper contributes to the field of decentralized storage systems by highlighting the benefits of employing Go for simulation tasks, especially in scenarios that demand high performance. Our work provides valuable insights into the design considerations, implementation choices, and performance gains associated with recreating a simulation tool in Go for bandwidth incentives in Swarm.