Benchmarks were made using Jmh version 1.35 and JDK 17.0.2 Java HotSpot(TM) on a Ryzen 9 7900 and the following libraries:
- Primitive Collections 0.8.0
- FastUtil 8.5.12
- HPPC 0.9.1
- Eclipse Collections 11.1.0
The results may differ for each JVM.
Each benchmark was created using Average Time with 2 Warmup Iterations (3s) and 5 Iterations (2s) and using Primitive Values (objects for Java Collections)
Score is the amount of time it took to do each operation in Microseconds (according to Jmh)
The Variable Size defines the amount of elements the Collection had to deal with.
These are used in 2 ways.
- If the function is a "add/put" it is the amount of elements that are added into the empty collection.
- If the function is not a "add/put" its the amount of elements that are inside of the Collection and a 100 random elements (within range) are tested against.
Another definition is "addEmptyCollection". The Empty stands for the Collection was initialized without a expected size.
While the "addCollection" is prepared with how many elements are about to be inserted.
KeySets/Values are forEach Iterators
Also JavaValues inside TreeSets/Maps are Javas "TreeMap/Set" implementation and are a RedBlack Tree Implementation.
1* It takes 3-4 hours to test everything so short tests for now until i can't wait like 8-16 hours with slower Benchmarks
Now to the Benchmarks
Action |
Size |
Java Score |
Eclipse Score |
HPPC Score |
FastUtil Score |
PC Score |
Units |
add |
100 |
38,052 |
8,595 |
25,354 |
3,99 |
4,013 |
µs/op |
add |
1000 |
409,111 |
91,513 |
209,41 |
30,708 |
30,778 |
µs/op |
add |
10000 |
4.370,611 |
1.052,312 |
2.251,535 |
377,974 |
377,885 |
µs/op |
addEmpty |
100 |
55,076 |
28,855 |
35,91 |
28,662 |
29,057 |
µs/op |
addEmpty |
1000 |
642,573 |
317,48 |
707,831 |
403,672 |
394,643 |
µs/op |
addEmpty |
10000 |
5.997,411 |
3.129,557 |
3.696,477 |
3.413,293 |
3.293,844 |
µs/op |
contains |
100 |
394,385 |
259,28 |
237,46 |
230,512 |
231,052 |
µs/op |
contains |
1000 |
4.619,153 |
1.509,67 |
1.417,266 |
1.429,884 |
1.417,053 |
µs/op |
contains |
10000 |
65.689,478 |
14.984,665 |
14.343,377 |
14.387,613 |
14.386,189 |
µs/op |
get |
100 |
15,615 |
16,172 |
13,118 |
15,228 |
15,631 |
µs/op |
get |
1000 |
15,657 |
16,104 |
13,116 |
15,286 |
15,625 |
µs/op |
get |
10000 |
15,653 |
16,198 |
13,094 |
15,274 |
15,598 |
µs/op |
indexOf |
100 |
396,36 |
241,163 |
233,179 |
230,843 |
236,588 |
µs/op |
indexOf |
1000 |
4.642,415 |
1.494,579 |
1.421,046 |
1.422,492 |
1.424,91 |
µs/op |
indexOf |
10000 |
66.701,295 |
14.984,225 |
14.333,464 |
14.379,675 |
14.363,945 |
µs/op |
iterateForEach |
100 |
6,06 |
9,638 |
10,812 |
9,268 |
9,339 |
µs/op |
iterateForEach |
1000 |
78,612 |
87,892 |
85,411 |
84,168 |
84,475 |
µs/op |
iterateForEach |
10000 |
921,746 |
897,66 |
4.054,995 |
863,956 |
862,588 |
µs/op |
iterateForLoop |
100 |
14,823 |
10,409 |
19,686 |
9,926 |
9,829 |
µs/op |
iterateForLoop |
1000 |
148,764 |
97,876 |
85,328 |
92,818 |
87,573 |
µs/op |
iterateForLoop |
10000 |
2.465,862 |
968,82 |
846,603 |
917,739 |
869,764 |
µs/op |
iterateIndex |
100 |
15,187 |
14,956 |
12,934 |
13,642 |
13,683 |
µs/op |
iterateIndex |
1000 |
146,074 |
138,101 |
124,629 |
127,955 |
128,957 |
µs/op |
iterateIndex |
10000 |
1.450,338 |
1.350,443 |
1.240,066 |
1.273,607 |
1.288,285 |
µs/op |
iterateStream |
100 |
6,028 |
2,81 |
32,898 |
15,701 |
2,674 |
µs/op |
iterateStream |
1000 |
57,296 |
15,732 |
297,667 |
147,153 |
14,669 |
µs/op |
iterateStream |
10000 |
915,758 |
158,44 |
2.957,59 |
1.459,343 |
151,749 |
µs/op |
lastIndexOf |
100 |
421,355 |
271,671 |
252,414 |
244,772 |
254,722 |
µs/op |
lastIndexOf |
1000 |
4.635,349 |
1.467,081 |
1.388,749 |
1.409,404 |
1.414,355 |
µs/op |
lastIndexOf |
10000 |
61.952,144 |
14.493,969 |
13.829,957 |
13.857,601 |
14.026,326 |
µs/op |
remove |
100 |
287,772 |
131,256 |
125,496 |
123,497 |
122,901 |
µs/op |
remove |
1000 |
7.730,507 |
2.294,425 |
2.013,35 |
2.047,842 |
1.992,423 |
µs/op |
remove |
10000 |
99.444,316 |
21.673,436 |
21.364,139 |
21.495,868 |
21.114,303 |
µs/op |
toArray |
100 |
11,786 |
3,89 |
3,708 |
4,046 |
3,921 |
µs/op |
toArray |
1000 |
131,244 |
39,547 |
44,434 |
31,424 |
31,664 |
µs/op |
toArray |
10000 |
1.235,355 |
449,846 |
433,427 |
386,28 |
391,969 |
µs/op |
Action |
Size |
Java Score |
PC Score |
Units |
add |
100 |
45,685 |
38,217 |
µs/op |
add |
1000 |
872,58 |
373,888 |
µs/op |
add |
10000 |
9.333,893 |
3.790,047 |
µs/op |
contains |
100 |
1.283,169 |
1.139,274 |
µs/op |
contains |
1000 |
30.988,172 |
11.422,898 |
µs/op |
contains |
10000 |
420.336,001 |
126.620,507 |
µs/op |
iterateForEach |
100 |
21,95 |
19,464 |
µs/op |
iterateForEach |
1000 |
522,763 |
187,593 |
µs/op |
iterateForEach |
10000 |
5.790,516 |
1.885,766 |
µs/op |
iterateForLoop |
100 |
19,018 |
17,22 |
µs/op |
iterateForLoop |
1000 |
503,25 |
330,613 |
µs/op |
iterateForLoop |
10000 |
5.842,671 |
3.144,928 |
µs/op |
iterateStream |
100 |
20,495 |
22,137 |
µs/op |
iterateStream |
1000 |
453,695 |
212,47 |
µs/op |
iterateStream |
10000 |
6.142,871 |
2.066,905 |
µs/op |
pollFirst |
100 |
0,1 |
0,098 |
µs/op |
pollFirst |
1000 |
0,071 |
0,07 |
µs/op |
pollFirst |
10000 |
0,071 |
0,07 |
µs/op |
pollLast |
100 |
0,099 |
0,098 |
µs/op |
pollLast |
1000 |
0,072 |
0,07 |
µs/op |
pollLast |
10000 |
0,071 |
0,071 |
µs/op |
remove |
100 |
762,289 |
582,825 |
µs/op |
remove |
1000 |
46.137,107 |
17.680,819 |
µs/op |
remove |
10000 |
642.735,233 |
196.215,888 |
µs/op |
toArray |
100 |
27,177 |
22,34 |
µs/op |
toArray |
1000 |
334,977 |
266,844 |
µs/op |
toArray |
10000 |
3.314,98 |
2.521,965 |
µs/op |
Action |
Size |
Java Score |
HPPC Score |
FastUtil Score |
PC Score |
Units |
add |
100 |
32,338 |
8,87 |
8,842 |
8,587 |
µs/op |
add |
1000 |
353,187 |
116,666 |
86,584 |
88,128 |
µs/op |
add |
10000 |
3.806,003 |
1.305,078 |
1.591,706 |
1.017,295 |
µs/op |
addEmpty |
100 |
60,852 |
39,491 |
28,669 |
28,472 |
µs/op |
addEmpty |
1000 |
662,112 |
325,726 |
215,116 |
203,187 |
µs/op |
addEmpty |
10000 |
6.348,947 |
3.866,101 |
2.800,221 |
2.653,82 |
µs/op |
contains |
100 |
512,04 |
N/A |
N/A |
N/A |
µs/op |
contains |
1000 |
5.251,208 |
N/A |
N/A |
N/A |
µs/op |
contains |
10000 |
70.700,964 |
N/A |
N/A |
N/A |
µs/op |
pollFirst |
100 |
0,139 |
0,131 |
0,114 |
0,128 |
µs/op |
pollFirst |
1000 |
0,14 |
0,103 |
0,102 |
0,118 |
µs/op |
pollFirst |
10000 |
0,14 |
0,103 |
0,101 |
0,117 |
µs/op |
pollLast |
100 |
0,139 |
0,13 |
0,115 |
0,129 |
µs/op |
pollLast |
1000 |
0,14 |
0,103 |
0,101 |
0,117 |
µs/op |
pollLast |
10000 |
0,14 |
0,104 |
0,103 |
0,117 |
µs/op |
remove |
100 |
N/A |
N/A |
N/A |
887,629 |
µs/op |
remove |
1000 |
N/A |
N/A |
N/A |
19.745,274 |
µs/op |
remove |
10000 |
N/A |
N/A |
N/A |
219.493,382 |
µs/op |
toArray |
100 |
14,308 |
N/A |
N/A |
4,067 |
µs/op |
toArray |
1000 |
137,824 |
N/A |
N/A |
31,905 |
µs/op |
toArray |
10000 |
1.243,685 |
N/A |
N/A |
391,396 |
µs/op |
Action |
Size |
FastUtil Score |
PC Score |
Units |
add |
100 |
25,794 |
26,521 |
µs/op |
add |
1000 |
361,699 |
291,029 |
µs/op |
add |
10000 |
3.959,255 |
4.375,37 |
µs/op |
addEmpty |
100 |
55,425 |
57,729 |
µs/op |
addEmpty |
1000 |
475,535 |
546,433 |
µs/op |
addEmpty |
10000 |
4.913,985 |
7.713,326 |
µs/op |
poll |
100 |
0,116 |
0,113 |
µs/op |
poll |
1000 |
0,086 |
0,084 |
µs/op |
poll |
10000 |
0,086 |
0,084 |
µs/op |
remove |
100 |
N/A |
128,688 |
µs/op |
remove |
1000 |
N/A |
1.994,232 |
µs/op |
remove |
10000 |
N/A |
21.109,374 |
µs/op |
toArray |
100 |
N/A |
4,033 |
µs/op |
toArray |
1000 |
N/A |
32,003 |
µs/op |
toArray |
10000 |
N/A |
391,77 |
µs/op |
Action |
Size |
FastUtil Score |
PC Score |
Units |
add |
100 |
8,637 |
8,673 |
µs/op |
add |
1000 |
89,79 |
86,318 |
µs/op |
add |
10000 |
1.058,412 |
1.015,512 |
µs/op |
addEmpty |
100 |
43,048 |
40,592 |
µs/op |
addEmpty |
1000 |
355,834 |
342,501 |
µs/op |
addEmpty |
10000 |
3.234,898 |
3.271,692 |
µs/op |
poll |
100 |
0,116 |
0,113 |
µs/op |
poll |
1000 |
0,093 |
0,086 |
µs/op |
poll |
10000 |
0,088 |
0,085 |
µs/op |
remove |
100 |
N/A |
128,931 |
µs/op |
remove |
1000 |
N/A |
2.000,568 |
µs/op |
remove |
10000 |
N/A |
21.105,773 |
µs/op |
toArray |
100 |
N/A |
4,041 |
µs/op |
toArray |
1000 |
N/A |
32,176 |
µs/op |
toArray |
10000 |
N/A |
389,959 |
µs/op |
Action |
Size |
Java Score |
Eclipse Score |
HPPC Score |
Koloboke Score |
FastUtil Score |
PC Score |
Units |
add |
100 |
125,692 |
23,945 |
27,657 |
35,0 |
27,114 |
24,053 |
µs/op |
add |
1000 |
1.255,833 |
390,703 |
220,611 |
428,49 |
210,377 |
241,467 |
µs/op |
add |
10000 |
19.928,398 |
4.897,518 |
2.458,675 |
5.098,649 |
2.369,492 |
2.836,515 |
µs/op |
addEmpty |
100 |
94,02 |
76,934 |
70,785 |
90,06 |
63,221 |
65,084 |
µs/op |
addEmpty |
1000 |
1.610,135 |
1.325,789 |
625,813 |
527,326 |
584,086 |
668,503 |
µs/op |
addEmpty |
10000 |
27.018,811 |
9.965,713 |
8.350,546 |
7.918,706 |
8.411,29 |
8.237,526 |
µs/op |
contains |
100 |
30,286 |
32,348 |
23,341 |
24,449 |
23,839 |
23,826 |
µs/op |
contains |
1000 |
39,766 |
54,789 |
22,287 |
23,702 |
23,855 |
23,958 |
µs/op |
contains |
10000 |
38,975 |
61,167 |
25,334 |
25,399 |
26,528 |
26,492 |
µs/op |
iterateForEach |
100 |
41,663 |
9,002 |
57,715 |
10,897 |
12,638 |
15,283 |
µs/op |
iterateForEach |
1000 |
415,577 |
161,093 |
460,945 |
124,963 |
153,746 |
161,24 |
µs/op |
iterateForEach |
10000 |
6.426,144 |
1.378,188 |
9.983,56 |
1.322,034 |
2.077,798 |
1.591,935 |
µs/op |
iterateForLoop |
100 |
42,192 |
25,324 |
59,047 |
21,945 |
15,91 |
23,001 |
µs/op |
iterateForLoop |
1000 |
383,121 |
219,646 |
474,089 |
190,713 |
143,737 |
208,313 |
µs/op |
iterateForLoop |
10000 |
6.938,187 |
1.779,347 |
11.496,698 |
2.552,738 |
1.656,387 |
2.446,131 |
µs/op |
iterateStream |
100 |
30,328 |
N/A |
48,336 |
24,921 |
24,316 |
31,353 |
µs/op |
iterateStream |
1000 |
228,638 |
N/A |
470,044 |
283,854 |
224,292 |
285,253 |
µs/op |
iterateStream |
10000 |
4.009,859 |
N/A |
10.212,342 |
2.776,493 |
1.856,881 |
2.723,879 |
µs/op |
remove |
100 |
31,001 |
42,641 |
22,991 |
22,261 |
21,45 |
20,986 |
µs/op |
remove |
1000 |
33,872 |
54,22 |
31,371 |
34,202 |
22,463 |
21,749 |
µs/op |
remove |
10000 |
32,975 |
60,815 |
26,358 |
30,042 |
25,879 |
25,177 |
µs/op |
toArray |
100 |
22,72 |
11,466 |
35,424 |
11,811 |
18,1 |
22,656 |
µs/op |
toArray |
1000 |
257,421 |
143,209 |
283,019 |
135,33 |
177,375 |
208,953 |
µs/op |
toArray |
10000 |
2.932,502 |
1.621,865 |
7.311,188 |
1.600,862 |
2.057,673 |
2.381,514 |
µs/op |
Action |
Size |
Java Score |
HPPC Score |
FastUtil Score |
PC Score |
Units |
add |
100 |
142,31 |
57,524 |
44,222 |
41,062 |
µs/op |
add |
1000 |
1.506,993 |
532,919 |
478,627 |
545,28 |
µs/op |
add |
10000 |
21.043,049 |
5.885,55 |
4.794,994 |
5.737,523 |
µs/op |
addEmpty |
100 |
165,503 |
216,653 |
94,657 |
134,493 |
µs/op |
addEmpty |
1000 |
1.790,418 |
2.576,072 |
1.206,386 |
966,125 |
µs/op |
addEmpty |
10000 |
31.976,127 |
25.961,111 |
18.600,439 |
17.035,879 |
µs/op |
contains |
100 |
30,341 |
34,439 |
23,851 |
23,905 |
µs/op |
contains |
1000 |
39,981 |
33,594 |
23,913 |
23,892 |
µs/op |
contains |
10000 |
39,172 |
34,311 |
26,43 |
26,486 |
µs/op |
iterateForEach |
100 |
12,795 |
47,108 |
11,516 |
13,499 |
µs/op |
iterateForEach |
1000 |
358,583 |
273,649 |
123,209 |
140,27 |
µs/op |
iterateForEach |
10000 |
5.543,073 |
11.039,705 |
3.395,985 |
3.741,966 |
µs/op |
iterateForLoop |
100 |
12,35 |
49,305 |
13,163 |
13,142 |
µs/op |
iterateForLoop |
1000 |
357,468 |
271,828 |
125,045 |
125,463 |
µs/op |
iterateForLoop |
10000 |
5.545,171 |
11.207,241 |
3.280,211 |
3.279,135 |
µs/op |
iterateStream |
100 |
21,66 |
50,349 |
15,986 |
18,073 |
µs/op |
iterateStream |
1000 |
317,315 |
396,226 |
135,939 |
162,197 |
µs/op |
iterateStream |
10000 |
5.826,667 |
11.471,453 |
3.288,911 |
3.317,305 |
µs/op |
remove |
100 |
31,051 |
31,547 |
21,33 |
20,938 |
µs/op |
remove |
1000 |
33,926 |
33,375 |
22,204 |
21,825 |
µs/op |
remove |
10000 |
32,592 |
34,77 |
25,869 |
25,341 |
µs/op |
toArray |
100 |
16,333 |
45,15 |
11,863 |
11,496 |
µs/op |
toArray |
1000 |
216,558 |
310,401 |
153,882 |
154,738 |
µs/op |
toArray |
10000 |
1.964,967 |
12.065,308 |
3.477,496 |
3.493,927 |
µs/op |
Action |
Size |
FastUtil Score |
PC Score |
Units |
add |
100 |
262,458 |
104,399 |
µs/op |
add |
1000 |
18.392,257 |
7.903,679 |
µs/op |
add |
10000 |
1.636.987,639 |
629.832,357 |
µs/op |
addEmpty |
100 |
354,431 |
125,441 |
µs/op |
addEmpty |
1000 |
22.386,211 |
8.550,015 |
µs/op |
addEmpty |
10000 |
1.641.368,052 |
630.423,294 |
µs/op |
contains |
100 |
241,075 |
141,46 |
µs/op |
contains |
1000 |
1.364,425 |
1.054,853 |
µs/op |
contains |
10000 |
13.854,512 |
9.561,536 |
µs/op |
iterateForEach |
100 |
9,69 |
5,534 |
µs/op |
iterateForEach |
1000 |
88,604 |
55,549 |
µs/op |
iterateForEach |
10000 |
874,538 |
543,075 |
µs/op |
iterateForLoop |
100 |
9,714 |
6,296 |
µs/op |
iterateForLoop |
1000 |
88,918 |
58,991 |
µs/op |
iterateForLoop |
10000 |
876,856 |
581,885 |
µs/op |
iterateStream |
100 |
15,723 |
13,438 |
µs/op |
iterateStream |
1000 |
147,161 |
117,159 |
µs/op |
iterateStream |
10000 |
1.417,28 |
1.152,944 |
µs/op |
toArray |
100 |
3,709 |
2,449 |
µs/op |
toArray |
1000 |
39,83 |
20,21 |
µs/op |
toArray |
10000 |
434,199 |
255,485 |
µs/op |
Action |
Size |
Java Score |
FastUtil Score |
PC Score |
Units |
add |
100 |
182,698 |
260,642 |
285,435 |
µs/op |
add |
1000 |
2.585,756 |
3.400,019 |
6.859,703 |
µs/op |
add |
10000 |
124.388,847 |
145.437,547 |
135.486,963 |
µs/op |
contains |
100 |
120,576 |
92,202 |
109,107 |
µs/op |
contains |
1000 |
178,198 |
176,622 |
177,523 |
µs/op |
contains |
10000 |
320,762 |
252,962 |
186,39 |
µs/op |
iterateForEach |
100 |
28,03 |
20,527 |
23,431 |
µs/op |
iterateForEach |
1000 |
532,217 |
225,992 |
260,637 |
µs/op |
iterateForEach |
10000 |
9.203,692 |
4.311,953 |
4.789,71 |
µs/op |
iterateForLoop |
100 |
27,971 |
19,931 |
27,768 |
µs/op |
iterateForLoop |
1000 |
532,5 |
224,829 |
301,89 |
µs/op |
iterateForLoop |
10000 |
8.327,476 |
4.351,406 |
5.005,613 |
µs/op |
iterateStream |
100 |
27,163 |
30,626 |
33,606 |
µs/op |
iterateStream |
1000 |
515,934 |
284,006 |
333,883 |
µs/op |
iterateStream |
10000 |
9.226,556 |
4.137,709 |
4.855,911 |
µs/op |
pollFirst |
100 |
0,155 |
N/A |
0,113 |
µs/op |
pollFirst |
1000 |
0,156 |
N/A |
0,102 |
µs/op |
pollFirst |
10000 |
0,153 |
N/A |
0,113 |
µs/op |
pollLast |
100 |
0,154 |
N/A |
0,113 |
µs/op |
pollLast |
1000 |
0,155 |
N/A |
0,102 |
µs/op |
pollLast |
10000 |
0,155 |
N/A |
0,114 |
µs/op |
remove |
100 |
89,394 |
98,117 |
67,327 |
µs/op |
remove |
1000 |
182,18 |
177,746 |
116,427 |
µs/op |
remove |
10000 |
334,434 |
283,893 |
200,872 |
µs/op |
toArray |
100 |
36,649 |
20,86 |
28,319 |
µs/op |
toArray |
1000 |
414,22 |
266,687 |
334,083 |
µs/op |
toArray |
10000 |
4.728,877 |
2.725,105 |
3.454,979 |
µs/op |
Action |
Size |
Java Score |
FastUtil Score |
PC Score |
Units |
add |
100 |
182,698 |
319,878 |
161,931 |
µs/op |
add |
1000 |
2.585,756 |
5.072,272 |
2.241,333 |
µs/op |
add |
10000 |
124.388,847 |
151.274,483 |
103.227,666 |
µs/op |
contains |
100 |
120,576 |
96,904 |
87,095 |
µs/op |
contains |
1000 |
178,198 |
148,295 |
182,427 |
µs/op |
contains |
10000 |
320,762 |
290,259 |
245,726 |
µs/op |
iterateForEach |
100 |
28,03 |
20,299 |
23,323 |
µs/op |
iterateForEach |
1000 |
532,217 |
227,033 |
259,272 |
µs/op |
iterateForEach |
10000 |
9.203,692 |
3.938,549 |
4.646,474 |
µs/op |
iterateForLoop |
100 |
27,971 |
19,718 |
27,867 |
µs/op |
iterateForLoop |
1000 |
532,5 |
225,989 |
299,807 |
µs/op |
iterateForLoop |
10000 |
8.327,476 |
4.337,774 |
4.994,825 |
µs/op |
iterateStream |
100 |
27,163 |
30,629 |
34,824 |
µs/op |
iterateStream |
1000 |
515,934 |
286,889 |
344,578 |
µs/op |
iterateStream |
10000 |
9.226,556 |
4.111,979 |
5.004,032 |
µs/op |
pollFirst |
100 |
0,155 |
N/A |
0,113 |
µs/op |
pollFirst |
1000 |
0,156 |
N/A |
0,086 |
µs/op |
pollFirst |
10000 |
0,153 |
N/A |
0,099 |
µs/op |
pollLast |
100 |
0,154 |
N/A |
0,114 |
µs/op |
pollLast |
1000 |
0,155 |
N/A |
0,101 |
µs/op |
pollLast |
10000 |
0,155 |
N/A |
0,108 |
µs/op |
remove |
100 |
89,394 |
232,024 |
65,14 |
µs/op |
remove |
1000 |
182,18 |
433,875 |
157,434 |
µs/op |
remove |
10000 |
334,434 |
598,209 |
199,812 |
µs/op |
toArray |
100 |
36,649 |
20,708 |
28,636 |
µs/op |
toArray |
1000 |
414,22 |
267,886 |
337,278 |
µs/op |
toArray |
10000 |
4.728,877 |
2.759,574 |
3.460,348 |
µs/op |
Action |
Size |
Java Score |
Eclipse Score |
HPPC Score |
Koloboke Score |
FastUtil Score |
PC Score |
Units |
clone |
100 |
106,464 |
N/A |
28,192 |
N/A |
30,729 |
33,862 |
µs/op |
clone |
1000 |
1.089,909 |
N/A |
257,119 |
N/A |
259,597 |
257,125 |
µs/op |
clone |
10000 |
15.276,764 |
N/A |
2.118,693 |
N/A |
2.124,168 |
2.136,606 |
µs/op |
containsKey |
100 |
27,408 |
21,718 |
23,622 |
24,426 |
24,394 |
34,795 |
µs/op |
containsKey |
1000 |
34,971 |
21,999 |
22,767 |
24,373 |
23,519 |
32,36 |
µs/op |
containsKey |
10000 |
36,615 |
22,082 |
24,165 |
25,357 |
25,195 |
30,663 |
µs/op |
forEach |
100 |
13,47 |
N/A |
62,31 |
11,945 |
43,346 |
17,474 |
µs/op |
forEach |
1000 |
157,848 |
N/A |
446,672 |
130,71 |
562,981 |
167,203 |
µs/op |
forEach |
10000 |
3.015,215 |
N/A |
11.262,751 |
1.395,089 |
5.055,895 |
1.573,155 |
µs/op |
get |
100 |
29,831 |
23,308 |
27,144 |
28,971 |
34,447 |
30,117 |
µs/op |
get |
1000 |
36,729 |
23,843 |
26,046 |
26,718 |
28,934 |
29,065 |
µs/op |
get |
10000 |
38,646 |
23,534 |
27,578 |
29,39 |
34,17 |
30,389 |
µs/op |
getOrDefault |
100 |
39,069 |
N/A |
27,397 |
28,708 |
33,696 |
29,912 |
µs/op |
getOrDefault |
1000 |
47,142 |
N/A |
26,179 |
26,871 |
27,93 |
28,823 |
µs/op |
getOrDefault |
10000 |
50,47 |
N/A |
27,588 |
29,633 |
33,564 |
30,203 |
µs/op |
keySet |
100 |
42,98 |
24,669 |
57,618 |
17,976 |
16,498 |
25,376 |
µs/op |
keySet |
1000 |
382,542 |
184,358 |
393,032 |
203,383 |
170,989 |
227,002 |
µs/op |
keySet |
10000 |
6.472,777 |
2.148,303 |
12.025,191 |
2.537,454 |
1.655,24 |
2.402,283 |
µs/op |
put |
100 |
144,624 |
47,263 |
33,269 |
57,827 |
36,12 |
45,727 |
µs/op |
put |
1000 |
1.589,978 |
487,252 |
408,177 |
494,448 |
430,236 |
468,721 |
µs/op |
put |
10000 |
21.565,706 |
8.935,828 |
3.942,013 |
8.459,922 |
4.505,135 |
5.376,586 |
µs/op |
putEmpty |
100 |
104,295 |
108,44 |
90,1 |
125,169 |
120,073 |
94,926 |
µs/op |
putEmpty |
1000 |
1.941,615 |
1.691,326 |
886,849 |
987,326 |
959,19 |
885,211 |
µs/op |
putEmpty |
10000 |
33.377,505 |
11.708,785 |
13.138,64 |
13.600,79 |
13.167,687 |
12.354,38 |
µs/op |
remove |
100 |
28,701 |
52,285 |
25,03 |
26,915 |
25,782 |
27,174 |
µs/op |
remove |
1000 |
30,462 |
37,233 |
27,869 |
28,757 |
26,825 |
28,107 |
µs/op |
remove |
10000 |
30,473 |
35,639 |
30,699 |
32,529 |
30,438 |
32,08 |
µs/op |
replace |
100 |
50,311 |
N/A |
N/A |
32,225 |
30,831 |
30,371 |
µs/op |
replace |
1000 |
60,239 |
N/A |
N/A |
35,339 |
29,84 |
28,791 |
µs/op |
replace |
10000 |
62,796 |
N/A |
N/A |
34,044 |
31,278 |
30,634 |
µs/op |
values |
100 |
41,994 |
24,555 |
N/A |
17,529 |
17,789 |
23,491 |
µs/op |
values |
1000 |
381,828 |
198,376 |
N/A |
206,424 |
172,652 |
251,76 |
µs/op |
values |
10000 |
7.304,119 |
2.269,234 |
N/A |
1.810,926 |
1.869,483 |
2.255,248 |
µs/op |
Action |
Size |
Java Score |
HPPC Score |
FastUtil Score |
PC Score |
Units |
clone |
100 |
97,997 |
28,625 |
64,607 |
46,824 |
µs/op |
clone |
1000 |
1.013,738 |
311,679 |
429,118 |
447,291 |
µs/op |
clone |
10000 |
10.353,757 |
2.217,771 |
3.471,47 |
3.514,199 |
µs/op |
containsKey |
100 |
27,374 |
37,608 |
24,749 |
34,734 |
µs/op |
containsKey |
1000 |
34,894 |
35,001 |
23,406 |
32,382 |
µs/op |
containsKey |
10000 |
37,601 |
36,68 |
25,361 |
36,042 |
µs/op |
forEach |
100 |
14,824 |
46,538 |
34,354 |
13,363 |
µs/op |
forEach |
1000 |
411,424 |
290,627 |
513,936 |
209,304 |
µs/op |
forEach |
10000 |
6.334,483 |
12.309,033 |
5.833,727 |
5.314,988 |
µs/op |
get |
100 |
30,605 |
37,971 |
34,436 |
30,045 |
µs/op |
get |
1000 |
37,326 |
37,061 |
28,852 |
29,024 |
µs/op |
get |
10000 |
40,263 |
38,774 |
34,064 |
30,433 |
µs/op |
getOrDefault |
100 |
39,112 |
40,062 |
33,846 |
29,794 |
µs/op |
getOrDefault |
1000 |
48,003 |
38,664 |
27,704 |
28,746 |
µs/op |
getOrDefault |
10000 |
54,376 |
41,132 |
33,468 |
30,194 |
µs/op |
keySet |
100 |
12,235 |
45,723 |
13,85 |
13,738 |
µs/op |
keySet |
1000 |
378,935 |
312,798 |
126,56 |
127,194 |
µs/op |
keySet |
10000 |
6.780,64 |
11.501,911 |
3.277,819 |
3.267,605 |
µs/op |
put |
100 |
163,236 |
78,291 |
67,183 |
79,238 |
µs/op |
put |
1000 |
1.798,285 |
870,931 |
715,014 |
739,147 |
µs/op |
put |
10000 |
23.414,699 |
8.899,554 |
6.996,904 |
7.255,969 |
µs/op |
putEmpty |
100 |
191,286 |
210,502 |
143,912 |
141,973 |
µs/op |
putEmpty |
1000 |
2.066,497 |
3.282,962 |
1.635,902 |
1.186,177 |
µs/op |
putEmpty |
10000 |
35.036,507 |
29.946,879 |
26.833,078 |
22.179,502 |
µs/op |
remove |
100 |
28,638 |
26,98 |
25,741 |
27,459 |
µs/op |
remove |
1000 |
28,048 |
30,585 |
26,976 |
28,082 |
µs/op |
remove |
10000 |
28,693 |
33,407 |
30,562 |
32,37 |
µs/op |
replace |
100 |
54,084 |
N/A |
30,795 |
29,937 |
µs/op |
replace |
1000 |
59,278 |
N/A |
32,782 |
29,222 |
µs/op |
replace |
10000 |
70,188 |
N/A |
31,488 |
30,638 |
µs/op |
values |
100 |
12,054 |
N/A |
13,58 |
13,621 |
µs/op |
values |
1000 |
364,888 |
N/A |
130,021 |
129,842 |
µs/op |
values |
10000 |
6.643,663 |
N/A |
3.375,373 |
3.307,545 |
µs/op |
Action |
Size |
FastUtil Score |
PC Score |
Units |
clone |
100 |
12,155 |
12,46 |
µs/op |
clone |
1000 |
145,014 |
147,893 |
µs/op |
clone |
10000 |
1.254,92 |
1.283,802 |
µs/op |
containsKey |
100 |
238,888 |
145,453 |
µs/op |
containsKey |
1000 |
1.536,554 |
1.106,124 |
µs/op |
containsKey |
10000 |
13.190,787 |
9.273,887 |
µs/op |
forEach |
100 |
41,901 |
8,6 |
µs/op |
forEach |
1000 |
586,344 |
82,887 |
µs/op |
forEach |
10000 |
6.038,754 |
829,458 |
µs/op |
get |
100 |
239,129 |
152,509 |
µs/op |
get |
1000 |
1.575,996 |
1.141,309 |
µs/op |
get |
10000 |
13.201,776 |
9.213,463 |
µs/op |
getOrDefault |
100 |
316,828 |
147,88 |
µs/op |
getOrDefault |
1000 |
2.483,865 |
1.110,921 |
µs/op |
getOrDefault |
10000 |
20.990,916 |
9.251,258 |
µs/op |
keySet |
100 |
13,487 |
6,335 |
µs/op |
keySet |
1000 |
125,269 |
59,951 |
µs/op |
keySet |
10000 |
1.246,071 |
592,106 |
µs/op |
put |
100 |
271,111 |
155,908 |
µs/op |
put |
1000 |
18.384,079 |
8.031,23 |
µs/op |
put |
10000 |
1.633.348,707 |
623.342,974 |
µs/op |
putEmpty |
100 |
290,427 |
332,87 |
µs/op |
putEmpty |
1000 |
18.121,704 |
10.085,367 |
µs/op |
putEmpty |
10000 |
1.676.518,905 |
638.820,239 |
µs/op |
remove |
100 |
261,703 |
93,45 |
µs/op |
remove |
1000 |
2.284,436 |
1.222,128 |
µs/op |
remove |
10000 |
21.648,587 |
13.175,014 |
µs/op |
replace |
100 |
334,985 |
146,213 |
µs/op |
replace |
1000 |
2.110,02 |
1.091,249 |
µs/op |
replace |
10000 |
18.566,11 |
8.999,808 |
µs/op |
values |
100 |
13,52 |
6,189 |
µs/op |
values |
1000 |
124,964 |
57,348 |
µs/op |
values |
10000 |
1.249,797 |
570,644 |
µs/op |
Action |
Size |
Java Score |
FastUtil Score |
PC Score |
Units |
clone |
100 |
61,964 |
58,149 |
31,941 |
µs/op |
clone |
1000 |
719,751 |
567,021 |
402,784 |
µs/op |
clone |
10000 |
8.201,852 |
6.856,861 |
3.990,11 |
µs/op |
containsKey |
100 |
109,883 |
95,517 |
85,936 |
µs/op |
containsKey |
1000 |
172,495 |
181,231 |
146,429 |
µs/op |
containsKey |
10000 |
336,422 |
276,05 |
226,047 |
µs/op |
forEach |
100 |
27,771 |
53,824 |
24,567 |
µs/op |
forEach |
1000 |
536,503 |
619,049 |
269,49 |
µs/op |
forEach |
10000 |
11.429,132 |
6.067,264 |
4.860,023 |
µs/op |
get |
100 |
107,334 |
96,159 |
106,016 |
µs/op |
get |
1000 |
172,946 |
205,798 |
146,143 |
µs/op |
get |
10000 |
334,203 |
297,713 |
230,867 |
µs/op |
getOrDefault |
100 |
178,549 |
151,655 |
97,902 |
µs/op |
getOrDefault |
1000 |
264,981 |
206,528 |
212,583 |
µs/op |
getOrDefault |
10000 |
450,024 |
361,061 |
226,402 |
µs/op |
keySet |
100 |
28,32 |
27,191 |
28,547 |
µs/op |
keySet |
1000 |
508,383 |
269,566 |
299,486 |
µs/op |
keySet |
10000 |
10.594,452 |
4.337,511 |
5.054,769 |
µs/op |
pollFirst |
100 |
0,086 |
N/A |
0,112 |
µs/op |
pollFirst |
1000 |
0,087 |
N/A |
0,101 |
µs/op |
pollFirst |
10000 |
0,087 |
N/A |
0,084 |
µs/op |
pollLast |
100 |
0,085 |
N/A |
0,113 |
µs/op |
pollLast |
1000 |
0,086 |
N/A |
0,101 |
µs/op |
pollLast |
10000 |
0,087 |
N/A |
0,113 |
µs/op |
put |
100 |
195,479 |
283,149 |
266,88 |
µs/op |
put |
1000 |
2.578,639 |
3.870,384 |
4.421,342 |
µs/op |
put |
10000 |
133.305,207 |
153.261,899 |
130.696,497 |
µs/op |
remove |
100 |
87,483 |
102,955 |
60,635 |
µs/op |
remove |
1000 |
166,645 |
179,519 |
126,232 |
µs/op |
remove |
10000 |
344,335 |
292,013 |
223,137 |
µs/op |
replace |
100 |
135,315 |
196,339 |
114,545 |
µs/op |
replace |
1000 |
222,337 |
294,417 |
139,275 |
µs/op |
replace |
10000 |
370,002 |
544,547 |
233,532 |
µs/op |
values |
100 |
28,199 |
27,169 |
27,979 |
µs/op |
values |
1000 |
519,481 |
225,484 |
295,029 |
µs/op |
values |
10000 |
10.105,88 |
4.235,55 |
5.028,454 |
µs/op |
Action |
Size |
Java Score |
FastUtil Score |
PC Score |
Units |
clone |
100 |
61,964 |
57,211 |
32,077 |
µs/op |
clone |
1000 |
719,751 |
619,239 |
402,196 |
µs/op |
clone |
10000 |
8.201,852 |
6.906,495 |
3.993,416 |
µs/op |
containsKey |
100 |
109,883 |
96,606 |
94,944 |
µs/op |
containsKey |
1000 |
172,495 |
182,342 |
153,531 |
µs/op |
containsKey |
10000 |
336,422 |
307,85 |
218,277 |
µs/op |
forEach |
100 |
27,771 |
62,93 |
24,837 |
µs/op |
forEach |
1000 |
536,503 |
619,612 |
269,917 |
µs/op |
forEach |
10000 |
11.429,132 |
6.061,579 |
4.447,297 |
µs/op |
get |
100 |
107,334 |
96,556 |
105,413 |
µs/op |
get |
1000 |
172,946 |
207,032 |
150,315 |
µs/op |
get |
10000 |
334,203 |
250,08 |
219,041 |
µs/op |
getOrDefault |
100 |
178,549 |
145,299 |
96,954 |
µs/op |
getOrDefault |
1000 |
264,981 |
208,696 |
141,988 |
µs/op |
getOrDefault |
10000 |
450,024 |
355,659 |
237,342 |
µs/op |
keySet |
100 |
28,32 |
26,967 |
28,179 |
µs/op |
keySet |
1000 |
508,383 |
269,114 |
294,952 |
µs/op |
keySet |
10000 |
10.594,452 |
4.340,619 |
4.691,015 |
µs/op |
pollFirst |
100 |
0,086 |
N/A |
0,113 |
µs/op |
pollFirst |
1000 |
0,087 |
N/A |
0,101 |
µs/op |
pollFirst |
10000 |
0,087 |
N/A |
0,1 |
µs/op |
pollLast |
100 |
0,085 |
N/A |
0,113 |
µs/op |
pollLast |
1000 |
0,086 |
N/A |
0,102 |
µs/op |
pollLast |
10000 |
0,087 |
N/A |
0,113 |
µs/op |
put |
100 |
195,479 |
311,423 |
156,525 |
µs/op |
put |
1000 |
2.578,639 |
4.793,349 |
2.336,96 |
µs/op |
put |
10000 |
133.305,207 |
157.497,135 |
105.407,276 |
µs/op |
remove |
100 |
87,483 |
234,904 |
64,459 |
µs/op |
remove |
1000 |
166,645 |
431,858 |
142,697 |
µs/op |
remove |
10000 |
344,335 |
606,508 |
226,245 |
µs/op |
replace |
100 |
135,315 |
239,834 |
89,586 |
µs/op |
replace |
1000 |
222,337 |
368,641 |
132,83 |
µs/op |
replace |
10000 |
370,002 |
657,718 |
224,964 |
µs/op |
values |
100 |
28,199 |
27,082 |
28,629 |
µs/op |
values |
1000 |
519,481 |
226,976 |
294,518 |
µs/op |
values |
10000 |
10.105,88 |
4.218,07 |
4.713,807 |
µs/op |