FlowMark
FlowMark is a powerful benchmarking tool for the Flow Blockchain, providing key performance metrics to help optimize applications and conduct in-depth studies.
Created on 18th July 2023
•
FlowMark
FlowMark is a powerful benchmarking tool for the Flow Blockchain, providing key performance metrics to help optimize applications and conduct in-depth studies.
The problem FlowMark solves
FlowMark is a comprehensive benchmarking tool specifically designed to evaluate the performance of the Flow Blockchain. Understanding the performance characteristics of a Blockchain network is crucial, Developers need to know how their dApps will perform under various conditions, researchers need data to conduct in-depth studies, and enthusiasts want to understand the strengths and weaknesses of the technology they are invested in.
However, there currently exists no solution to benchmark the Flow Blockchain, creating a crucial gap in the ecosystem. With its unique architecture and consensus model, it differs significantly from other traditional blockchains, necessitating a tailor-made solution for performance evaluation. FlowMark is designed to fill this gap.
FlowMark provides a systematic and quantitative evaluation of the performance, simulating various workloads, and network conditions, and then measuring how the blockchain performs under these circumstances.
It provides a range of key metrics including transaction speed, seal rate, and network latency. These metrics are invaluable for identifying bottlenecks that can slow down the network or hinder the performance of dApps, and they provide a basis for comparison with other blockchain systems.
But FlowMark is not just for identifying problems. It's a tool for solutions. By understanding where bottlenecks are, developers can optimize their dApps, for researchers it is a treasure trove of data that facilitates comprehensive research into the performance characteristics, that allows for the writing of research papers and studies that can provide valuable insights for other researchers and developers.
In conclusion, it solves the problem of understanding and optimizing the performance of the Flow Blockchain, making it a more efficient, effective and understood technology. By filling a crucial gap we hope to pave the way for future innovations in Flow!
Challenges we ran into
The main challenge we ran into was managing sequence numbers since we wanted to send a bulk of transactions and sometimes the sequence number was not able to keep up with the transactions, due the varying tps. To fix this we implemented a key generation feature that would calculate the number of transactions that would be required for each round and then generate those amounts of keys such that each new key would have a consistent sequence number. Learning how to use the Flow-go-sdk to the fullest was also a great learning curve, the documentation was very good which helped us to adapt to it very swiftly. We also ran into a bunch of more issues related to the network which we would love to discuss with the Flow Team if possible! We are submitting the project at the very deadline that's why its pretty hard to talk about everything in here. Hope you understand. Thanks!
Tracks Applied (1)
