In the digital age, the performance evaluation of Internet Computers (ICs for short) has become the focus of attention in the scientific and technological community. The DFINITY Foundation began a series of performance tests on the IC in November 2021. These tests are designed to fully understand the scalability and processing capabilities of the IC. This article will delve into the results of these tests and analyze how the IC performed in the current situation.
IC expandability
The scalability of Internet computers mainly comes from sharding IC into subnet blockchains. Each subnet blockchain can handle calls (writes) from ingress messages independently of other subnets. This means that the IC can be scaled up by adding more subnets to handle more network traffic. This feature is especially important for applications that need to communicate across subnets.
Node handling in subnets
Nodes in the subnet can handle query calls (reads) locally, which results in lower response latency for queries. Because the query only requires a response from a single node and does not require communication or consensus between nodes. As the number of nodes in a subnet increases, the number of query calls it can handle increases accordingly. As the number of nodes an IC has increases, the overall number of query calls it can handle also increases.
Test setup
lab environment
The experiment was conducted simultaneously on all subnets except NNS and some of the most commonly used application subnets, to avoid disruption to existing IC users. The IC has a set of border nodes that route calls to the core nodes of the storage subnet. The experiment sent loads directly to the subnet and did not route traffic through border nodes. This is because border nodes have additional rate limits that are currently set at slightly more conservative rates than the IC can handle, so running on border nodes would not be suitable for performance evaluation.
counting container
The experiment consists of installing a counting container in each subnet. This counting container is essentially a no-op container, it only maintains a counter that can be queried through query calls and incremented through update calls. The counter value does not use Orthogonal Persistence, so the overhead of the IC's execution layer is minimal. The emphasis on counting containers can be seen as a way to determine system overhead or underlying performance.
Performance test results
update call
Internet computers can currently continuously update more than 11,000 times per second for a duration of 4 minutes, and can reach a maximum of more than 11,500 updates/second. The update calls we measure here are triggered by ingress messages sent externally to the IC.
query call
More important are query calls as they contribute over 90% of the traffic we observe on IC. Internet computers can currently handle up to 250,000 queries per second. During the experiment, each load will be gradually increased and run for 5 minutes.
Conclusion and next steps
The performance of Internet computers today is impressive. These test results demonstrate the IC's ability to handle large numbers of update and query calls. In the future, as more subnets are added, the performance of the IC will be further improved, which will provide more powerful support for various applications.
Further expanding the use of ICs
On this basis, the use of IC can be further expanded. For example, by adding more subnets and nodes, the IC can handle higher network traffic and meet the needs of more applications. In addition, optimizing the rate limits of border nodes will help improve the overall performance of the IC.
future research directions
Future research can focus on the following aspects:
Optimize communication between subnets: Improve communication efficiency between subnets and reduce delays.
Enhanced security: Ensure system security while improving performance.
Reduce operating costs: Through technological innovation, the operating costs of ICs are reduced and made more economical.
In summary, the performance evaluation of Internet computers shows its potential in processing large-scale data and applications. As technology continues to advance, IC will play an even more important role in the future digital world. These test results provide us with valuable data and insights to help us better understand and utilize Internet computers.