Giter Site home page Giter Site logo

Comments (1)

leventov avatar leventov commented on September 14, 2024

Comparison of parallel and separate layout:
Legend:
small size -- 250 entires in maps with byte keys, 1000 entries in other maps.
large size -- 60 000 entries in maps with char keys, 1 000 000 entires in maps with int or long keys.
Value type is always the same as key type.
Measured average time per one operation. Time unit: nanoseconds.

                               :      parallel :      separate
size  op             hash key  :   mean    std :   mean    std
--------------------------------------------------------------
small compute        l    byte :   7.09   0.08 :   7.12   0.14
small compute        l    char :  11.51   0.01 :  13.23   0.22
small compute        l    int  :  11.57   0.01 :  14.95   0.44
small compute        l    long :  12.22   0.02 :  13.19   0.19
small compute        q    byte :  17.90   0.03 :  16.06   0.07
small compute        q    char :  19.55   0.02 :  21.89   0.13
small compute        q    int  :  23.22   0.16 :  25.54   0.60
small compute        q    long :  25.64   0.50 :  27.23   1.33
small get            l    byte :   3.24   0.01 :   3.73   0.01
small get            l    char :   6.00   0.01 :   6.29   0.02
small get            l    int  :   6.19   0.01 :   6.26   0.05
small get            l    long :   6.96   0.01 :   6.58   0.07
small get            q    byte :  12.12   0.02 :  12.57   0.09
small get            q    char :  17.69   0.02 :  17.07   0.06
small get            q    int  :  21.13   0.07 :  21.36   0.08
small get            q    long :  22.56   0.18 :  22.82   0.35
small incrementValue l    byte :   8.14   0.46 :   6.62   0.03
small incrementValue l    char :   9.84   0.08 :   9.42   0.03
small incrementValue l    int  :   9.58   0.04 :   9.16   0.03
small incrementValue l    long :   9.58   0.01 :   9.02   0.08
small incrementValue q    byte :  15.91   0.01 :  15.44   0.04
small incrementValue q    char :  20.77   0.02 :  20.86   0.24
small incrementValue q    int  :  24.18   0.21 :  23.12   0.18
small incrementValue q    long :  24.36   0.41 :  23.53   0.41
small put            l    byte :  16.27   0.07 :  15.01   0.02
small put            l    char :   9.95   0.03 :  12.32   0.02
small put            l    int  :   9.58   0.03 :   9.59   0.03
small put            l    long :  10.16   0.08 :  10.01   0.08
small put            q    byte :  22.88   0.12 :  24.45   0.12
small put            q    char :  20.94   0.07 :  23.32   1.21
small put            q    int  :  22.56   0.05 :  23.23   0.06
small put            q    long :  25.27   0.12 :  24.28   0.20
small iter           l    byte :   6.37   0.01 :   6.71   0.05
small iter           l    char :   7.36   0.01 :   7.24   0.04
small iter           l    int  :   7.15   0.01 :   8.09   1.21
small iter           l    long :   8.39   0.27 :   8.66   1.25
small iter           q    byte :   7.22   2.27 :   6.70   1.00
small iter           q    char :   8.30   1.59 :   7.68   0.06
small iter           q    int  :   7.37   0.04 :   7.25   0.12
small iter           q    long :   8.31   0.08 :   7.19   0.06
small forEach        l    byte :   6.24   1.31 :   6.53   0.34
small forEach        l    char :   7.35   0.61 :   6.97   0.07
small forEach        l    int  :   7.60   0.76 :   6.52   0.02
small forEach        l    long :   6.31   0.01 :   6.51   0.12
small forEach        q    byte :   5.12   0.20 :   5.30   0.29
small forEach        q    char :   7.18   0.07 :   6.89   0.06
small forEach        q    int  :   9.07   3.00 :   6.26   0.05
small forEach        q    long :   6.13   0.18 :   6.47   0.08
--------------------------------------------------------------
large compute        l    char :   5.71   0.06 :   7.80   0.08
large compute        l    int  :  45.15   0.36 :  61.49   0.28
large compute        l    long :  56.18   0.62 :  90.69   0.18
large compute        q    char :  15.53   0.12 :  16.61   0.10
large compute        q    int  :  89.98   0.30 :  91.72   0.48
large compute        q    long : 114.48   0.96 : 110.70   0.36
large get            l    char :   3.58   0.02 :   5.66   0.03
large get            l    int  :  44.03   0.26 :  49.79   0.28
large get            l    long :  46.92   0.13 :  57.15   0.16
large get            q    char :  12.95   0.06 :  15.04   0.20
large get            q    int  :  86.54   0.21 :  96.83  12.86
large get            q    long : 106.18   0.26 : 107.07   0.50
large incrementValue l    char :   8.76   0.10 :   7.70   0.15
large incrementValue l    int  :  48.24   0.49 :  60.06   3.17
large incrementValue l    long :  54.40   0.55 :  71.82   2.63
large incrementValue q    char :  16.96   0.16 :  17.26   0.52
large incrementValue q    int  :  80.40   2.02 :  96.51   2.68
large incrementValue q    long :  95.46   1.50 : 115.75   6.56
large put            l    char :  12.19   0.11 :  15.03   0.35
large put            l    int  :  48.34   0.19 :  64.62   1.45
large put            l    long :  57.94   0.30 :  75.53   2.23
large put            q    char :  22.40   0.24 :  23.11   0.33
large put            q    int  :  82.20   0.69 :  88.81   4.36
large put            q    long :  97.78   0.40 : 106.72   6.63
large iter           l    byte :   6.61   0.08 :   6.89   0.39
large iter           l    char :   7.21   0.47 :   7.93   0.76
large iter           l    int  :   9.56   1.66 :   8.62   0.78
large iter           l    long :  10.99   0.41 :  10.72   1.35
large iter           q    byte :   5.88   0.10 :   6.21   0.53
large iter           q    char :   4.57   0.38 :   4.57   0.15
large iter           q    int  :   9.00   0.37 :   8.55   0.15
large iter           q    long :  10.85   0.42 :  10.06   0.40
large forEach        l    byte :   5.93   0.39 :   6.54   0.52
large forEach        l    char :   6.68   1.59 :   6.69   0.52
large forEach        l    int  :   7.89   0.35 :   7.85   0.12
large forEach        l    long :   8.59   0.21 :  11.87   5.13
large forEach        q    byte :   5.04   0.02 :   5.33   0.65
large forEach        q    char :   3.36   0.04 :   3.59   0.06
large forEach        q    int  :   7.56   0.11 :   7.32   0.06
large forEach        q    long :   9.00   1.09 :   9.45   0.20

from koloboke.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.