Comments (1)
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)
- Koloboke jar size HOT 4
- Getters supporting optimistic read locking (StampedLock)
- putAll not overriden HOT 2
- Is it possible to allocate exact capacity? HOT 1
- Allow to disable usage of sun.misc.Unsafe in koloboke compile
- What is the license Koloboke and Koloboke compiler shipped with? HOT 4
- Koloboke Compile: NullPointerException at compile time
- Redundant cast warning in code generated by KolobokeMap
- Koloboke Fails to Compile on Java 9 HOT 5
- Performance issues when copying between Koloboke sets HOT 2
- build error using ./gradlew :buildMeta HOT 1
- failed to build with error below HOT 2
- java.lang.ClassCastException in very specific case on compiled ObjIntMap<String>.keySet().retainAll(...) HOT 2
- Koloboke annotation issue running Chronicle XCL tests... HOT 1
- Incorrect behavior of MutableLHashSeparateKVLongObjMapGO cursor
- Could not initialize class com.koloboke.collect.map.hash.HashIntObjMaps$DefaultFactoryHolder HOT 1
- MutableQHashSeparateKVLongObjMap rehash BUG
- koloboke.com seems to point to a wrong website
- Can't build the project
- The project can not be built
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from koloboke.