Performance tests of the Cample.js framework. Report No. 0

This article contains tests of the framework Cample.js beta versions 3.2.0-beta.6. This is a zero test report. As the framework results change, it is possible that more reports may be released.

The report includes speed comparisons with popular frameworks and libraries, as well as comparisons with pure javascript implementations.

All test results are based on metrics keyed implementation in the js-framework-benchmark repository on github. They themselves are located on the page issue No. 120.

General test

The first and subsequent comparisons will take place with frameworks Vue, Sveltelibrary Inferno, as well as with implementation in pure javascript. The test includes general indicators of the speed of working with a table in HTML. General indicators mean creating rows in the table, deleting them, changing positions, etc.

1. General test

1. General test

In terms of general indicators, more or less equal results are visible, except for the tests “create rows”, “create many rows”, “select row”. This is due to the slow collection of the string template, as well as the peculiarity of string interpolation when working with the framework. In theory, “select row” can achieve even better results, almost comparable to passing the value of a variable “in row” directly.

Launch metrics (lighthouse with mobile simulation)

Lighthouse is an automated, open source web page quality measurement tool.

When working with PWA (Progressive Web Applications), this tool is often used.

2. Launch metrics (lighthouse with mobile simulation)

2. Launch metrics (lighthouse with mobile simulation)

Here, things are much worse than they were in the general tests of the framework. It is clear that the code needs improvement, because the results are slower.

With the general development of PWA, when more and more browsers support the technology, these results also play an important role in web development today.

Memory allocation

The tests are based on processes occurring in the memory of the machine on which the site is displayed, after performing some actions from the general test. Such actions, for example, are memory usage after clicking the “Update every 10th row 5 times” button or memory usage after adding 1000 rows, etc.

3. Memory allocation

3. Memory allocation

The results, again, are not very different from the previous test (launch indicators (lighthouse with mobile simulation)). Only the results of vanilla js show much lower results. This is due to the peculiarities of implementation without frameworks.

conclusions

When comparing the speeds of popular frameworks, libraries and implementations in pure javascript, it is worth noting that these comparisons are calculated only in specific tasks, which, yes, may reflect some part of the overall picture, but also, they do not reflect a comparison of the functionality that may exist. The Cample.js framework is in a preliminary version of the product, which means that it is not yet a fully developed functional tool that is not yet suitable for implementing large production tasks.

Based on the results themselves, there is a tendency that the preview version of the product, in theory, can achieve the results (in terms of speed) needed today for working with modern sites. Several test results (“select row”, “create 1000 rows”, etc.) will improve as the result of row selection is x1.5 times slower, and the result of row creation and related tests also shows that implementation is 5-12% slower.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *