Hamsters v5.5.3 Released!
We're happy to release version 5.5.3 of Hamsters.js, this release brings the very long coming support for Atomic Operations, allowing us to completely eliminate the majority of thread communication overhead improving performance significantly.
We are in the process of updating the wiki documentation for this new feature, When running the new benchmark and comparing the results to our Collatz Conjecture example without SharedArrays, and our Atomic Operations Example which uses SharedArrays && Atomic Operations, we can see performance increases in the table below. The following results were taken on a Core i5 8300H 2.3ghz 4c/8t processor, 16GB of DDR4 2400mhz dual channel, running on Ubuntu 22.04 LTS
FireFox 126.0.1 (64-bit) -
Number of Threads | Time Taken (Result Set 1 - No SharedArrays) | Time Taken (Result Set 2 - SharedArrays) | Time Difference (ms) | % Performance Increase |
---|---|---|---|---|
1 | 9,908ms | 9,421.54ms | 486.46ms | 4.91% |
2 | 5,962ms | 5,302.82ms | 659.18ms | 11.06% |
3 | 4,637ms | 3,830.7ms | 806.3ms | 17.39% |
4 | 4,302ms | 4,118.26ms | 183.74ms | 4.27% |
5 | 3,489ms | 3,828.34ms | -339.34ms | -9.73% |
6 | 3,514ms | 3,576.22ms | -62.22ms | -1.77% |
7 | 3,367ms | 3,104.14ms | 262.86ms | 7.81% |
8 | 3,302ms | 3,098.24ms | 203.76ms | 6.17% |
Average | 5,060.13ms | 4,660.16ms | 399.97ms | 8.24% |
Brave v1.66.118 -
Number of Threads | Time Taken (Result Set 1 - No SharedArrays) | Time Taken (Result Set 2 - SharedArrays) | Time Difference (ms) | % Performance Increase |
---|---|---|---|---|
1 | 66,725ms | 58,918ms | 7,807ms | 11.70% |
2 | 37,278ms | 32,366ms | 4,912ms | 13.18% |
3 | 27,766ms | 23,642ms | 4,124ms | 14.85% |
4 | 23,445ms | 19,418ms | 4,027ms | 17.18% |
5 | 22,886ms | 21,160ms | 1,726ms | 7.54% |
6 | 22,344ms | 19,723ms | 2,621ms | 11.73% |
7 | 24,496ms | 18,582ms | 5,914ms | 24.14% |
8 | 22,486ms | 18,965ms | 3,521ms | 15.66% |
Average | 30,928.75ms | 26,471.63ms | 4,457.13ms | 14.50% |
Enjoy!