Skip to content

Latest commit

 

History

History

benchmarks

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

Equatable Benchmarks

Benchmarks used to measure the performance of equality comparisons using package:equatable.

Quick Start

  1. Install dependencies dart pub get
  2. Run the benchmarks dart run main.dart

Results

JIT

EmptyEquatable
          total runs:  2 729 471
          total time:     2.0000  s
         average run:          0 μs
         runs/second:   Infinity
               units:        100
        units/second:   Infinity
       time per unit:     0.0000 μs

PrimitiveEquatable
          total runs:    669 972
          total time:     2.0000  s
         average run:          2 μs
         runs/second:    500 000
               units:        100
        units/second: 50 000 000
       time per unit:     0.0200 μs

CollectionEquatable (static, small)
          total runs:    144 932
          total time:     2.0000  s
         average run:         13 μs
         runs/second:     76 923
               units:        100
        units/second:  7 692 308
       time per unit:     0.1300 μs

CollectionEquatable (static, medium)
          total runs:     84 533
          total time:     2.0000  s
         average run:         23 μs
         runs/second:     43 478
               units:        100
        units/second:  4 347 826
       time per unit:     0.2300 μs

CollectionEquatable (static, large)
          total runs:     16 457
          total time:     2.0001  s
         average run:        121 μs
         runs/second:    8 264.5
               units:        100
        units/second:    826 446
       time per unit:     1.2100 μs

CollectionEquatable (dynamic, small)
          total runs:    388 236
          total time:     2.0000  s
         average run:          5 μs
         runs/second:    200 000
               units:        100
        units/second: 20 000 000
       time per unit:     0.0500 μs

CollectionEquatable (dynamic, medium)
          total runs:    382 155
          total time:     2.0000  s
         average run:          5 μs
         runs/second:    200 000
               units:        100
        units/second: 20 000 000
       time per unit:     0.0500 μs

CollectionEquatable (dynamic, large)
          total runs:    390 713
          total time:     2.0000  s
         average run:          5 μs
         runs/second:    200 000
               units:        100
        units/second: 20 000 000
       time per unit:     0.0500 μs

AOT

EmptyEquatable
          total runs:  1 615 534
          total time:     2.0000  s
         average run:          1 μs
         runs/second:  1 000 000
               units:        100
        units/second: 100 000 000
       time per unit:     0.0100 μs

PrimitiveEquatable
          total runs:    928 013
          total time:     2.0000  s
         average run:          2 μs
         runs/second:    500 000
               units:        100
        units/second: 50 000 000
       time per unit:     0.0200 μs

CollectionEquatable (static, small)
          total runs:    128 224
          total time:     2.0000  s
         average run:         15 μs
         runs/second:     66 667
               units:        100
        units/second:  6 666 667
       time per unit:     0.1500 μs

CollectionEquatable (static, medium)
          total runs:    104 624
          total time:     2.0000  s
         average run:         19 μs
         runs/second:     52 632
               units:        100
        units/second:  5 263 158
       time per unit:     0.1900 μs

CollectionEquatable (static, large)
          total runs:     33 653
          total time:     2.0000  s
         average run:         59 μs
         runs/second:     16 949
               units:        100
        units/second:  1 694 915
       time per unit:     0.5900 μs

CollectionEquatable (dynamic, small)
          total runs:    483 177
          total time:     2.0000  s
         average run:          4 μs
         runs/second:    250 000
               units:        100
        units/second: 25 000 000
       time per unit:     0.0400 μs

CollectionEquatable (dynamic, medium)
          total runs:    488 550
          total time:     2.0000  s
         average run:          4 μs
         runs/second:    250 000
               units:        100
        units/second: 25 000 000
       time per unit:     0.0400 μs

CollectionEquatable (dynamic, large)
          total runs:    494 041
          total time:     2.0000  s
         average run:          4 μs
         runs/second:    250 000
               units:        100
        units/second: 25 000 000
       time per unit:     0.0400 μs

Last Updated: November 20, 2024 using 29e6c77a2e6b25e35cce66276bc2afeab1c805bd

MacBook Pro (M1 Pro, 16GB RAM)

Dart SDK version: Dart SDK version: 3.5.4 (stable) (Wed Oct 16 16:18:51 2024 +0000) on "macos_arm64"